Cod sursa(job #2872911)

Utilizator _andrei4567Stan Andrei _andrei4567 Data 18 martie 2022 09:40:52
Problema Principiul includerii si excluderii Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.61 kb
#include <fstream>

using namespace std;

ifstream cin ("oposumi.in");
ofstream cout ("oposumi.out");

const int N = 1e3 + 2;
int a[N][N];

int cer, n, k;

int main()
{
    cin >> cer >> n >> k;
    if (cer == 2)
    {
        int o = 1;
        bool ok = true;
        for (int i = 1; i <= n ; ++i)
        {
            for (int j = i; j <= n; ++j)
            {
                a[j][i] = o++;
                if (o == k)
                {
                    ok = false;
                    break;
                }

            }
            if (ok == false)
                break;
        }
        ok = true;
        for (int i = 1; i <= n ; ++i)
        {
            for (int j = 1; j <= i; ++j)
            {
                if (!a[i][j])
                {
                    a[i][j] = k;
                    ok = false;
                    break;
                }
            }
            if (ok == false)
                break;
        }
        o = k + 1;
        for (int i = 1; i <= n ; ++i)
        {
            for (int j = i; j <= n; ++j)
            {
                if (!a[j][i])
                    a[j][i] = o++;

            }
        }
        for (int i = 1; i <= n; ++i, cout << '\n')
            for (int j = 1; j <= i; ++j)
                cout << a[i][j] << ' ';

    }
    else
    {
        int nivel = 1;
        for (int i = 1; i <= n ; ++i)
            for (int j = i; j <= n; ++j)
            {
                cout << nivel<< ' ';
                if (i == j)
                    ++nivel;
            }
    }


    return 0;
}