#include<iostream>
using namespace std;
#define P 8
int sum(int a) {
int sum = 0;
while (a != 0) {
sum += a % 10;
a /= 10;
}
return sum;
}
bool su(int b) {
for (int i = 2; i < b; i++) {
if (b%i == 0) return false;
}
return true;
}
int main() {
//2008 Problems A 判断等差数列
/*int n = 1,minus,num0,num1,dis,count=0,k=0;
bool flag[1000], FLAG;
while (n!=0) {
scanf_s("%d",&minus);
count++;
if (minus == 0) break;
for (int i = 0; i < minus; i++) {
scanf_s("%d",&num0);
if (i == 0) {
num1 = num0;
}
else if(i==1){
dis = num0 - num1;
num1 = num0;
}
else {
if (dis == num0 - num1) {
FLAG = 1;
num1 = num0;
}
else {
FLAG = 0;
num1 = num0;
}
}
}
flag[k] = FLAG;
k++;
}
for (int j = 0; j < k; j++) {
if(flag[j]==1) printf("Yes\n");
else printf("No\n");
}*/
//2008 Problems B 判断水仙花数
/*int n = 1,number,i,j,k,m,count=0;
bool flag[1000];
while (n != 0) {
scanf_s("%d",&number);
if (number == 0) break;
m = number;
k = m % 10;
m /= 10;
j = m % 10;
m /= 10;
i = m % 10;
if (pow(i, 3) + pow(j, 3) + pow(k, 3) == number) {
flag[count] = true;
count++;
}
else {
flag[count] = false;
count++;
}
}
for (int s = 0; s < count; s++) {
if (flag[s] == true)
printf("Yes\n");
else
printf("No\n");
}*/
//2008 Problems C 图像乱置
/*int i, j,i1,j1,num[P][P], num1[P][P],count=0,k=0, remmber;
bool flag = 0;
for (i = 0; i < P; i++) {
for (int j = 0; j < P; j++) {
num[i][j] = k;
k++;
}
}
remmber = k;
while (flag == 0) {
for (i = 0; i < P; i++) {
for (int j = 0; j < P; j++) {
i1 = (i + j) % P;
j1 = (i + 2 * j) % P;
num1[i1][j1] = num[i][j];
}
}
count++;
memcpy(num, num1, sizeof(num1)); //string.h
k = 0;
for (i = 0; i < P; i++) {
for (int j = 0; j < P; j++) {
if (num[i][j] != k) {
break;
}
k++;
}
}
if (k == remmber) flag = 1;
}
printf("%d\n",count);*/
//2008 Problems D Smith数
/*int num,num1,sum1,sum2=0;
scanf_s("%d",&num);
num1 = num;
sum1 = sum(num1);
for (int i = 2; i <= num1;) {
if (num1%i == 0) {
if (su(i) == true) {
sum2 += sum(i);
num1 /= i;
i = 2;
}
}
else
i++;
}
if (sum1 == sum2) {
printf("Yes");
}
else
printf("No");*/
//2008 Problems E R的n次方准确结果
return 0;
}