USACO:Palindromic Squares;回文判断+进制转化
2015-03-07 13:48
120 查看
/* TASK:palsquare LANG:C++ ID:huibaochen */ /*一题:给你一个数n代表进制,算出从1到300的数的平方转化为n进制后是否进回文序列,是的话输出这个是的n进制和这个数的平方的n进制*/ #include <iostream> #include <stdio.h> #include <string.h> int m, n, len, num, r; char str[1000 +5], ch[100 + 5]; using namespace std; void yes(int m) { num = m * m; len = 0; while(num){ r = num % n; num = num / n; if(r >= 0 && r <= 9) str[len++] = r + 48; else str[len++] = r + 'A' - 10; } for(int i = 0; i < len / 2; i++){ if(str[i] != str[len - 1 - i]) return; } len = 0; while(m){ r = m % n; m = m / n; if(r >= 0 && r <= 9) ch[len++] = r + 48; else ch[len++] = r + 'A' - 10; } for(int i = 0; i < len / 2; i++){ swap(ch[i], ch[len - i - 1]); } printf("%s %s\n", ch, str); } int main() { freopen ("palsquare.in", "r", stdin); freopen ("palsquare.out", "w", stdout); scanf("%d", &n); for(int i = 1; i <= 300; i++){ yes(i); } return 0; }
相关文章推荐
- 1.2 palsquare 转化为对应进制,再判断是否为回文
- USACO 1.2 Dual PalinDromes (递归判断回文)
- 编程之法第一章【回文判断+字符串转化成整数】
- 【C语言】冒泡排序与回文判断
- 链表回文判断(C++)
- 回文判断
- 判断一个字符串是否回文
- 【USACO1.3.3】最棒的回文 manacher
- USACO-Section1.2 Dual Palindromes [回文数][进制转换]
- POJ 2513 - Colored Sticks 判断无向图哈密顿通路转化为判断无向图欧拉通路
- 判断对称数、回文字符串
- 第十一周项目六 回文、素数——判断是否为回文数
- STL学习-字符串回文判断以及实现删除字符串中重复字符最少字符
- Java实现回文字符串判断
- 编译原理—判断回文
- hduoj1544(判断连续回文)
- c++实现字符串回文判断
- 6-2 判断回文字符串(20 分)
- 判断一个字符串是否为回文
- (LeetCode)Valid Palindrome --- 判断回文字符串