zoj 1078 Palindrom Numbers
2011-12-28 22:33
281 查看
#include "iostream" #include "string" #include "vector" using namespace std; int main() { int num, i; vector<int> v; while (cin >> num && num) { v.clear(); for (i = 2; i < 17; i++)//从2到16进制的数进行相除,求出进制的表示法 { int temp = num, temp1, length; string str = ""; while (temp)//求进制数,并将进制数表示为字符串的形式! { temp1 = temp % i; str += (temp1 + 48); temp /= i; } length = str.size(); if (length % 2 == 0)//下面就字符串进行判断,判断是否为回文字符串!如果是,就将i保存在V容器中 { int flag = 0; for (int j = 0; j < length / 2; j++) { if (str[j] != str[length - 1 - j]) { flag = -1; break; } } if (flag == 0) v.push_back(i); } else { int flag = 0; for (int j = 0; j < (length-1)/2; j++) { if (str[j] != str[length - 1 - j]) { flag = -1; break; } } if (flag == 0) v.push_back(i); } } int size = v.size(); //结果的输出! if (size) { cout << "Number " << num << " is palindrom in basis"; for (int q = 0; q < size; q++) cout << " " << v[q] ; cout << endl; } else cout << "Number " << num << " is not a palindrom" << endl; } }
相关文章推荐
- ZOJ Problem Set - 1078||Palindrom Numbers
- ZOJ 1078 枚举法
- ZOJ1078-Palindrom Numbers
- hdu 1078 (zoj 1107) FatMouse and Cheese
- ZOJ Problem Set - 1078 Palindrom Numbers
- ZOJ 1078 回文数
- zoj 1078 Palindrom Numbers
- zoj1078 Palindrom Numbers
- ZOJ 1078 题目大意是 :判断 一些数在从二到十六的进制是否是回文数
- ZOJ Problem Set - 1078
- ZOJ1078 Palindrom Numbers
- zoj 1078 Palindrom Numbers
- ZOJ Problem Set - 1078 Palindrom Numbers
- ZOJ1078 Palindrom Numbers
- zoj1078
- ZOJ-1078
- ZOJ 1078
- ZOJ 1078 Palindrom Numbers
- ZOJ 1078
- ZOJ Problem Set–1078 Palindrom Numbers