主要考察了判断一个10进制数是否为素数(isZS(int ss))和怎么求一个十进制数的n进制数rec(int n,int m)
代码:
1 1 #include <cstdio> 2 2 #include <algorithm> 3 3 #include<iostream> 4 4 #include<string> 5 5 #include<cmath> 6 6 #include<map> 7 7 using namespace std; 8 8 bool isZS(int s) 9 9 { 1010 if (s == 2)return true; 1111 if (s == 1)return false; 1212 if (s == 3)return true; 1313 for (int i = 2; i*i <= s; i++) 1414 { 1515 if (s%i == 0)return false; 1616 1717 } 1818 return true; 1919 } 2020 int rec(int ss,int d) 2121 { 2222 int apk[1000]; int g = 0; 2323 while (ss > 0) 2424 { 2525 int k = ss%d; 2626 apk[g++] = k; 2727 ss = ss / d; 2828 } 2929 int sum = 0; 3030 for (int i =0; i<g; i++) 3131 sum += apk[i]*pow(d, g-1-i); 3232 return sum; 3333 } 3434 int main() { 3535 int n, m; 3636 while (1) 3737 { 3838 cin >> n; if (n < 0)break; cin >> m; 3939 if (isZS(n) && isZS(rec(n, m)))cout << "Yes"<<endl; 4040 else cout << "No" << endl; 4141 } 4242 return 0; 4343 }