Cod sursa(job #1893452)

Utilizator iulianrotaruRotaru Gheorghe-Iulian iulianrotaru Data 25 februarie 2017 18:13:14
Problema NextSeq Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <fstream>
using namespace std;
ifstream f("nextseq.in");
ofstream g("nextseq.out");
int n,nr=-1,i,q,P[10002],a[10002],b[10002];
void add(int V[])
{
    int t=1;
    ++nr;
    for(int i=1;t&&i<=V[0];++i)
    {
        V[i]+=t;
        if(V[i]>n) V[i]-=n,t=1;
        else t=0;
    }
    if(t) V[++V[0]]=t;
}
bool cmp(int A[],int B[])
{
    if(A[0]!=B[0]) return 1;
    for(int i=1;i<=A[0];++i)
        if(A[i]!=B[i]) return 1;
    return 0;
}
int main()
{
    f>>n>>a[0]>>b[0];
    for(i=1;i<=n;++i)
    {
        f>>q;
        P[q]=1;
    }
    for(i=1;i<=10000;++i) P[i]+=P[i-1];
    for(i=a[0];i>0;--i) f>>q,a[i]=P[q];
    for(i=b[0];i>0;--i) f>>q,b[i]=P[q];
    while(cmp(a,b)) add(a);
    g<<nr;
    return 0;
}