题解
【基础】回文数
1 条题解
-
0
解题思路
如果当前数不是回文数,就把它倒过来并相加,操作次数加 1。重复这个过程,直到当前数是回文数。
参考代码
#include <iostream> using namespace std; bool hui(long long n){ long long a=n,s=0; while(n>0){s=s*10+n%10;n/=10;} return a==s; } int main(){ // 读入题目给出的输入数据 long long n; cin >> n; int cnt=0; while(!hui(n)){ long long a=n,s=0; while(a>0){s=s*10+a%10;a/=10;} n+=s; cnt++; } // 完成题目的关键计算或判断 cout << cnt; // 输出题目要求的答案 return 0; }复杂度
若进行了
k次操作、数字有L位,时间复杂度O(kL),空间复杂度O(1)。
- 1