Task: | Suuremmat |
Sender: | caro |
Submission time: | 2021-01-23 17:53:46 +0200 |
Language: | C++ (C++11) |
Status: | READY |
Result: | 100 |
group | verdict | score |
---|---|---|
#1 | ACCEPTED | 35 |
#2 | ACCEPTED | 65 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | ACCEPTED | 0.01 s | 1, 2 | details |
#2 | ACCEPTED | 0.01 s | 2 | details |
Code
#include <bits/stdc++.h> using namespace std; typedef long long ll; int main(){ int t; cin >> t; ll tt[t]; for(int i = 0; i < t; i++){ cin >> tt[i]; } for(int i = 0; i < t; i++){ ll n = tt[i]; if(n < 9){ printf("%lld\n", n + 1); } else if(n < 99){ n += 1; if((n / 10) >= (n - ((n / 10) * 10))){ for(int j = 0; j < 2; j++){ printf("%lld", n / 10); } printf("\n"); } else { for(int j = 0; j < 2; j++){ printf("%lld", n / 10 + 1); } printf("\n"); } } else { n += 1; ll exp = 1; ll expn = 1; while(n / exp > 0){ expn++; exp *= 10; } expn--; exp /= 10; ll minN = n / exp; n -= minN * exp; exp /= 10; if(n / exp < minN){ for(int j = 0; j < expn; j++){ printf("%lld", minN); } printf("\n"); continue; } else if(n / exp > minN){ minN += 1; for(int j = 0; j < expn; j++){ printf("%lld", minN); } printf("\n"); continue; } else if(n / exp == minN){ while(exp > 0){ int nth = n / exp; n -= nth * exp; exp /= 10; if(nth < minN) { break; } else if(nth != minN){ minN = minN + 1; break; } } for(int j = 0; j < expn; j++){ printf("%lld", minN); } printf("\n"); continue; } /* else{ minN = n / exp; for(int j = 0; j < expn; j++){ printf("%lld", minN); } printf("\n"); continue; } while(exp > 0){ int nth = n / exp; n -= nth * exp; exp /= 10; if(nth == 0) { break; } if(minN < nth){ minN = nth; break; } } for(int j = 0; j < expn; j++){ printf("%lld", minN); } printf("\n"); */ } } return 0; }
Test details
Test 1
Group: 1, 2
Verdict: ACCEPTED
input |
---|
1000 1 2 3 4 ... |
correct output |
---|
2 3 4 5 6 ... |
user output |
---|
2 3 4 5 6 ... Truncated |
Test 2
Group: 2
Verdict: ACCEPTED
input |
---|
1000 735425311146082632 756615631808964686 466489470801941584 100417544394053220 ... |
correct output |
---|
777777777777777777 777777777777777777 555555555555555555 111111111111111111 555555555555555555 ... |
user output |
---|
777777777777777777 777777777777777777 555555555555555555 111111111111111111 55555555555555 ... Truncated |