Pagini recente »
Istoria paginii runda/2017-12-07-clasa-5-tema-18/clasament
|
Istoria paginii runda/2018-06-07-clasa-5-tema-43/clasament
|
Istoria paginii runda/2024-05-24-clasa-5-tema-43
|
Istoria paginii runda/2021-10-27-clasa-5-tema-10
|
Cod sursă (job #600881)
Cod sursă (job
#600881)
#include <fstream>
#include <map>
using namespace std;
ifstream in("ruleta1.in");
ofstream out("ruleta1.out");
int v[10010];
map <int,bool>ap;
int main()
{
int n;
in>>n;
for(int i=1;i<=n;i++)
in>>v[i];
v[n+1]=v[1];
bool ok=1;
int r=0;
int t=0;
for(int i=1;i<=n;i++)
ap[i]=1;
while(ok)
{
ok=0;
r=0;
for(auto i:ap)
{
if(v[i.first]&&v[i.first]<=v[i.first+1])
{
ap[i.first+1]=1;
ok=1;
v[i.first+1]-=v[i.first];
}
if(v[i.first])
r++;
else if(v[i.first]&&v[i.first]>v[i.first+1])
v[i.first]=0;
}
v[1]=v[n+1];
if(ok==1)
t++;
}
out<<t+1<<" "<<r;
return 0;
}