(进制转换)Palindrom Numbers

it2025-05-22  16

题目链接

ZOJ 1078

思路

按部就班,水一水💧

代码

#include <iostream> #include <string.h> #include <vector> using namespace std; int Process(int i,int x) { int newx=0; int t; while(x) { t = x%i; if(x < i) newx = newx + t; else newx = (newx+t)*i; x /= i; } return newx; } int main () { int x; int newx; while(cin>>x && x) { vector<int> record; for(int i=2;i<=16;i++) { newx = Process(i,x); if(newx == x) record.push_back(i); } int len = record.size(); if(len == 0) cout<<"Number "<<x<<" is not palindrom"<<endl; else{ cout<<"Number "<<x<<" is palindrom in basis"; for(int i=0;i<len;i++) cout<<" "<<record[i]; cout<<endl; } } return 0; }

总结

我晕了,还以为自己写错了。。ZOJ和UVA竟然有区别,竟然是输出不存在的时候多了一个a,5555,还以为又又又出bug了

最新回复(0)