说实话也只要一分钟就能写完
模拟一下每个数,并排序。
#include <bits/stdc++.h>
using namespace std;
const int N = 1e6 + 10;
struct S {
int a;
int sum;
} a[N];
bool cmp(S a, S b) {
if (a.sum != b.sum) return a.sum < b.sum;
return a.a < b.a;
}
int main() {
int n, m; scanf("%d%d", &n, &m);
for (int i = 1; i <= n; i++) {
a[i].a = i;
int x = i, res = 0;
while (x) {
res += x % 10;
x /= 10;
}
a[i].sum = res;
}
sort(a + 1, a + 1 + n, cmp);
cout << a[m].a;
return 0;
}