# TOPIC

PROBLEM 2016 - URI Fórum 1.0 #### URI Online Judge asked 4 years ago

URI Online Judge Fórum 1.0

This topic was solved and cannot recieve new replies.

• #### youtube.com/FelipeMota0 replied 4 years ago

O seu código falha nesse caso de teste

``````5 1
1000 100 1 1 1 1``````

ele retorna 9900 quando deveria retornar 0. Pensa melhor na lógica do problema que você vai ver que tem como resolver de maneira muito mais simples.

• #### Domitila Crispim Pietropaolo replied 4 years ago

``````#include <bits/stdc++.h>
int main (){
int a, s, d, f, g, lim, sum, tm=0, gn=0;
scanf ("%d %d", &a, &s);
while (s--){
sum=0;

scanf ("%d", &lim);
for (int iu=0; iu<a; iu++){
scanf ("%d", &f);
sum=sum+f;
if (iu==0) g=f;
}
if (sum<lim){
tm=tm+g;
sum=sum-g;
while (1){
g=g*10;
if (g>10001) {
g=g/10;
gn=gn+g;
break;
}
if (sum+g<=lim) {

gn=gn+g;
break;
}

}
}
else if (sum==lim) tm=tm+g;
else {
sum=sum-g;
while (1){
g=g/10;
if (g<1) break;
if (sum+g<=lim){
gn=gn+g;
break;
}
}
}
}
printf ("%d\n", gn-tm);
}``````

WA 90%