7840 十全数
思路:非常经典的先循环,然后check(i)是否满足条件
#include<bits/stdc++.h> #define f(i,s,e) for(int i = s; i <= e; i++) #define ll long long using namespace std; const int N = 1e3+10,inf = 0x3f3f3f3f; int check(int n) { int sum = 0; while(n) { sum += n % 10; n /= 10; } return sum == 10; } int main() { int k,sum = 0; cin >> k; for(int i = 1; ; i++) { if(check(i))sum++; if(sum == k){ cout << i << endl; return 0; } } return 0; }

浙公网安备 33010602011771号