Cod sursa(job #993840)

Utilizator AlexandruValeanuAlexandru Valeanu AlexandruValeanu Data 4 septembrie 2013 15:59:32
Problema Tije Scor 85
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.46 kb
#include <iostream>
#include <fstream>
#include <cstring>
#include <algorithm>

using namespace std;

int N;

inline string number( int x )
{
    string a;

    while( x )
    {
        a.push_back( char( 48 + x % 10 ) );
        x /= 10;
    }

    reverse( a.begin(), a.end() );

    return a;
}

string FileOut;

int main()
{
    ifstream f("tije.in");
    ofstream g("tije.out");

    f >> N;

    for ( int cate = N - 1; cate >= 1; cate-- )
    {
        for ( int j = 1; j <= cate; ++j )
        {
            FileOut.push_back( '1' );
            FileOut.push_back( ' ' );
            FileOut += number( N + 1 );
            FileOut.push_back( '\n' );

            /// g << 1 << " " << N + 1 << "\n";
        }

        for ( int i = 2; i <= N; ++i )
                for ( int j = 1; j <= cate; ++j )
                {
                    FileOut += number( i );
                    FileOut.push_back( ' ' );
                    FileOut += number( i - 1 );
                    FileOut.push_back( '\n' );

                    /// g << i << " " << i - 1 << "\n";
                }

        for ( int j = 1; j <= cate; ++j )
        {
            FileOut += number( N + 1 );
            FileOut.push_back( ' ' );
            FileOut += number( N );
            FileOut.push_back( '\n' );

            /// g << N + 1 << " " << N << "\n";
        }
    }

    g << FileOut;

    f.close();
    g.close();

    return 0;
}