进制转换(十进制转换N进制)的实现
来源:互联网 发布:看杀卫玠知乎 编辑:程序博客网 时间:2024/05/16 06:35
进制转换核心代码:
string Zhuanh(int x,int n){string s;while(x){int u=x%n;if(x%n>9)s.push_back(u-10+'A');elses.push_back(u+'0');x/=n;}for(int i=0;i<s.length()/2;i++){swap(s[i],s[s.length()-1-i]);}return s;}
下面是USACO的有关练习的参考代码
[USACO1.2]回文平方数 Palindromic Squares
#include<iostream>#include<algorithm> #include<string> using namespace std;string Zhuanh(int x,int n){string s;while(x){int u=x%n;if(x%n>9)s.push_back(u-10+'A');elses.push_back(u+'0');x/=n;}for(int i=0;i<s.length()/2;i++){swap(s[i],s[s.length()-1-i]);}return s;}bool ifHui(string s){for(int i=0;i<s.length();i++){if(s[i]!=s[s.length()-1-i])return false;}return true;}int main(){int n;cin>>n;for(int i=1;i<=300;i++){if(ifHui(Zhuanh(i*i,n))){cout<<Zhuanh(i,n)<<" "<<Zhuanh(i*i,n)<<endl;}}}
[USACO1.2]双重回文数 Dual Palindromes
#include<iostream>#include<algorithm> #include<string> #include<cstdio>using namespace std;string Zhuanh(long long int x,int n){string s;while(x){int u=x%n;if(x%n>9)s.push_back(u-10+'A');elses.push_back(u+'0');x/=n;}for(int i=0;i<s.length()/2;i++){swap(s[i],s[s.length()-1-i]);}return s;}bool ifHui(string s){for(int i=0;i<s.length();i++){if(s[i]!=s[s.length()-1-i])return false;}return true;}int main(){int n,s,num=0;cin>>n>>s;for(long long int i=s+1;num<n;i++){int jz=0;for(int j=2;j<11;j++){if(ifHui(Zhuanh(i,j))) jz++;if(jz>=2)break;}if(jz>=2){cout<<i<<endl;num++;}}}
要注意的是,此题的一些变量类型要为long long超长整型。
阅读全文
0 0
- 进制转换(十进制转换N进制)的实现
- 十进制到n进制的转换
- 进制转换(十进制转n进制)
- 单向链栈实现进制转换(十进制转换成N进制数【正数】)
- 递归实现十进制到n[2, 10]进制转换
- 递归实现十进制到n[2, 10]进制转换
- 进制转换(十进制数m转换成n进制)
- n进制转换为十进制
- 十进制转换为N进制问题
- n进制转换为十进制
- n进制转换为十进制
- 12、JAVA 递归实现十进制到N进制的转换--未考虑负数
- 十进制数转换n进制(Java)
- C++十进制到n进制的转换
- 十进制与N进制之间的转换
- 十进制转换为N进制
- 用递归实现十进制数转换N进制
- 用栈实现十进制到任意进制的转换
- 207. Course Schedule
- ListView 单个Item 更新
- java 插入排序
- mybatis逆向工程之配置
- GitHub项目托管
- 进制转换(十进制转换N进制)的实现
- 超详细java中的ClassLoader详解
- Android内存进程管理机制
- 5.3二叉树的存储结构
- 风格迁移转换的两种实现
- 617. Merge Two Binary Trees(Java)
- revit二次开发之单位转换
- wsdl和wadl区别
- hdu6114.Chess(求组合数)