Pagini recente » Cod sursa (job #1989210) | Cod sursa (job #2953495) | Cod sursa (job #705683) | Cod sursa (job #2582934) | Cod sursa (job #1384606)
#include<stdio.h>
int v[1001],lung[1001],nr[1001];
int main(){
int n,i,j,lmax,pr,maxim,cate,numar;
freopen("subsiruri.in","r",stdin);
freopen("subsiruri.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++)
scanf("%d",&v[i]);
lung[1]=1;nr[1]=1;
for(i=2;i<=n;i++){
lmax=0;numar=1;
for(j=1;j<i;j++)
if(v[j]<v[i]){
if(lung[j]==lmax)
numar=(numar+nr[j])%9901;
if(lung[j]>lmax){
lmax=lung[j];
numar=nr[j]%9901;
}
}
lung[i]=1+lmax;
nr[i]=numar;
}
maxim=-1;
for(i=1;i<=n;i++)
if(lung[i]>maxim)
maxim=lung[i];
printf("%d\n",maxim);
for(i=1;i<=n;i++)
if(lung[i]==maxim)
cate+=nr[i];
printf("%d\n",cate);
return 0;
}