Pagini recente »
Monitorul de evaluare
|
Istoria paginii runda/2021-04-04-pregatire-osepi1/clasament
|
Monitorul de evaluare
|
Clasament vaslui_cls9_23.11
|
Cod sursă (job #814935)
Cod sursă (job
#814935)
#include <stdio.h>
#include <stdlib.h>
int v[10000], poz[10000];
int main(){
int n, i, ok, z, poz0, curs;
long long contor;
FILE *fin, *fout;
fin=fopen("ruleta1.in", "r");
fout=fopen("ruleta1.out", "w");
fscanf(fin, "%d", &n);
for(i=0; i<n; i++){
fscanf(fin, "%d", &v[i]);
poz[i]=i+1;
}
poz[n-1]=0;
i=0;
curs=1;
ok=0;
contor=0;
poz0=n;
while(curs==1){
if(poz[i]==(i+1)%n)
if(v[i]<=v[(i+1)%n] && v[i]!=0){
v[(i+1)%n]-=v[i];
ok=1;
if(v[(i+1)%n]+z==0){
poz0=i;
z=1;
}
else if(v[i]<=v[(i+1)%n]){
poz[poz0]=i;
z=0;
poz0=n;
}
}
if(poz[i]<i){
contor++;
if(ok==0)
curs=0;
else
ok=0;
}
i=poz[i];
}
fprintf(fout, "%lld ", contor);
contor=0;
for(i=0; i<n; i++)
if(v[i]>0)
contor++;
fprintf(fout, "%lld", contor);
fclose(fin);
fclose(fout);
return 0;
}