Assignment3.pdf

‫ﺑﻪ ﻧﺎﻡ ﺧﺪﺍﻭﻧﺪ ﺑﺨﺸﺎﻳﻨﺪﻩﯼ ﻣﻬﺮﺑﺎﻥ‬
‫ﺗﻤﺮﻳﻦ ﺳﺮﯼ ﺳﻮﻡ ﻣﺒﺎﻧﯽ ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﯽ‬
‫ﻣﻬﻠﺖ ﺍﺭﺳﺎﻝ‪ ۱۲ :‬ﻧﻴﻤﻪ ﺷﺐ ‪۸۶/۹/۳۰‬‬
‫ﺗﻮﺿﻴﺤﺎﺕ ‪ :‬‬
‫‪o‬‬
‫ﻗﺒﻞ ﺍﺯ ﺷﺮﻭﻉ ﻣﻮﺍﺭﺩ ﺯﻳﺮ ﺭﺍ ﺑﻪ ﺩﻗﺖ ﺑﺨﻮﺍﻧﻴﺪ‪ .‬‬
‫‪o‬‬
‫ﺑﻌﺪ ﺍﺯ ﻧﻮﺷﺘﻦ ﻫﻤﻪ ﺑﺮﻧﺎﻣﻪﻫﺎ ‪ ،‬ﻫﻤﻪ ﺁﻥﻫﺎ ﺭﺍ ﺩﺭ ﻳﮏ ﻓﻮﻟﺪﺭ ﺑﺎ ﻧﺎﻡ ‪ hw3_stdID‬ﻗﺮﺍﺭ ﺩﻫﻴﺪ) ﮐﻪ ﺩﺭ ﺁﻥ ‪ stdID‬ﺷﻤﺎﺭﻩ ﺩﺍﻧﺸﺠﻮﻳﯽ ﺷﻤﺎ‬
‫ﻼ‪ hw3_87654321 :‬ﻭ ﺳﭙﺲ ﺍﻳﻦ ﻓﻮﻟﺪﺭ ﺭﺍ ﻓﺸﺮﺩﻩ ﮐﻨﻴ ﺪ‪ . ١‬ﻓﺎﻳﻞ ﻓﺸﺮﺩﻩ ﺷﺪﻩ ﺭﺍ ﺑﻪ ﺁﺩﺭﺱ‬
‫ﻣﯽ ﺑﺎﺷﺪ‪ (.‬ﻣﺜ ً‬
‫‪ [email protected]‬ﺍﺭﺳﺎﻝ ﻧﻤﺎﻳﻴﺪ‪ .‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪o‬‬
‫ﻋﻨﻮﺍﻥ ﺍﻳﻤﻴﻞ ﺑﺎﻳﺪ ﺑﻪ ﺻﻮﺭﺕ ‪ hw3_stdID‬ﺑﺎﺷﺪ ‪ ،‬ﮐﻪ ﺩﺭ ﺁﻥ ‪ stdID‬ﺷﻤﺎﺭﻩ ﺩﺍﻧﺸﺠﻮﻳﯽ ﺷﻤﺎ ﻣﯽ ﺑﺎﺷﺪ‪ .‬‬
‫‪ ‬‬
‫‪o‬‬
‫ﺍﺷﺘﺒﺎﻩ ﺩﺭ ﻧﺎﻡﮔﺬﺍﺭﯼ ﻓﺎﻳﻞ ﺑﺮﻧﺎﻣﻪﻫﺎ ﻭ ﻓﺎﻳﻞ ﻓﺸﺮﺩﻩ ﺷﺪﻩ ﻭ ﻳﺎ ﻋﻨﻮﺍﻥ ﺍﻳﻤﻴﻞ ﻓﺮﺳﺘﺎﺩﻩ ﺷﺪﻩ ‪ ،‬ﻣﻮﺟﺐ ﻋﺪﻡ ﺗﺼﺤﻴﺢ ﺗﻤﺮﻳﻦ ﺷﻤﺎ ﻣﯽﺷﻮﺩ‪ .‬‬
‫‪ ‬‬
‫‪o‬‬
‫ﻓﺮﻣﺖ ﻭﺭﻭﺩﯼ ﻭ ﺧﺮﻭﺟﯽ ﺑﺮﻧﺎﻣﻪﻫﺎﯼ ﺷﻤﺎ ﺑﺎﻳﺪ ﺩﻗﻴﻘ ًﺎ ﺑﻪ ﺻﻮﺭﺕ ﮔﻔﺘﻪ ﺷﺪﻩ ﺩﺭ ﻣﺴﺌﻠﻪ ﺑﺎﺷﺪ ‪ ،‬ﺩﺭ ﻏﻴﺮ ﺍﻳﻦ ﺻﻮﺭﺕ ﭼﻮﻥ ﺑﺮﻧﺎﻣﻪﻫﺎﯼ ﺷﻤﺎ ﺑﻪ‬
‫ﺻﻮﺭﺕ ﺧﻮﺩﮐﺎﺭ ﺗﺼﺤﻴﺢ ﻣﯽ ﺷﻮﺩ‪ ،‬ﺧﺮﻭﺟﯽ ﺑﺮﻧﺎﻣﻪﯼ ﺷﻤﺎ ﺑﺎ ﺧﺮﻭﺟﯽ ﺑﺮﻧﺎﻣﻪﯼ ﻣﺼﺤﺢ ﻣﻨﻄﺒﻖ ﻧﺨﻮﺍﻫﺪ ﺑﻮﺩ‪ .‬‬
‫‪ ‬‬
‫‪o‬‬
‫ﺑﻪ ﺑﺮﻧﺎﻣﻪﻫﺎﯼ ﻣﺸﺎﺑﻪ ﺑﻪ ﻣﻴﺰﺍﻥ ﻧﻤﺮﻩ ﺳﻮﺍﻝ ‪ ،‬ﻧﻤﺮﻩ ﻣﻨﻔﯽ ﺗﻌﻠﻖ ﺧﻮﺍﻫﺪ ﮔﺮﻓﺖ ‪ .‬‬
‫‪o‬‬
‫ﺩﺭ ﭘﻨﺎﻩ ﺣﻖ‪ .‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ١‬ﺑﺮاﯼ اﻳﻦ ﮐﺎر ﮐﺎﻓﯽ اﺳﺖ روﯼ ﻓﻮﻟﺪر ﮐﻠﻴﮏ راﺳﺖ ﮐﻨﻴﺪ و از ﻣﻨﻮﯼ ﺑﺎز ﺷﺪﻩ ‪ Send to‬و ﺳﭙﺲ ‪Compressed (Zipped) Folder‬‬
‫را اﻧﺘﺨﺎب ﮐﻨﻴﺪ‪ .‬ﺑﺎ اﻳﻦ ﮐﺎر ﻳﮏ ﻓﺎﻳﻞ ﺑﻪ ﻧﺎم ‪ hw3_stdID.zip‬ﺳﺎﺧﺘﻪ ﻣﯽ ﺷﻮد ‪.‬‬
‫ﺗﻤﺮﻳﻦ ‪ determinant.cpp :۱‬‬
‫ﺑﺮﻧﺎﻣﻪﺍﯼ ﺑﻨﻮﻳﺴﻴﺪ ﮐﻪ ﺩﺭﺍﻳﻪﻫﺎﯼ ﻳﮏ ﻣﺎﺗﺮﻳﺲ ‪ ۲‬ﺑﻌﺪﯼ ‪ n×n‬ﺭﺍ ﺍﺯ ﻭﺭﻭﺩﯼ ﺩﺭﻳﺎﻓﺖ ﮐﻨﺪ ﻭ ﺩﺗﺮﻣﻴﻨﺎﻥ ﺁﻥ ﺭﺍ ﻣﺤﺎﺳﺒﻪ ﻭ ﭼﺎﭖ ﮐﻨﺪ‪ .‬ﻣﺤﺎﺳﺒﻪﯼ‬
‫ﺩﺗﺮﻣﻴﻨﺎﻥ ﺭﺍ ﺑﺎ ﺍﺳﺘﻔﺎﺩﻩ ﺍﺯ ﺗﺎﺑﻊ ﺑﺎﺯﮔﺸﺘﯽ ﭘﻴﺎﺩﻩﺳﺎﺯﯼ ﮐﻨﻴﺪ‪ .‬ﻣﯽﺩﺍﻧﻴﻢ ﮐﻪ‪:‬‬
‫‪(‐1)i+j × M[n‐1][n‐1](i,j), 0 < i=const <= n ‬‬
‫∑‪Det(A[n][n]) = ‬‬
‫ﮐﻪ ﺩﺭ ﺁﻥ ‪ M‬ﻣﺎﺗﺮﻳﺲ ﮐﻬﺎﺩ ‪ A‬ﺑﻪ ﺍﺯﺍﯼ ﺳﻄﺮ ‪ i‬ﻭ ﺳﺘﻮﻥ ‪ j‬ﺍﺳﺖ‪ .‬‬
‫ﺑﺮﺍﯼ ﻭﺭﻭﺩﯼ ﺩﺭ ﺳﻄﺮ ﺍﻭﻝ ﻋﺪﺩ ‪ n‬ﻭ ﺩﺭ ﻫﺮ ﻳﮏ ﺍﺯ ‪ n‬ﺳﻄﺮ ﺑﻌﺪ‪ n ،‬ﻋﺪﺩ ﺍﻋﺸﺎﺭﯼ ﺑﺨﻮﺍﻧﻴﺪ‪.‬‬
‫ﺩﺭ ﺧﺮﻭﺟﯽ ﻣﻘﺪﺍﺭ ﺩﺗﺮﻣﻴﻨﺎﻥ ﺭﺍ ﺩﺭ ﻳﮏ ﺳﻄﺮ ﭼﺎﭖ ﮐﻨﻴﺪ‪.‬‬
‫‪Sample Output ‬‬
‫‪Sample Input ‬‬
‫‪4.0 ‬‬
‫‪ ‬‬
‫‪3 ‬‬
‫‪0.0 1.0 2.0 ‬‬
‫‪3.0 2.0 3.0 ‬‬
‫‪2.0 3.0 4.0 ‬‬
‫‪ ‬‬
‫ﺗﻤﺮﻳﻦ ‪ queens.cpp :2‬‬
‫ﻫﺪﻑ ﭘﻴﺪﺍ ﮐﺮﺩﻥ ﺭﺍﻩﺣﻠﯽ ﺑﺮﺍﯼ ﭼﻴﺪﻥ ‪ n‬ﻭﺯﻳﺮ ﺩﺭ ﺻﻔﺤﻪﯼ ﺷﻄﺮﻧﺞ ‪(n>=8) n×n‬ﺍﺳﺖ ﺑﻪ ﻧﺤﻮﯼ ﮐﻪ ﻫﻴﭻ ﺩﻭ ﻭﺯﻳﺮﯼ ﻳﮑﺪﻳﮕﺮ ﺭﺍ ﺗﻬﺪﻳﺪ ﻧﮑﻨﻨﺪ‪ .‬ﺑﺮﺍﯼ‬
‫ﺍﻳﻦ ﮐﺎﺭ ﺍﺯ ﺭﻭﺵ ﮐﻤﺘﺮﻳﻦ ﻣﻘﺪﺍﺭ ﺑﺎﻗﯽﻣﺎﻧﺪﻩ ﺍﺳﺘﻔﺎﺩﻩ ﻣﯽﮐﻨﻴﻢ‪ .‬ﺑﻪ ﺍﻳﻦ ﺗﺮﺗﻴﺐ ﮐﻪ‪:‬‬
‫‪.۱‬‬
‫ﻫﺮ ﺳﺘﻮﻥ ﺭﺍ ﺑﻪ ﻋﻨﻮﺍﻥ ﻳﮏ ﻋﻨﺼﺮ ﺩﺭ ﻧﻈﺮ ﻣﯽﮔﻴﺮﻳﻢ ﮐﻪ ﺑﺎﻳﺪ ﻳﮏ ﻭﺯﻳﺮ ﺭﺍ ﺩﺭ ﻳﮑﯽ ﺍﺯ ﺳﻄﺮﻫﺎﻳﺶ ﻗﺮﺍﺭ ﺩﻫﻴﻢ‪.‬‬
‫‪.۲‬‬
‫ﻭﺯﻳﺮ ﺍﻭﻝ ﺭﺍ ﺩﺭ ﺳﻄﺮ ﺍﻭﻝ ﺍﺯ ﺳﺘﻮﻥ ﺍﻭﻝ ﻗﺮﺍﺭ ﻣﯽﺩﻫﻴﻢ‪ .‬‬
‫‪.۳‬‬
‫ﺣﺎﻝ ﺑﺮﺍﯼ ﻫﺮ ﺳﺘﻮﻥ ﺗﻌﺪﺍﺩ ﺧﺎﻧﻪﻫﺎﻳﯽ ﺍﺯ ﺁﻥ ﺭﺍ ﮐﻪ ﺗﻬﺪﻳﺪ ﻧﻤﯽﺷﻮﻧﺪ ﻣﯽﺷﻤﺎﺭﻳﻢ‪ .‬‬
‫‪.۴‬‬
‫ﺑﺮﺍﯼ ﻣﺮﺣﻠﻪﯼ ﺑﻌﺪ‪ ،‬ﺳﺘﻮﻧﯽ ﺭﺍ ﮐﻪ ﮐﻤﺘﺮﻳﻦ ﺧﺎﻧﻪﯼ ﺍﻣﻦ ﺭﺍ ﺩﺍﺭﺩ ﺑﺮﻣﯽﮔﺰﻳﻨﻴﻢ ﻭ ﻳﮏ ﻭﺯﻳﺮ ﺭﺍ ﺩﺭ ﺍﻭﻟﻴﻦ ﺳﻄﺮ ﺍﻣﻦ ﺁﻥ ﻗﺮﺍﺭ ﻣﯽﺩﻫﻴﻢ‪ .‬‬
‫‪.۵‬‬
‫ﻣﺮﺍﺣﻞ ‪ ۳‬ﻭ ‪ ۴‬ﺭﺍ ﺗﮑﺮﺍﺭ ﻣﯽﮐﻨﻴﻢ ﺗﺎ‪ :‬‬
‫‪ .a‬ﺩﺭ ﻫﺮ ﺳﺘﻮﻥ ﻳﮏ ﻭﺯﻳﺮ ﺩﺭ ﺧﺎﻧﻪﻫﺎﯼ ﺍﻣﻦ ﻗﺮﺍﺭ ﮔﻴﺮﺩ‪ .‬ﮐﻪ ﮐﺎﺭ ﺗﻤﺎﻡ ﺍﺳﺖ ﻭ ﻣﺨﺘﺼﺎﺕ ﻭﺯﻳﺮﺍﻥ ﺭﺍ ﭼﺎﭖ ﻣﯽﮐﻨﻴﻢ‪ .‬‬
‫‪ .b‬ﻳﺎ ﺑﻪ ﺟﺎﻳﯽ ﻣﯽﺭﺳﻴﻢ ﮐﻪ ﺩﻳﮕﺮ ﻫﻴﭻ ﺧﺎﻧﻪﯼ ﺍﻣﻨﯽ ﺑﺮﺍﯼ ﺑﻘﻴﻪ ﺳﺘﻮﻥﻫﺎﯼ ﺑﺎﻗﯽ ﻧﻤﺎﻧﺪﻩ‪ .‬ﻟﺬﺍ ﺁﺧﺮﻳﻦ ﻭﺯﻳﺮﯼ ﺭﺍ ﮐﻪ ﻗﺮﺍﺭ ﺩﺍﺩﻩ ﺑﻮﺩﻳﻢ‬
‫ﺑﻪ ﺧﺎﻧﻪﯼ ﺍﻣﻦ ﺑﻌﺪﯼ ﺩﺭ ﻫﻤﺎﻥ ﺳﺘﻮﻥ ﻣﻨﺘﻘﻞ ﻣﯽﮐﻨﻴﻢ‪ .‬ﺍﮔﺮ ﺁﻥ ﺳﺘﻮﻥ ﺩﻳﮕﺮ ﺧﺎﻧﻪﯼ ﺍﻣﻨﯽ ﻧﺪﺍﺭﺩ ﭘﺲ ﺑﺎﻳﺪ ﺑﻪ ﺳﺘﻮﻥ ﻗﺒﻠﯽ ﮐﻪ‬
‫ﻭﺯﻳﺮﯼ ﺭﺍ ﺩﺭ ﺁﻥ ﻗﺮﺍﺭ ﺩﺍﺩﻩ ﺑﻮﺩﻳﻢ ﺑﺮﻭﻳﻢ ﻭ ﺍﻳﻦ ﮐﺎﺭ ﺭﺍ ﺍﻧﺠﺎﻡ ﺩﻫﻴﻢ ﻭ ﺍﻟﯽ ﺁﺧﺮ‪ .‬‬
‫ﺍﮔﺮ ﺩﻭ ﺳﺘﻮﻥ ﺗﻌﺪﺍﺩ ﺧﺎﻧﻪﯼ ﺍﻣﻦ ﻣﺴﺎﻭﯼ ﻭ ﮐﻤﻴﻨﻪ ﺩﺍﺷﺘﻪ ﺑﺎﺷﻨﺪ‪ ،‬ﺳﺘﻮﻥ ﺑﺎ ﺍﻧﺪﻳﺲ ﮐﻤﺘﺮ ﺭﺍ ﺍﻧﺘﺨﺎﺏ ﻣﯽﮐﻨﻴﻢ‪.‬‬
‫ﺑﺮﺍﯼ ﺍﻳﻦ ﻣﺴﺌﻠﻪ ﺗﻀﻤﻴﻦ ﻣﯽﺷﻮﺩ ﮐﻪ ﺣﺘﻤ ًﺎ ﺟﻮﺍﺑﯽ ﺑﻪ ﺭﻭﺵ ﻓﻮﻕ ﭘﻴﺪﺍ ﻣﯽﺷﻮﺩ‪ .‬ﭘﻴﺎﺩﻩ ﺳﺎﺯﯼ ﺍﻳﻦ ﺍﻟﮕﻮﺭﻳﺘﻢ ﺑﻪ ﺭﻭﺵ ﺑﺎﺯﮔﺸﺘﯽ ﺑﺴﻴﺎﺭ ﺳﺎﺩﻩ ﺍﺳﺖ‪ .‬ﺑﻪ‬
‫ﺍﻳﻦ ﺗﺮﺗﻴﺐ ﮐﻪ ﺩﺭ ﻫﺮ ﻣﺮﺣﻠﻪ‪ ،‬ﻳﮏ ﺻﻔﺤﻪﯼ ﺷﻄﺮﻧﺞ ﺩﺍﺭﻳﻢ ﺑﺎ ﺗﻌﺪﺍﺩﯼ ﻭﺯﻳﺮ ﺭﻭﯼ ﺁﻥ ﻭ ﺗﻌﺪﺍﺩ ﺧﺎﻧﻪﻫﺎﯼ ﺍﻣﻦ ﻫﺮ ﺳﺘﻮﻥ‪ .‬ﻟﺬﺍ ﺳﺘﻮﻥ ﻣﻮﺭﺩ ﻧﻈﺮ ﺭﺍ ﺍﻧﺘﺨﺎﺏ‬
‫ﻣﯽﮐﻨﻴﻢ ﻭ ﺑﻪ ﺍﺯﺍﯼ ﻫﺮ ﻳﮏ ﺍﺯ ﺳﻄﺮﻫﺎﯼ ﺁﻥ‪ ،‬ﺑﻪ ﺗﺮﺗﻴﺐ ﻭﺯﻳﺮﯼ ﺩﺭ ﺁﻥ ﻗﺮﺍﺭ ﻣﯽﺩﻫﻴﻢ‪ ،‬ﺧﺎﻧﻪﻫﺎﯼ ﺍﻣﻦ ﺑﺎﻗﻴﻤﺎﻧﺪﻩ ﺭﺍ ﺑﺮﺭﺳﯽ ﻣﯽﮐﻨﻴﻢ ﻭ ﺩﻭﺑﺎﺭﻩ ﻣﺴﺌﻠﻪﯼ‬
‫ﻼ ﺑﺮﻧﺎﻣﻪ ﺭﺍ ﺗﻤﺎﻡ ﻣﯽﮐﻨﻴﻢ‪ .‬ﺍﮔﺮ ﻧﻪ ﺗﺎﺑﻊ ﺑﺎﺯﮔﺸﺘﯽ ﺑﺎ ﭘﺲ ﺩﺍﺩﻥ ﻣﻘﺪﺍﺭ ‪false‬‬
‫ﺑﺎﺯﮔﺸﺘﯽ ﺭﺍ ﺻﺪﺍ ﻣﯽﺯﻧﻴﻢ‪ .‬ﺍﮔﺮ ﺑﻪ ﺟﻮﺍﺏ ﺭﺳﻴﺪﻳﻢ‪ ،‬ﭘﺲ ﺍﺯ ﭼﺎﭖ ﺁﻥ‪ ،‬ﮐ ً‬
‫ﻣﯽﮔﻮﻳﺪ ﮐﻪ ﺳﻄﺮﻫﺎﯼ ﺍﻣﻦ ﺑﻌﺪﯼ ﻫﻢ ﺑﺎﻳﺪ ﺑﺮﺭﺳﯽ ﺷﻮﻧﺪ‪.‬‬
‫ﺩﺭ ﻭﺭﻭﺩﯼ ﻋﺪﺩ ‪ n‬ﺭﺍ ﺑﻪ ﻋﻨﻮﺍﻥ ﺍﻧﺪﺍﺯﻩ ﺻﻔﺤﻪ ﺷﻄﺮﻧﺞ ﺑﺨﻮﺍﻧﻴﺪ‪.‬‬
‫ﺩﺭ ﺧﺮﻭﺟﯽ ‪ n‬ﻋﺪﺩ ﭘﺸﺖ ﺳﺮ ﻫﻢ ﺑﻨﻮﻳﺴﻴﺪ ﮐﻪ ﻫﺮ ﮐﺪﺍﻡ ﻧﺸﺎﻧﻪﯼ ﻣﺤﻞ ﻭﺯﻳﺮ ﺩﺭ ﻳﮑﯽ ﺍﺯ ﺳﺘﻮﻥﻫﺎﺳﺖ) ﺑﻪ ﺗﺮﺗﻴﺐ ﺍﺯ ﭼﭗ ﺑﻪ ﺭﺍﺳﺖ‪ .(.‬ﺧﺎﻧﻪﯼ ﺍﻭﻝ ﻫﺮ‬
‫ﺳﺘﻮﻥ ﺭﺍ ﺷﻤﺎﺭﻩﯼ ﻳﮏ ﻭ ﺧﺎﻧﻪﯼ ﺁﺧﺮ ﺭﺍ ﺑﺎ ﺷﻤﺎﺭﻩﯼ ‪ n‬ﻣﺸﺨﺺ ﮐﻨﻴﺪ‪ .‬‬
‫ﻣﺜﺎﻝ‪ :‬ﺑﺮﺍﯼ ‪ n=8‬ﺩﺍﺭﻳﻢ‪:‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪4‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q5‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪1 ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪3‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q4‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪1 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪1‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪3 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q6 ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪3 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q3 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q2 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0‬‬
‫‪Q1‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q3 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q2 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪Q1 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫*‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q5‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫*‬
‫‪5 ‬‬
‫*‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪1 ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫*‬
‫‪4 4 4 4 4 ‬‬
‫*‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q4‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫*‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪2 ‬‬
‫*‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪1 ‬‬
‫*‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q3‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q2‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫*‬
‫‪0 ‬‬
‫*‬
‫‪* ‬‬
‫‪Q2‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪ ‬‬
‫ﻟﺬﺍ ﺩﺭ ﺍﻳﻦ ﺣﺎﻟﺖ ﺑﻪ ﺟﻮﺍﺏ ﻧﺮﺳﻴﺪﻳﻢ‪ .‬ﻟﺬﺍ ﺁﺧﺮﻳﻦ ﻭﺯﻳﺮ ﺭﺍ )‪(Q7‬ﺑﻪ ﺧﺎﻧﻪﯼ ﻣﻤﮑﻦ ﺑﻌﺪﯼ‬
‫ﻣﻨﺘﻘﻞ ﻣﯽﮐﻨﻴﻢ‪ .‬ﭼﻮﻥ ﻫﻴﭻ ﺣﺎﻟﺖ ﺩﻳﮕﺮﯼ ﺩﺭ ﺁﻥ ﺳﺘﻮﻥ ﻧﻴﺴﺖ‪ ،‬ﺑﻪ ﺳﺮﺍﻍ ﺳﺘﻮﻥ ﻗﺒﻞ ﺍﺯ‬
‫ﺁﻥ ﻣﯽﺭﻭﻳﻢ‪ Q6 .‬ﻭ ‪ Q5‬ﻭ ‪ Q4‬ﻫﻢ ﻫﻤﻴﻦﻃﻮﺭ‪ .‬ﻟﺬﺍ ‪ Q3‬ﺭﺍ ﺑﻪ ﺧﺎﻧﻪﯼ ﻣﻤﮑﻦ ﺑﻌﺪﯼ‬
‫ﻣﻨﺘﻘﻞ ﻣﯽﮐﻨﻴﻢ‪:‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪6 6 ‬‬
‫‪Q1 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪Q1‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q5 ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪1 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪2 ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪6 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q4 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫*‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q4 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪2 ‬‬
‫‪* ‬‬
‫‪Q7‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪6 ‬‬
‫‪Q1 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪2 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q3 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q2 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪Q1 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q6 ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q3 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q2 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪Q1 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪6 ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪6 ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪6 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫*‬
‫‪1 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q8‬‬
‫‪* ‬‬
‫‪0‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q5‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫*‬
‫‪1 0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q5‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q6‬‬
‫‪0‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫*‬
‫‪2 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q7‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0‬‬
‫‪* ‬‬
‫‪Q4 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪Q4 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q3 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q3 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q2 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q2 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪ ‬‬
‫ﺗﻤﺮﻳﻦ ‪ wrapText.cpp :۳‬‬
‫‪Q1‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫*‬
‫‪0 ‬‬
‫‪Q1‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫*‬
‫‪3 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪1 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫*‬
‫‪2 1 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫*‬
‫‪2 ‬‬
‫‪* ‬‬
‫‪Q4‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫*‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q3‬‬
‫‪* ‬‬
‫*‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q2‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫*‬
‫‪0 ‬‬
‫‪Q1‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q5‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q6‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q7‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪Q4‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q3‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q2‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪4 ‬‬
‫‪ ‬‬
‫‪Q1 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪2 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪1 ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪4 ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪3 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q5 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪2 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q3 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q6 ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪ ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪1 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q2 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪Q4 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪Q1 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q3 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪Sample Output ‬‬
‫‪Sample Input ‬‬
‫‪1 3 6 2 5 8 4 7 ‬‬
‫‪8 ‬‬
‫ﺻﻔﺤﻪ ﭼﻴﻦ ﻛﺮﺩﻥ ﻳﻚ ﻣﺘﻦ ﺑﻪ ﺍﻳﻦ ﻣﻌﻨﻲ ﺍﺳﺖ ﻛﻪ ﺁﻥ ﺭﺍ ﺩﺭ ﻳﻚ ﺻﻔﺤﻪ ﺑﺎ ﻋﺮﺽ ﻣﺸﺨﺺ ﻗﺮﺍﺭ ﺩﻫﻴﻢ ﺑﻪ ﻃﻮﺭﻱ ﻛﻪ ﺧﻮﺍﻧﺎ ﺑﻤﺎﻧﺪ‪.‬‬
‫ﺑﺮﺍﻱ ﺍﻳﻦ ﻣﻨﻈﻮﺭ ﻻﺯﻡ ﺍﺳﺖ ﺑﻌﺪ ﺍﺯ ﺑﺮﺧﻲ ﻛﻠﻤﺎﺕ ﺑﻪ ﺧﻂ ﺑﻌﺪ ﺑﺮﻭﻳﻢ ‪.‬ﻧﻜﺘﻪ ﻱ ﻣﻬﻢ ﺧﻮﺍﻧﺎﻳﻲ ﺍﻳﻦ ﺍﺳﺖ ﻛﻪ ﺗﺎ ﺟﺎﻳﻲ ﻛﻪ ﻣﻤﻜﻦ ﺍﺳﺖ ﻧﺒﺎﻳﺪ ﺩﺭ ﺑﻴﻦ ﻳﻚ‬
‫ﻛﻠﻤﻪ ﺑﻪ ﺧﻂ ﺑﻌﺪ ﺑﺮﻭﻳﻢ‪.‬‬
‫‪ text ‬ﻣﺘﻨﻲ ﺍﺳﺖ ﻛﻪ ﻣﻲ ﺧﻮﺍﻫﻴﻢ ﺻﻔﺤﻪ ﭼﻴﻦ ﻛﻨﻴﻢ ﻭ‪ width ‬ﺣﺪﺍﻛﺜﺮ ﺗﻌﺪﺍﺩ ﻛﺎﺭﺍﻛﺘﺮ ﻣﻤﻜﻦ ﺩﺭ ﻳﻚ ﺧﻂ ﻭ ﻳﺎ ﻫﻤﺎﻥ ﻋﺮﺽ ﺻﻔﺤﻪ ﺍﺳﺖ‪.‬‬
‫ﻧﻜﺎﺕ‪:‬‬
‫‪ .١‬ﮐﻠﻤﻪﻫﺎ ﺑﺎ ‪ space‬ﻭ ’‪ ‘\n‬ﺟﺪﺍ ﺷﺪﻩﺍﻧﺪ‪.‬‬
‫‪ .٢‬ﻓﻘﻂ ﻫﻨﮕﺎﻣﻲ ﺣﻖ ﺩﺍﺭﻳﻢ ﻳﻚ ﻛﻠﻤﻪ ﺭﺍ ﻗﻄﻊ ﻛﻨﻴﻢ ﻛﻪ ﻃﻮﻝ ﺁﻥ ﺍﺯ ﻋﺮﺽ ﺻﻔﺤﻪ ﺑﻴﺸﺘﺮ ﺑﺎﺷﺪ‪.‬‬
‫‪ .٣‬ﮐﺎﺭﺍﮐﺘﺮ ﺭﻓﺘﻦ ﺑﻪ ﺧﻂ ﺑﻌﺪ ’‪ ‘\n‬ﺍﺳﺖ‪ .‬ﺑﺮﺍﯼ ﻣﺜﺎﻝ ”‪ “This is first line\nThis is second line‬ﻳﻚ ﺭﺷﺘﻪ ﺩﻭ ﺧﻄﻲ ﺍﺳﺖ‪.‬‬
‫‪ .٤‬ﻣﻤﻜﻦ ﺍﺳﺖ ﺁﺭﮔﻮﻣﺎﻥ ﻭﺭﻭﺩﻱ ‪ text‬ﺧﻮﺩ ﭼﻨﺪ ﺧﻄﻲ ﺑﺎﺷﺪ ﻳﻌﻨﻲ ﺷﺎﻣﻞ‪ \n‬ﺑﺎﺷﺪ‪ .‬ﺍﻳﻦ ‪\n‬ﻫﺎ ﺑﺎﻳﺪ ﺣﻔﻆ ﺷﻮﻧﺪ ﻭ ﺣﺬﻑ ﻧﺸﻮﻧﺪ‪.‬‬
‫‪ .٥‬ﮐﺎﺭﺍﮐﺘﺮﻫﺎﯼ ‪ space‬ﺩﺭ ﺍﺑﺘﺪﺍ ﻭ ﺍﻧﺘﻬﺎﻱ ﺧﻂ ﻧﺒﺎﻳﺪ ﻭﺟﻮﺩ ﺩﺍﺷﺘﻪ ﺑﺎﺷﻨﺪ‪.‬‬
‫‪ .٦‬ﺩﻳﮕﺮ ﻛﺎﺭﺍﻛﺘﺮﻫﺎ)ﺩﻗﻴﻘ َﺎ ﺑﻪ ﻣﻌﻨﻲ ﻛﺎﺭﺍﻛﺘﺮ ﻫﺎﻱ ﻏﻴﺮ ﺍﺯ ‪ space‬ﻭ ’‪ (‘\n‬ﺑﺎﻳﺪ ﺩﺳﺖ ﻧﺨﻮﺭﺩﻩ ﺑﻤﺎﻧﻨﺪ‪.‬‬
‫‪Sample Input: ‬‬
‫‪6 ‬‬
‫‪this is a text\nI want to wrap and test your method’s correctness ‬‬
‫‪Sample Output: ‬‬
‫‪this\nis a\ntext\nI want\nto\nwrap\nand\ntest\nyour\nmethod\n’s\ncorrec\ntness‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪Q2 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫‪Q1 ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪* ‬‬
‫‪0 ‬‬
‫ﺗﻤﺮﻳﻦ ‪ power.cpp:۴‬‬
‫ﺑﺮﻧﺎﻣﻪﺍﯼ ﺑﻨﻮﻳﺴﻴﺪ ﮐﻪ ﺗﻮﺍﻥﻫﺎﯼ ﻣﻨﻔﯽ ﻋﺪﺩ ‪ ۲‬ﺭﺍ ﺑﺎ ﺩﻗﺖ ﮐﺎﻣﻞ ﻣﺤﺎﺳﺒﻪ ﻭ ﭼﺎﭖ ﮐﻨﺪ‪ .‬ﻭﺭﻭﺩﯼ ﺑﺮﻧﺎﻣﻪ ﻋﺪﺩ ‪ n‬ﺍﺳﺖ ﻭ ﺧﺮﻭﺟﯽ ﻣﻘﺪﺍﺭ‬
‫ﺍﺳﺖ‪ .‬‬
‫‪Sample input ‬‬
‫‪67 ‬‬
‫‪Sample output ‬‬
‫‪0.0000000000000000000067762635780344027125465800054371356964111328125 ‬‬
‫‪ ‬‬
‫‪ ‬‬
‫ﻼ ‪ double‬ﻧﮕﻪ ﺩﺍﺷﺖ‪ .‬ﻟﺬﺍ ﺑﺎﻳﺪ ﺑﺮﺍﯼ ﺫﺧﻴﺮﻩﺳﺎﺯﯼ ﺁﻥ ﺑﺎﻳﺪ ﺍﺯ ﺁﺭﺍﻳﻪ‪-‬‬
‫ﺭﺍﻫﻨﻤﺎﻳﯽ‪ :‬ﺗﻮﺟﻪ ﮐﻨﻴﺪ ﮐﻪ ﭼﻨﻴﻦ ﻋﺪﺩﯼ ﺭﺍ ﻧﻤﯽﺗﻮﺍﻥ ﺩﺭ ﻳﮏ ﻣﺘﻐﻴﺮ ﻣﻌﻤﻮﻟﯽ ﻣﺜ ً‬
‫ﺍﯼ ﺑﻪ ﺍﻧﺪﺍﺯﻩﯼ ‪ n‬ﺍﺳﺘﻔﺎﺩﻩ ﮐﻨﻴﺪ! ﻭ ﻫﺮ ﺭﻗﻢ ﺭﺍ ﻣﺘﻨﺎﻭﺑ ًﺎ ﻣﺤﺎﺳﺒﻪ ﻧﻤﺎﻳﻴﺪ‪.‬‬