Cod sursă (job #700121)

Utilizator avatar Bla1234 Nerdvana 7 Sercaianu Mihai Bla1234 IP ascuns
Problemă Ruleta1 ( clasa a 6-a ) Compilator cpp-32 | 0,95 kb
Rundă Arhiva de probleme Status evaluat
Dată 2 mar. 2023 15:49:35 Scor 80
#include <fstream>
 
using namespace std;
int v[10001], u[10001];
int n, k;
int check, ok;
long long r, t;
 
int main(){
    ifstream fin  ("ruleta1.in");
    ofstream fout ("ruleta1.out");

    fin>>n;
    for(int i=0; i < n; i++){
        fin>>v[i];
        u[i]=(i+1)%n;
    }
    k=n;
    int i=0;
    while(check == 0){
        if(u[i] == (i+1)%n){ 
            if(v[u[i]] >= v[i] && v[i] != 0){ 
                v[u[i]]-=v[i];
                ok = 1;
                if(v[u[i]] == 0){ 
                    k = i;
                }else if(v[i] <= v[u[i]]){ 
                    u[k]=i;
                    k=n;
                }
            }
        }
        if(u[i] < i){ 
            r++;
            if(ok == 0) 
                check=1;
            else
                ok=0; 
        }
        i=u[i]; 
    }
 
    for(int i=0; i<n; i++)
        if(v[i] != 0)
            t++;
 
    fout<<r<<" "<<t;
    return 0;
}