学校1008: X进制回文数
来源:互联网 发布:进口化妆品数据分析 编辑:程序博客网 时间:2024/06/08 19:39
Description
回文数是对称的数,即:将这个数的数字按相反顺序重新排列后,所得的数和原来的数一样。例如:151,178871。给出一个十进制正整数,判断在2-16进制下是否为回文数。
Input
第一行为一个正整数,表示有多少组测试数据。每组数据占一行,只有一个十进制正整数s (s<10^9)。
Output
每组数据对应一行输出。如果s在2-16进制(共15种)表示中,任意一种进制表示下为回文数,则输出“Yes”,否则输出“No”。(注意大小写)
Sample Input
5
10
19
30
47
100
Sample Output
Yes
No
Yes
No
回文数是对称的数,即:将这个数的数字按相反顺序重新排列后,所得的数和原来的数一样。例如:151,178871。给出一个十进制正整数,判断在2-16进制下是否为回文数。
Input
第一行为一个正整数,表示有多少组测试数据。每组数据占一行,只有一个十进制正整数s (s<10^9)。
Output
每组数据对应一行输出。如果s在2-16进制(共15种)表示中,任意一种进制表示下为回文数,则输出“Yes”,否则输出“No”。(注意大小写)
Sample Input
5
10
19
30
47
100
Sample Output
Yes
No
Yes
No
Yes
#include <stdio.h>#include <stdlib.h>#define N 10000#define K 20long tran(long num[],long B,long n)//十进制改为其它进制{ long i=0,j,temp; do { num[i++]=n%B; } while((n/=B)!=0); for(j=0; j<i/2; j++) { temp=num[j]; num[j]=num[i-1-j]; num[i-1-j]=temp; } return i;}int judge(long num[],long len)//判断是否是回文数{ long i,flag=1; for(i=0; i<len/2; i++) { if(num[i]!=num[len-i-1]) flag=0; } return flag;}int main(){ long B,num1[N],i,len1,t,flag,n; scanf("%d",&t); while(t--) { flag=0; scanf("%ld",&n); for(i=2; i<17; i++) { len1=tran(num1,i,n); if(judge(num1,len1)) flag=1; } if(flag==1) printf("Yes\n"); else printf("No\n"); } return 0;}
0 0
- 学校1008: X进制回文数
- 解题报告之 X进制回文数
- 进制回文数
- 【PAT】进制回文数
- 1019 进制转换 回文数
- 判断一个数的n进制是不是回文数
- pat1019 进制转换+回文数 部分正确
- [NOIP 1999] 回文数(进制和字符串处理)
- USACO-Section1.2 Palindromic Squares [回文数][进制转换]
- USACO-Section1.2 Dual Palindromes [回文数][进制转换]
- 回文回文数 HUST
- 回文数&&回文串
- 回文数
- 回文数
- 回文数
- 回文数
- 回文数
- 回文数
- setTimeout和setInterval的区别你真的了解吗?
- 匿名类、内部类、匿名内部类
- 0053 jar可执行包打包规范--从根源解决资源文件类找不到的问题【基础】
- 黑马程序员_IO流
- 浅谈oracle 存储后台进程和用户进程的debug trace log(上)
- 学校1008: X进制回文数
- SQL SERVER 时间日期处理函数
- Android应用程序组件Content Provider应用实例
- 用Sublime编译c、c++的方法
- 程序猿的《那一夜》
- 智游推送技术原理
- javascript 小数点取舍总结
- 银行业务调度系统
- Eclipse环境下开发基于Sailfin的Sip Servlet应用