USACO-Section1.2 Dual Palindromes【暴力枚举】【查找】
来源:互联网 发布:人类永生不死知乎 编辑:程序博客网 时间:2024/05/21 10:34
题目描述:
如果一个数从左往右读和从右往左读都是一样,那么这个数就叫做“回文数”。例如,12321就是一个回文数,而77778就不是。当然,回文数的首和尾都应是非零的,因此0220就不是回文数。
事实上,有一些数(如21),在十进制时不是回文数,但在其它进制(如二进制时为10101)时就是回文数。
编一个程序,从文件读入两个十进制数N (1 <= N <= 15)S (0 < S < 10000)然后找出前N个满足大于S且在两种或两种以上进制(二进制至十进制)上是回文数的十进制数,输出到文件上。
本问题的解决方案不需要使用大于32位的整型.(翻译来源:NOCOW)
INPUT FORMAT:
(file dualpal.in)
只有一行,用空格隔开的两个数N和S。
OUTPUT FORMAT:
(file dualpal.out)
N行, 每行一个满足上述要求的数,并按从小到大的顺序输出.
SAMPLE INPUT
3 25
SAMPLE OUTPUT
26
27
28
解题思路:
暴力枚举比s大的数字,查找有两个及以上不同进制回文数的数字,输出并计数,直到找到n个这样的数。下面是代码。
#include <stdio.h>#include <stdlib.h>#include <string.h>int count,a[40],n,s,sum=0;int judge(int n,int b){ int i,j,count1=0; while(n){//将原数字转化成B进制 a[count1++]=n%b; n=n/b; } for(i=0;i<count1/2;i++){//判断是否为回文数 if(a[i]!=a[count1-i-1])break; } if(i==count1/2)return 1; else return 0; }int main () { FILE *fin = fopen ("dualpal.in", "r"); FILE *fout = fopen ("dualpal.out", "w"); fscanf(fin,"%d %d",&n,&s); int i,j; for(i=s+1;sum<n;i++){ count=0; for(j=2;j<=10&&count<2;j++){ if(judge(i,j)){ count++; } } if(count==2){ fprintf(fout,"%d\n",i); sum++; } } exit(0);}
阅读全文
0 0
- USACO-Section1.2 Dual Palindromes【暴力枚举】【查找】
- USACO section1.2 Dual Palindromes
- USACO-Section1.2 Dual Palindromes
- USACO Section1.2 Dual Palindromes
- USACO-Section1.2 Dual Palindromes
- USACO-Section1.2 Dual Palindromes
- USACO-SECTION1.2 Dual Palindromes
- USACO-Section1.5 Prime Palindromes【暴力枚举】
- usaco.section1.2.Dual Palindromes
- USACO-Section1.2 Name That Number【暴力枚举】【二分查找】
- USACO-Section1.2 Dual Palindromes [回文数][进制转换]
- USACO之Section1.2.5 Dual Palindromes[回文数]
- USACO-Section1.3 Prime Cryptarithm【暴力枚举】
- USACO-Section1.3 Combination Lock【暴力枚举】
- USACO-Section1.4 Arithmetic Progressions【暴力枚举】
- USACO-Section1.2 transform[枚举]
- Dual Palindromes(USACO)
- [USACO] Dual Palindromes
- Python之IO-文件的操作
- Ubuntu 扩大虚拟机系统磁盘空间
- Codeforces 526E. Transmitting Levels (贪心)
- 行式与列式数据库
- 程序员面试金典——二进制小数_(位运算)
- USACO-Section1.2 Dual Palindromes【暴力枚举】【查找】
- I.MX6QP SD/eMMC启动
- Apache的下载与安装
- Java初级入门之 Two 编程中的基本概念
- 项目一:SORM基本框架之基本思路
- 中文分词(一)
- innerHTML
- web服务之httpd
- Jedis相关操作api---list