Cod sursa(job #809163)

Utilizator a_h1926Heidelbacher Andrei a_h1926 Data 7 noiembrie 2012 22:45:00
Problema Lacate Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <cstdio>

using namespace std;

const int MaxN = 260;

int N, Sol[MaxN][MaxN];

inline void Push(int i, int x) {
    Sol[i][++Sol[i][0]] = x;
}

void BuildSol() {
    for (int i = 1, s = 1; i <= N; ++i)
        for (int j = i+1; j <= N; ++j, ++s)
            Push(i, s), Push(j, s);
}

void Read() {
    freopen("lacate.in", "r", stdin);
    scanf("%d", &N);
}

void Print() {
    freopen("lacate.out", "w", stdout);
    printf("%d %d\n", N*(N-1)/2, N-1);
    for (int i = 1; i <= N; ++i, printf("\n"))
        for (int j = 1; j < N; ++j)
            printf("%d ", Sol[i][j]);
}

int main() {
    Read();
    BuildSol();
    Print();
    return 0;
}