1 条题解
-
0
本题非常简单,就这句话有点坑人:
然后找出前N个满足大于S且在两种或两种以上进制(二进制至十进制)上是回文数的十进制数,输出到文件上。
注意,是大于S!!!
:
#include <bits/stdc++.h> using namespace std; int n , s; string conversion(int x , int c)//进制转换 { string ans; while (x > 0) { ans += x % c + '0'; x /= c; } return ans; } bool check(string s)//判断回文数 { int i = 0 , j = (int)s.length() - 1; while (i <= j) { if (s[i] != s[j]) return false; i++; j--; } return true; } int main() { cin >> n >> s; int x = s + 1;//初始化为s+1! while (n) { int sum = 0; for (int i = 2 ; i <= 10 ; i++) if (check(conversion(x , i))) sum++; if (sum >= 2) { n--; cout << x << endl; } x++; } return 0; }
- 1
信息
- ID
- 1593
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 6
- 标签
- 递交数
- 24
- 已通过
- 10
- 上传者