双基回文数
来源:互联网 发布:网络被劫持了怎么办 编辑:程序博客网 时间:2024/05/21 17:05
记录下写的代码和题目方便自己不会忘记(进制函数含借鉴)
问题描述:如果一个正整数n至少在两个不同的进位制b1和b2下都是回文数(2<=b1,b2<=10),则称n是双基回文数(注意:回文数不能包含前导0)。
输入正整数S<10^6,输出比S大的最小双基回文数。
样例输入:1600000
样例输出:1632995
分析:最自然的想法就是:从S+1开始,依次判断每个数是否为双基回文数,而在判断时要列举所有可能的基数(2~10),一切都是那么的”暴力“。然而令人意外的是,这样做对于S<10^6这样的小规模数据来说是足够快的。因为这种数密度很大,这也是为什么不会爆的原因。
include<iostream>#include<string.h>using namespace std;int fun(int x,int n){ int a[100]; int k=0; memset(a,0,sizeof(a)); for(int i=0;;i++){ a[i]=x%n; x/=n; if(x==0){ k=i; break; } } int flag=1; for(int i=0;i<=k/2;i++){ if(a[i]!=a[k-i]){ flag=0; break; } } if(flag==1)return 1; else return 0;}int main(void){ int n; while(cin>>n){ for(;;n++){ int k=0; int flag=0; for(int i=2;i<=10;i++){ if(fun(n,i)) k++; if(k>=2){ flag=1; break; } }if(flag){ cout<<n<<endl; break; } } }}
0 0
- 双基回文数
- 双基回文数
- 双基回文数
- 双基回文数
- 双基回文数!!!
- 双基回文数
- 双基回文数
- 双基回文数
- 双基回文数
- 双基回文数
- 最小双基回文数
- Online Judge 0004:双基回文数
- 例题7.1.4,双基回文数
- 7-1-4 双基回文数
- 暴力求解法-双基回文数
- Algorithm学习笔记 --- 双基回文数
- 算法练习--双基回文数
- 双基回文数-JAVA实现
- Hive 模式设计和语言规范
- Mybatis Generator最完整配置详解
- Vim文本编辑器
- 腹有诗书气自华,记2016年读过的好书
- PPT个人学习笔记(四)——神奇移动的实现
- 双基回文数
- Android:学习AIDL,这一篇文章就够了(上)
- ios swift 左侧抽屉简单实现
- 架构设计:系统间通信(21)——ActiveMQ的安装与使用
- 判断字符串String是否为空问题
- 遗传算法求解TSP问题的总结
- 【HTTP】Fiddler(一) - Fiddler简介
- 【CSS】简易的页面侧边栏导航
- 47. Spring Boot发送邮件【从零开始学Spring Boot】