| Task: | Kyselyt |
| Sender: | nokka7 |
| Submission time: | 2017-10-15 12:51:12 +0300 |
| Language: | C++ |
| Status: | READY |
| Result: | 100 |
| group | verdict | score |
|---|---|---|
| #1 | ACCEPTED | 12 |
| #2 | ACCEPTED | 25 |
| #3 | ACCEPTED | 63 |
| test | verdict | time | group | |
|---|---|---|---|---|
| #1 | ACCEPTED | 0.05 s | 1 | details |
| #2 | ACCEPTED | 0.05 s | 2 | details |
| #3 | ACCEPTED | 0.06 s | 3 | details |
Compiler report
input/code.cpp: In function 'long long int vastaus(long long int)': input/code.cpp:286:1: warning: control reaches end of non-void function [-Wreturn-type] } ^
Code
#include <bits/stdc++.h>
using namespace std;
long long vastaus(long long kysyttava) {
if (kysyttava < 10) {
return kysyttava;
}
if (kysyttava >= 10 && kysyttava < 190 ) {
long long auttaja;
int tyyppi;
auttaja = (kysyttava - 10);
tyyppi = (auttaja) % 2;
if (tyyppi == 0) return (auttaja/20 + 1);
if (tyyppi == 1) return (auttaja%20)/2;
}
if (kysyttava >= 190 && kysyttava < 2890 ) {
long long auttaja;
int tyyppi;
int num;
num = 3;
auttaja = (kysyttava - 190);
tyyppi = (auttaja % num);
if (tyyppi == 0) return (auttaja/(num*100) + 1);
if (tyyppi == 1) return (auttaja%(num*100))/(num*10);
if (tyyppi == 2) return (auttaja%(num*10))/num;
}
if (kysyttava >= 2890 && kysyttava < 38890 ) {
long long auttaja;
int tyyppi;
int num;
num = 4;
auttaja = (kysyttava - 2890);
tyyppi = (auttaja % num);
if (tyyppi == 0) return (auttaja/(num*1000) + 1);
if (tyyppi == 1) return (auttaja%(num*1000))/(num*100);
if (tyyppi == 2) return (auttaja%(num*100))/(num*10);
if (tyyppi == 3) return (auttaja%(num*10))/(num*1);
}
if (kysyttava >= 38890 && kysyttava < 488890 ) {
long long auttaja;
int tyyppi;
int num;
num = 5;
auttaja = (kysyttava - 38890);
tyyppi = (auttaja % num);
if (tyyppi == 0) return (auttaja/(num*10000) + 1);
if (tyyppi == 1) return (auttaja%(num*10000))/(num*1000);
if (tyyppi == 2) return (auttaja%(num*1000))/(num*100);
if (tyyppi == 3) return (auttaja%(num*100))/(num*10);
if (tyyppi == 4) return (auttaja%(num*10))/(num*1);
}
if (kysyttava >= 488890 && kysyttava < 5888890 ) {
long long auttaja;
int tyyppi;
long long num;
num = 6;
auttaja = (kysyttava - 488890);
tyyppi = (auttaja % num);
if (tyyppi == 0) return (auttaja/(num*100000) + 1);
if (tyyppi == 1) return (auttaja%(num*100000))/(num*10000);
if (tyyppi == 2) return (auttaja%(num*10000))/(num*1000);
if (tyyppi == 3) return (auttaja%(num*1000))/(num*100);
if (tyyppi == 4) return (auttaja%(num*100))/(num*10);
if (tyyppi == 5) return (auttaja%(num*10))/(num*1);
}
if (kysyttava >= 5888890 && kysyttava < 68888890 ) {
long long auttaja;
int tyyppi;
long long num;
num = 7;
auttaja = (kysyttava - 5888890);
tyyppi = (auttaja % num);
if (tyyppi == 0) return (auttaja/(num*1000000) + 1);
if (tyyppi == 1) return (auttaja%(num*1000000))/(num*100000);
if (tyyppi == 2) return (auttaja%(num*100000))/(num*10000);
if (tyyppi == 3) return (auttaja%(num*10000))/(num*1000);
if (tyyppi == 4) return (auttaja%(num*1000))/(num*100);
if (tyyppi == 5) return (auttaja%(num*100))/(num*10);
if (tyyppi == 6) return (auttaja%(num*10))/(num*1);
}
if (kysyttava >= 68888890 && kysyttava < 788888890 ) {
long long auttaja;
int tyyppi;
long long num;
num = 8;
auttaja = (kysyttava - 68888890);
tyyppi = (auttaja % num);
if (tyyppi == 0) return (auttaja/(num*10000000) + 1);
if (tyyppi == 1) return (auttaja%(num*10000000))/(num*1000000);
if (tyyppi == 2) return (auttaja%(num*1000000))/(num*100000);
if (tyyppi == 3) return (auttaja%(num*100000))/(num*10000);
if (tyyppi == 4) return (auttaja%(num*10000))/(num*1000);
if (tyyppi == 5) return (auttaja%(num*1000))/(num*100);
if (tyyppi == 6) return (auttaja%(num*100))/(num*10);
if (tyyppi == 7) return (auttaja%(num*10))/(num*1);
}
if (kysyttava >= 788888890 && kysyttava < 8888888890 ) {
long long auttaja;
int tyyppi;
long long num;
num = 9;
auttaja = (kysyttava - 788888890);
tyyppi = (auttaja % num);
if (tyyppi == 0) return (auttaja/(num*100000000) + 1);
if (tyyppi == 1) return (auttaja%(num*100000000))/(num*10000000);
if (tyyppi == 2) return (auttaja%(num*10000000))/(num*1000000);
if (tyyppi == 3) return (auttaja%(num*1000000))/(num*100000);
if (tyyppi == 4) return (auttaja%(num*100000))/(num*10000);
if (tyyppi == 5) return (auttaja%(num*10000))/(num*1000);
if (tyyppi == 6) return (auttaja%(num*1000))/(num*100);
if (tyyppi == 7) return (auttaja%(num*100))/(num*10);
if (tyyppi == 8) return (auttaja%(num*10))/(num*1);
}
if (kysyttava >= 8888888890 && kysyttava < 98888888890 ) {
long long auttaja;
int tyyppi;
long long num;
num = 10;
auttaja = (kysyttava - 8888888890);
tyyppi = (auttaja % num);
if (tyyppi == 0) return (auttaja/(num*1000000000) + 1);
if (tyyppi == 1) return (auttaja%(num*1000000000))/(num*100000000);
if (tyyppi == 2) return (auttaja%(num*100000000))/(num*10000000);
if (tyyppi == 3) return (auttaja%(num*10000000))/(num*1000000);
if (tyyppi == 4) return (auttaja%(num*1000000))/(num*100000);
if (tyyppi == 5) return (auttaja%(num*100000))/(num*10000);
if (tyyppi == 6) return (auttaja%(num*10000))/(num*1000);
if (tyyppi == 7) return (auttaja%(num*1000))/(num*100);
if (tyyppi == 8) return (auttaja%(num*100))/(num*10);
if (tyyppi == 9) return (auttaja%(num*10))/(num*1);
}
if (kysyttava >= 98888888890 && kysyttava < 1088888888890 ) {
long long auttaja;
int tyyppi;
long long num;
num = 11;
auttaja = (kysyttava - 98888888890);
tyyppi = (auttaja % num);
if (tyyppi == 0) return (auttaja/(num*10000000000) + 1);
if (tyyppi == 1) return (auttaja%(num*10000000000))/(num*1000000000);
if (tyyppi == 2) return (auttaja%(num*1000000000))/(num*100000000);
if (tyyppi == 3) return (auttaja%(num*100000000))/(num*10000000);
if (tyyppi == 4) return (auttaja%(num*10000000))/(num*1000000);
if (tyyppi == 5) return (auttaja%(num*1000000))/(num*100000);
if (tyyppi == 6) return (auttaja%(num*100000))/(num*10000);
if (tyyppi == 7) return (auttaja%(num*10000))/(num*1000);
if (tyyppi == 8) return (auttaja%(num*1000))/(num*100);
if (tyyppi == 9) return (auttaja%(num*100))/(num*10);
if (tyyppi == 10) return (auttaja%(num*10))/(num*1);
}
if (kysyttava >= 1088888888890 && kysyttava < 11888888888890 ) {
long long auttaja;
int tyyppi;
long long num;
num = 12;
auttaja = (kysyttava - 1088888888890);
tyyppi = (auttaja % num);
if (tyyppi == 0) return (auttaja/(num*100000000000) + 1);
if (tyyppi == 1) return (auttaja%(num*100000000000))/(num*10000000000);
if (tyyppi == 2) return (auttaja%(num*10000000000))/(num*1000000000);
if (tyyppi == 3) return (auttaja%(num*1000000000))/(num*100000000);
if (tyyppi == 4) return (auttaja%(num*100000000))/(num*10000000);
if (tyyppi == 5) return (auttaja%(num*10000000))/(num*1000000);
if (tyyppi == 6) return (auttaja%(num*1000000))/(num*100000);
if (tyyppi == 7) return (auttaja%(num*100000))/(num*10000);
if (tyyppi == 8) return (auttaja%(num*10000))/(num*1000);
if (tyyppi == 9) return (auttaja%(num*1000))/(num*100);
if (tyyppi == 10) return (auttaja%(num*100))/(num*10);
if (tyyppi == 11) return (auttaja%(num*10))/(num*1);
}
if (kysyttava >= 11888888888890 && kysyttava < 128888888888890 ) {
long long auttaja;
int tyyppi;
long long num;
num = 13;
auttaja = (kysyttava - 11888888888890);
tyyppi = (auttaja % num);
if (tyyppi == 0) return (auttaja/(num*1000000000000) + 1);
if (tyyppi == 1) return (auttaja%(num*1000000000000))/(num*100000000000);
if (tyyppi == 2) return (auttaja%(num*100000000000))/(num*10000000000);
if (tyyppi == 3) return (auttaja%(num*10000000000))/(num*1000000000);
if (tyyppi == 4) return (auttaja%(num*1000000000))/(num*100000000);
if (tyyppi == 5) return (auttaja%(num*100000000))/(num*10000000);
if (tyyppi == 6) return (auttaja%(num*10000000))/(num*1000000);
if (tyyppi == 7) return (auttaja%(num*1000000))/(num*100000);
if (tyyppi == 8) return (auttaja%(num*100000))/(num*10000);
if (tyyppi == 9) return (auttaja%(num*10000))/(num*1000);
if (tyyppi == 10) return (auttaja%(num*1000))/(num*100);
if (tyyppi == 11) return (auttaja%(num*100))/(num*10);
if (tyyppi == 12) return (auttaja%(num*10))/(num*1);
}
if (kysyttava >= 128888888888890 && kysyttava < 1388888888888890 ) {
long long auttaja;
int tyyppi;
long long num;
num = 14;
auttaja = (kysyttava - 128888888888890);
tyyppi = (auttaja % num);
if (tyyppi == 0) return (auttaja/(num*10000000000000) + 1);
if (tyyppi == 1) return (auttaja%(num*10000000000000))/(num*1000000000000);
if (tyyppi == 2) return (auttaja%(num*1000000000000))/(num*100000000000);
if (tyyppi == 3) return (auttaja%(num*100000000000))/(num*10000000000);
if (tyyppi == 4) return (auttaja%(num*10000000000))/(num*1000000000);
if (tyyppi == 5) return (auttaja%(num*1000000000))/(num*100000000);
if (tyyppi == 6) return (auttaja%(num*100000000))/(num*10000000);
if (tyyppi == 7) return (auttaja%(num*10000000))/(num*1000000);
if (tyyppi == 8) return (auttaja%(num*1000000))/(num*100000);
if (tyyppi == 9) return (auttaja%(num*100000))/(num*10000);
if (tyyppi == 10) return (auttaja%(num*10000))/(num*1000);
if (tyyppi == 11) return (auttaja%(num*1000))/(num*100);
if (tyyppi == 12) return (auttaja%(num*100))/(num*10);
if (tyyppi == 13) return (auttaja%(num*10))/(num*1);
}
if (kysyttava >= 1388888888888890 && kysyttava < 14888888888888890 ) {
long long auttaja;
int tyyppi;
long long num;
num = 15;
auttaja = (kysyttava - 1388888888888890);
tyyppi = (auttaja % num);
if (tyyppi == 0) return (auttaja/(num*100000000000000) + 1);
if (tyyppi == 1) return (auttaja%(num*100000000000000))/(num*10000000000000);
if (tyyppi == 2) return (auttaja%(num*10000000000000))/(num*1000000000000);
if (tyyppi == 3) return (auttaja%(num*1000000000000))/(num*100000000000);
if (tyyppi == 4) return (auttaja%(num*100000000000))/(num*10000000000);
if (tyyppi == 5) return (auttaja%(num*10000000000))/(num*1000000000);
if (tyyppi == 6) return (auttaja%(num*1000000000))/(num*100000000);
if (tyyppi == 7) return (auttaja%(num*100000000))/(num*10000000);
if (tyyppi == 8) return (auttaja%(num*10000000))/(num*1000000);
if (tyyppi == 9) return (auttaja%(num*1000000))/(num*100000);
if (tyyppi == 10) return (auttaja%(num*100000))/(num*10000);
if (tyyppi == 11) return (auttaja%(num*10000))/(num*1000);
if (tyyppi == 12) return (auttaja%(num*1000))/(num*100);
if (tyyppi == 13) return (auttaja%(num*100))/(num*10);
if (tyyppi == 14) return (auttaja%(num*10))/(num*1);
}
if (kysyttava >= 14888888888888890 && kysyttava < 158888888888888890 ) {
long long auttaja;
int tyyppi;
long long num;
num = 16;
auttaja = (kysyttava - 14888888888888890);
tyyppi = (auttaja % num);
if (tyyppi == 0) return (auttaja/(num*1000000000000000) + 1);
if (tyyppi == 1) return (auttaja%(num*1000000000000000))/(num*100000000000000);
if (tyyppi == 2) return (auttaja%(num*100000000000000))/(num*10000000000000);
if (tyyppi == 3) return (auttaja%(num*10000000000000))/(num*1000000000000);
if (tyyppi == 4) return (auttaja%(num*1000000000000))/(num*100000000000);
if (tyyppi == 5) return (auttaja%(num*100000000000))/(num*10000000000);
if (tyyppi == 6) return (auttaja%(num*10000000000))/(num*1000000000);
if (tyyppi == 7) return (auttaja%(num*1000000000))/(num*100000000);
if (tyyppi == 8) return (auttaja%(num*100000000))/(num*10000000);
if (tyyppi == 9) return (auttaja%(num*10000000))/(num*1000000);
if (tyyppi == 10) return (auttaja%(num*1000000))/(num*100000);
if (tyyppi == 11) return (auttaja%(num*100000))/(num*10000);
if (tyyppi == 12) return (auttaja%(num*10000))/(num*1000);
if (tyyppi == 13) return (auttaja%(num*1000))/(num*100);
if (tyyppi == 14) return (auttaja%(num*100))/(num*10);
if (tyyppi == 15) return (auttaja%(num*10))/(num*1);
}
if (kysyttava >= 158888888888888890 ) {
long long auttaja;
int tyyppi;
long long num;
num = 17;
auttaja = (kysyttava - 158888888888888890);
tyyppi = (auttaja % num);
if (tyyppi == 0) return (auttaja/(num*10000000000000000) + 1);
if (tyyppi == 1) return (auttaja%(num*10000000000000000))/(num*1000000000000000);
if (tyyppi == 2) return (auttaja%(num*1000000000000000))/(num*100000000000000);
if (tyyppi == 3) return (auttaja%(num*100000000000000))/(num*10000000000000);
if (tyyppi == 4) return (auttaja%(num*10000000000000))/(num*1000000000000);
if (tyyppi == 5) return (auttaja%(num*1000000000000))/(num*100000000000);
if (tyyppi == 6) return (auttaja%(num*100000000000))/(num*10000000000);
if (tyyppi == 7) return (auttaja%(num*10000000000))/(num*1000000000);
if (tyyppi == 8) return (auttaja%(num*1000000000))/(num*100000000);
if (tyyppi == 9) return (auttaja%(num*100000000))/(num*10000000);
if (tyyppi == 10) return (auttaja%(num*10000000))/(num*1000000);
if (tyyppi == 11) return (auttaja%(num*1000000))/(num*100000);
if (tyyppi == 12) return (auttaja%(num*100000))/(num*10000);
if (tyyppi == 13) return (auttaja%(num*10000))/(num*1000);
if (tyyppi == 14) return (auttaja%(num*1000))/(num*100);
if (tyyppi == 15) return (auttaja%(num*100))/(num*10);
if (tyyppi == 16) return (auttaja%(num*10))/(num*1);
}
else return 0;
}
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
long long luvut[1010] = {0};
long long x;
for (int i = 1; cin >> x && i < 1008; ++i) {
luvut[i -1 ] = x ;
}
for ( int i = 1; i < 1005 ; i = i + 1 ) {
if (luvut[i] == 0) continue;
cout << vastaus(luvut[i]) << "\n";
}
}
Test details
Test 1
Group: 1
Verdict: ACCEPTED
| input |
|---|
| 1000 582 214 723 273 ... |
| correct output |
|---|
| 0 1 7 7 6 ... |
| user output |
|---|
| 0 1 7 7 6 ... Truncated |
Test 2
Group: 2
Verdict: ACCEPTED
| input |
|---|
| 1000 615664 916441 627600 279508 ... |
| correct output |
|---|
| 1 2 3 2 2 ... |
| user output |
|---|
| 1 2 3 2 2 ... Truncated |
Test 3
Group: 3
Verdict: ACCEPTED
| input |
|---|
| 1000 672274832941907421 260504693279721732 646999966092970935 100853063389774434 ... |
| correct output |
|---|
| 7 2 2 0 9 ... |
| user output |
|---|
| 7 2 2 0 9 ... Truncated |
