#include <stdbool.h> #include <stdio.h> #include <math.h> void Initiative(int A[], int B[]) { for (int i = 0; i < 4; i++) { A[i] = -1; B[i] = -1; } B[4] = B[5] = -1; } void Build(int A[], int B[], int x, int result) { for (int i = 3; i >= 0; i--) { if ((x != 0)) { A[i] = x % 10; x /= 10; } } for (int j=5; j>=0; j--) { if ((result != 0)) { B[j] = result % 10; result /= 10; } } } bool IsKeepShape(int A[],int B[]){ int i=3; int j=5; while(A[i]==B[j]){ i--; j--; } if (A[i]==-1) { return true; } else { return false; } } int main() { int x, result; while (scanf("%d", &x) != EOF) { int A[4], B[6]; Initiative(A, B); result = pow(x, 2); Build(A, B, x, result); bool flag=IsKeepShape(A, B); if (flag) { printf("Yes!\n"); } else { printf("No!\n"); } } return 0; }
#include <stdio.h> int main() { int a; while(scanf("%d",&a)!=EOF){ if(a>=2&&a<=9){ if((a*a-a)%10==0){ printf("Yes!\n"); } else printf("No!\n"); } if(a>=10&&a<100){ if((a*a-a)%100==0){ printf("Yes!\n"); } else printf("No!\n"); } } return 0; }
///KY217 守形数 #include <stdio.h> int main() { int x; while (scanf("%d", &x) != EOF) { int xx = x * x; int f = 0, t = 1; while ((xx / t) != 0) { if (xx % t == x || x == 1) { f = 1; break; } t *= 10; } if (f == 1) printf("Yes!\n"); else printf("No!\n"); } return 0; }