Pagini recente » Cod sursa (job #2850152) | Cod sursa (job #2830833) | Cod sursa (job #2143242) | Cod sursa (job #2787530) | Cod sursa (job #2872940)
#include <fstream>
using namespace std;
ifstream f("oo.in");
ofstream g("oo.out");
int v[100005];
int t[100005];
bool ok[100005];
int main()
{
int n,i,minn=1000,nr=0;
f>>n;
for(i=1;i<=n;i++)
{
f>>v[i];
}
v[0]=v[n]; v[n+1]=v[1]; v[n+2]=v[2];
for(i=1;i<=n;i++)
{
t[i]=v[i-1]+v[i+2];
if(t[i]<minn)
{
minn=t[i];
}
//g<<t[i]<<" ";
}
while(minn<1000)
{
for(i=1;i<=n;i++)
{
if(t[i]==minn && ok[i]==0 && ok[i+1]==0)
{
nr=nr+v[i]+v[i+1];
//g<<i<<" "<<nr<<'\n';
ok[i-1]=1; ok[i]=1;
ok[i+1]=1; ok[i+2]=1;
if(i==1)
{
ok[n]=1;
}
if(i==n-1)
{
ok[1]=1;
}
if(i==n)
{
ok[1]=1; ok[2]=1;
}
}
}
minn=1000;
ok[0]=ok[n]; ok[n+1]=ok[1]; ok[n+2]=ok[2];
for(i=1;i<=n;i++)
{
if(ok[i]==0 && ok[i+1]==0)
{
t[i]=v[i-1]+v[i+2];
}
else
{
t[i]=1000;
}
if(t[i]<minn)
{
minn=t[i];
}
}
}
g<<nr;
return 0;
}