Pagini recente »
Atașamentele paginii 2021-10-08-clasa-6-concurs02-cursuri-performanta
|
Istoria paginii runda/simulare_oni_2021
|
Monitorul de evaluare
|
Statistici Iancu Stefan (StefanIancu)
|
Cod sursă (job #600897)
Cod sursă (job
#600897)
#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(int i=1;i<=n;i++)
if(ap.find(i)!=ap.end())
{
if(v[i]&&v[i]<=v[i+1])
{
ap[i+1]=1;
ok=1;
v[i+1]-=v[i];
if(v[i+1]<=v[i+2]&&v[i+1])
ap[i+1]=1;
}
if(v[i]==0||v[i]>v[i+1])
ap.erase(i);
}
v[1]=v[n+1];
if(ok==1)
t++;
}
r=0;
for(int i=1;i<=n;i++)
if(v[i])
r++;
out<<t+1<<" "<<r;
return 0;
}