Submission #1495

#TimeUsernameProblemLanguageResultExecution timeMemory
1495tncks0121생일수 II (GA4_birthday2)C++98
45 / 100
5 ms888 KiB
#include <stdio.h> #include <string.h> typedef long long ll; char X[1005],Y[1005]; int XN, YN; const ll MOD = 19980305; ll res; bool same() { if(XN != YN) return false; for(int i = 1; i <= XN; i++) if(X[i] != Y[i]) return false; return true; } int main() { int i, j; scanf("%s%s", X+1, Y+1); XN = strlen(X+1); YN = strlen(Y+1); ll last = 0; for(i = 1; i <= XN; i++) last = (last * 10 + X[i] - '0') % MOD; do { ll now = 0; for(i = XN; i > 0; i--) { if(X[i] == '3') {X[i] = '5'; break; } else if(X[i] == '5') {X[i] = '8'; break; } else X[i] = '3'; } if(i <= 0){ ++XN; for(i = 1; i <= XN; i++) X[i] = '3'; } for(i = 1; i <= XN; i++) now = (now * 10 + X[i] - '0') % MOD; res = (res + last * now) % MOD; last = now; }while(!same()); printf("%lld\n", res); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...