Pagini recente » Cod sursa (job #1064956) | Cod sursa (job #523707) | Cod sursa (job #1167391) | Cod sursa (job #2705598) | Cod sursa (job #539022)
Cod sursa(job #539022)
#include<iostream>
#include<fstream>
using namespace std;
int a[10000],b[10000],s[10000];
int main ()
{ int n,i,k=1,max,max1,min,j;
ifstream fin("subsir2.in");
ofstream fout("subsir2.out");
fin>>n;
for(i=1;i<=n;i++)
{
fin>>a[i];
}
max1=0;
min=100000000;
for(i=1;i<=n;i++)
{
k=0;
s[i]=a[i];
b[i]=0;
max=0;
for(j=1;j<=i-1;j++)
{
if((a[i]>s[j])&&(j>max))
{
b[i]++;
s[i]=s[i]+s[j];
max=j;
}
}
if(b[i]>max1) max1=b[i];
}
fout<<max1<<endl;
for(i=1;i<=n;i++)
{
b[i]++;
if((s[i]<min)&&(b[i]==max1)) min=s[i];
}
for(i=1;i<=n;i++)
{
if((b[i]==max1)&&(s[i]==min))
{
max=0;
for(j=1;j<=i;j++)
{
if((s[j]<a[i])&&(j>max))
{
fout<<j<<" ";
max=j;
}
}
fout<<i;
}
}
/*
max=a[1];
max1=1;
b[max1]=a[1];
while(max!=10000)
{
max++;
for(i=2;i<=n;i++)
{
if((a[i]==max)&&(i>max1))
{
max1=i;
k++;
b[k]=a[i];
}
if(i==n) break;
}
}
fout<<k<<endl;
for(i=1;i<=k;i++)
{
fout<<b[i]<<" ";
}
*/
fin.close();
fout.close();
return 0;
}