O gospodina
trebuie sa prajeasca n placinte
(pe care le-a numerotate de la 1
la n), având la dispozitie
o tigaie în care încap cel mult k
placinte. Fiecare placinta trebuie prajita pe ambele fete, iar prajirea unei
placinte pe o fata necesita exact un minut.
Cerinta
Scrieti un program care sa determine modul în care va proceda gospodina
pentru a praji toate placintele în timpul cel mai scurt.
Date de
intrare
Pe prima linie a fisierului de intrare fry.in
se afla numerele naturale n si
k separate prin spatiu.
Date de
iesire
Pe prima linie a fisierului de iesire fry.out
se scrie timpul minim, tmin de
prajire a placintelor. Urmeaza in fisier tmin
linii, cate o linie pentru fiecare minut. Pe linia i+1
se vor scrie cel mult k+1 numere
naturale separate prin câte un spatiu; primul numar de pe linie reprezinta
minutul (i) iar urmatoarele cel
mult k numere reprezinta indicii
placintelor prajite în minutul i.
Ordinea in care sunt scrisi indicii placintelor nu conteaza.
Restrictii
0 < n, k < 1000
Exemple
fry.in
fry.out
Explicatii
(cum se prajesc placintele)
7
4
4
1 1 2 3 4
2 1 2 3 4
3 5 6 7
4 5 6 7
Cele
7 placinte se pot praji în 4 minute
În minutul 1 se prajesc pe fata 1 placintele 1, 2, 3 si 4
În minutul 2 se prajesc pe fata 2 placintele 1, 2, 3 si 4
În minutul 3 se prajesc pe fata 1 placintele 5, 6 si 7
În minutul 4 se prajesc pe fata 2 placintele 5, 6 si 7
fry.in
fry.out
Explicatii
(cum se prajesc placintele)
3
2
3
1 1 2
2 3 1
3 2 3
Cele
3 placinte se pot praji în 3 minute
În minutul 1 se prajesc pe fata 1 placintele 1 si 2
În minutul 2 se prajeste pe fata 1 placinta 3 si pe fata 2 placinta
1
În minutul 3 se prajesc pe fata 2 placintele 2 si 3
fry.in
fry.out
Explicatii
(cum se prajesc placintele)
2
1
4
1 1
2 1
3 2
4 2
Cele
2 placinte se pot praji în 4 minute
În minutul 1 se prajeste pe fata 1 placinta 1
În minutul 2 se prajeste pe fata 2 placinta 1
În minutul 3 se prajeste pe fata 1 placinta 2
În minutul 4 se prajeste pe fata 2 placinta 2