मान लीजिए हमारे पास एक संख्या n है। एक खेल में प्रारंभ में n का मान v है और खिलाड़ी निम्नलिखित ऑपरेशन शून्य या अधिक बार कर सकता है: एक धनात्मक पूर्णांक x चुनें जो x < n हो और x, n का भाजक न हो, फिर x को n से घटाएं। खिलाड़ी का लक्ष्य अंत में n के मान को न्यूनतम करना है।
उदाहरण के लिए, यदि इनपुट n = 8 है, तो आउटपुट 1 होगा, क्योंकि खिलाड़ी पहले चरण में x = 3 चुन सकता है, फिर n 5 हो जाता है। हम फिर दूसरे चरण में x = 4 चुन सकते हैं जिससे n = 1 परिणाम के रूप में प्राप्त होता है।
चरण
इसे हल करने के लिए, हम निम्नलिखित चरणों का पालन करेंगे:
if n is same as 2, then: return 2 return 1
उदाहरण
बेहतर समझ के लिए निम्नलिखित कार्यान्वयन देखें:
#includeusing namespace std; int solve(int n){ if (n == 2){ return 2; } return 1; } int main(){ int n = 8; cout << solve(n) << endl; }
इनपुट
8
आउटपुट
1