1 条题解
-
0
C++ :
#include <cstdio> /* 找所有 <=6 位、数位和 == n 的回文数,从小到大输出;没有则 -1 */ static int num[8]; int main(){ int n; if(scanf("%d", &n) != 1) return 0; int found = 0; for(int x = 1; x <= 999999; x++){ int d[8], L = 0, t = x; while(t){ d[L++] = t % 10; t /= 10; } int ok = 1, s = 0; for(int i=0, j=L-1; i<j; i++, j--) if(d[i] != d[j]){ ok = 0; break; } if(!ok) continue; for(int i=0;i<L;i++) s += d[i]; if(s != n) continue; if(found) putchar('\n'); printf("%d", x); found = 1; } if(!found) printf("-1\n"); else putchar('\n'); return 0; }
- 1
信息
- ID
- 2712
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者