Cod sursa(job #1687974)

Utilizator NicolaalexandraNicola Alexandra Mihaela Nicolaalexandra Data 13 aprilie 2016 10:20:48
Problema Interclasari Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.22 kb
#include <fstream>

using namespace std;

int k,i,j,n,t,a[20000001],b[20000001],c[20000001],k1,k2,k3;

ifstream fin ("interclasari.in");

ofstream fout ("interclasari.out");

int main (){

    fin>>k3;
    for (t=1;t<=k3;t++){
        fin>>n;
        if (t == 1){
            for (i=1;i<=n;i++)
                fin>>a[i];
            k1 = n;
        }
        if (t >= 2){
            for (i=1;i<=n;i++)
                fin>>b[i];
            k2 = n;
        }

        // la final copiem b in a si c in b;
        if (t > 1){
            i = 1;
            j = 1;
            k = 0;
            while (i <= k1 && j <= k2){
                if (a[i] < b[j]){
                    c[++k] = a[i];
                    i++;
                }
                else{
                    c[++k] = b[j];
                    j++;
                }
            }
            for (;i<=k1;i++)
                c[++k] = a[i];
            for (;j<=k2;j++)
                c[++k] = b[j];

            // copiem;

            for (i=1;i<=k;i++)
                a[i] = c[i];
            k1 = k;

        }


    }
    fout<<k<<"\n";
    for (i=1;i<=k;i++)
        fout<<c[i]<<" ";




    return 0;
}