Pagini recente » Cod sursa (job #2510356) | Cod sursa (job #2987379) | Cod sursa (job #1212675) | Cod sursa (job #2691483) | Cod sursa (job #1621759)
#include <fstream>
using namespace std;
ifstream fin("scmax.in");
ofstream fout("scmax.out");
int n,i,a[100001],l[100001],maxx,start,refer;
void citeste()
{fin>>n;
for(i=1;i<=n;i++)
fin>>a[i];
fin.close();
}
void cautare()
{int j=1;
while(j<=n)
{refer=a[j];
for(i=j;i<=n;i++){
if(refer<a[i])
{refer=a[i];l[j]++;}}
j++;
}
}
void maxim()
{maxx=-2;
for(i=1;i<=n;i++)
{
if(l[i]>maxx){maxx=l[i];start=i;}
}
}
void scriere()
{refer=a[start];
fout<<maxx<<"\n"<<refer<<" ";
for(i=start+1;maxx>0;i++)
{
if(a[i]>refer){fout<<a[i]<<" ";maxx--;refer=a[i];}
}
}
int main()
{
citeste();
cautare();
maxim();
scriere();
return 0;
}