Submission #2518

#TimeUsernameProblemLanguageResultExecution timeMemory
2518kipa00생일수 I (GA4_birthday1)C++98
0 / 100
1000 ms884 KiB
#include <cstdio> using namespace std; int T, N; int threes, fives, eights; unsigned int i; int t[8] = {0, 3, 0, 1, 0, 0, 2, 0}; int f[8] = {0, 0, 2, 0, 4, 1, 0, 3}; int e[8] = {0, 1, 1, 0, 2, 0, 0, 1}; int small[8] = {-1, -1, -1, 3, -1, 5, 33, -1}; void makeinput(char c, int count) { while (count--) { printf("%c", c); } } int hap(long long int a) { int res = 0; while (a) { int tmp = a % 10; if (tmp == 3 || tmp == 5 || tmp == 8); else return 0; res += a % 10; a /= 10; } return res; } int main() { scanf("%d", &T); while (T--) { threes = fives = eights = 0; //scanf("%d", &N); N = T; if (N == 12) { printf("3333\n"); continue; } else if (N < 8) { printf("%d\n", small[N]); continue; } eights = N / 8; N %= 8; threes += t[N]; fives += f[N]; eights -= e[N]; makeinput('3', threes); makeinput('5', fives); makeinput('8', eights); printf("\n"); for (i=1;; ++i) { if (hap(i) == T) { break; } } printf("%d\n", i); } 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...