मान लीजिए, हमें एक पूर्णांक संख्या k दी गई है। हम किसी संख्या को विशेष संख्या कहते हैं यदि उस संख्या के सभी अंक समान हों। उदाहरण के लिए, 1, 11, 1111 विशेष संख्याएँ हैं। हम विशेष संख्याओं को 1, 11, 111, 1111, 2, 22, 222, 2222, 3, 33, 333, 3333, आदि क्रम में गिनते हैं। हमें k तक के विशेष अंकों में कुल अंकों की संख्या ज्ञात करनी है। k का मान 10000 से अधिक नहीं है।
इसलिए, यदि इनपुट k =9999 जैसा है, तो आउटपुट 90 होगा।
कदम
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
s := convert k to string
Define an array v of size: := {0, 1, 3, 6, 10}
print(((s[0] - '0') - 1) * 10 + v[length of s]) उदाहरण
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
#include <bits/stdc++.h>
using namespace std;
#define N 100
void solve(int k) {
string s = to_string(k);
int v[] = {0, 1, 3, 6, 10};
cout<< ((s[0] - '0') - 1) * 10 + v[s.length()] << endl;
}
int main() {
int k = 9999;
solve(k);
return 0;
} इनपुट
9999
आउटपुट
90