Pagini recente » Rating Scrofan Raul Alexandru (alexscrofan) | Cod sursa (job #93373) | Cod sursa (job #2716345) | Cod sursa (job #2567966) | Cod sursa (job #218813)
Cod sursa(job #218813)
#include<stdio.h>
#define N 10005
int v[N],a[N],b[N],y[N],A[N],s1[N],s2[N];
int m,n,p,max;
void citire(){
int i,k=0;
scanf("%d%d%d",&n,&p,&m);
for(i=1;i<=n;++i){
scanf("%d",&y[i]);
++v[y[i]];
if(y[i]>max)
max=y[i];
}
for(i=0;i<=max;++i)
if(v[i]){
A[i]=++k;
}
s1[0]=p;
s2[0]=m;
for(i=p;i>=1;--i){
scanf("%d",&a[i]);
s1[i]=A[a[i]];
}
for(i=m;i>=1;--i){
scanf("%d",&b[i]);
s2[i]=A[b[i]];
}
}
void scadere(){
int i,t=0;
for(i=1;i<=s2[0];++i)
{
if(s2[i]<s1[i]+t)
{
s2[i]=s2[i]+n-s1[i]-t;
t=1;
}
else
{
s2[i]-=s1[i]+t;
t=0;
}
}
//s2[i]+=(t=(s2[i]-=s1[i]+t)<0)*n;
for(;s2[0]>1&&!s2[s2[0]];--s2[0]);
}
int main(){
int s=0;
freopen("nextseq.in","r",stdin);
freopen("nextseq.out","w",stdout);
citire();
scadere();
int i,r=1;
for(i=1;i<=s2[0];++i){
s+=s2[i]*r;
r*=n;
}
printf("%d\n",s ? s-1 : 0);
fclose(stdin);
fclose(stdout);
return 0;
}