题目链接
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了
转载请注明原文地址: https://lol.8miu.com/read-25927.html