ZOJ 1068 (其他进制是否回文数)
2010-05-11 10:10
204 查看
////////////////////////////////////////////
//1068(其他进制是否回文数)
#include<iostream>
using namespace std;
unsigned int st[100];
//判断数组st是否前len位是否为回文数
bool deter_palin(int len)
{
int i;
bool flags=1;
for(i=0;i<len/2;i++)
{
if(st[i]!=st[len-1-i])
{
flags=0;
break;
}
}
return flags;
}
//对每一基数basenum进行进制转换,通过调用deter_palin(),判断该进制数是否为回文数
bool base_chang(unsigned int n,int basenum)
{
int k=0;
while(n!=0)
{
st[k++]=n%basenum;
n/=basenum;
}
if(deter_palin(k))
return 1;
else
return 0;
}
int main()
{
unsigned int n;
while(cin>>n && n!=0)
{
int i;
bool flags=0;
for(i=2;i<=16;i++)
{
if(base_chang(n,i))
//只需第一个前输出字符句子
if(flags==0)
{
cout<<"Number "<<n<<" is palindrom in basis "<<i;
flags=1;
}
else
cout<<" "<<i;
}
if(flags==0)
cout<<"Number "<<n<<" is not a palindrom";
cout<<endl;
}
return 0;
}
//1068(其他进制是否回文数)
#include<iostream>
using namespace std;
unsigned int st[100];
//判断数组st是否前len位是否为回文数
bool deter_palin(int len)
{
int i;
bool flags=1;
for(i=0;i<len/2;i++)
{
if(st[i]!=st[len-1-i])
{
flags=0;
break;
}
}
return flags;
}
//对每一基数basenum进行进制转换,通过调用deter_palin(),判断该进制数是否为回文数
bool base_chang(unsigned int n,int basenum)
{
int k=0;
while(n!=0)
{
st[k++]=n%basenum;
n/=basenum;
}
if(deter_palin(k))
return 1;
else
return 0;
}
int main()
{
unsigned int n;
while(cin>>n && n!=0)
{
int i;
bool flags=0;
for(i=2;i<=16;i++)
{
if(base_chang(n,i))
//只需第一个前输出字符句子
if(flags==0)
{
cout<<"Number "<<n<<" is palindrom in basis "<<i;
flags=1;
}
else
cout<<" "<<i;
}
if(flags==0)
cout<<"Number "<<n<<" is not a palindrom";
cout<<endl;
}
return 0;
}
相关文章推荐
- ZOJ 1078 题目大意是 :判断 一些数在从二到十六的进制是否是回文数
- PAT-Advanced Level 1019 判断一个数在n进制下是否是回文数
- ZOJ - 3861 Valid Pattern Lock(dfs或其他,两种解法)
- 判断表中的数据是否被其他表中使用过!!
- 递归实现判断一个数是否是回文数
- 10进制与其他进制的转换
- 整个页面的ajax都执行完以后再进行其他的操作,怎么判断一个图片是否正常显示?
- I.MX6 查看baudrate确定是否被其他程序占用
- 学习Java语言前,是否需要学习其他编程语言?
- 十进制和其他进制的转换规则
- E: 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用) E: 无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?
- bat文件判断path路径是否包含其他路径
- 48.输入任意正整数,编程判断该数是否为回文数(回文数是指从左到右读与从右到左读一样,如12321)
- [QualityCenter]设置工作流脚本-根据某字段是否包含指定字符串来判断其他字段的选值
- 题目:请实现两棵树是否相等的比较,相等返回,否则返回其他值,并说明算法复杂度。
- 对给定的字符串(只包含'z','o','j'三种字符),判断他是否能AC。 是否AC的规则如下: 1. zoj能AC; 2. 若字符串形式为xzojx,则也能AC,其中x可以是N个'o' 或者为空;
- Android过渡页验证用户是否在其他地方(PC或者平板)进行过密码修改的问题
- 判断一个数是否为回文数
- 第十一周项目3-2-判断一个数是否回文数
- 删除数据时检查数据是否被其他数据表使用,其他位置使用了,就不给删除