puncte

Time limit: 0.02s Memory limit: 4MB Input: puncte.in Output: puncte.out

Cerință

Se dau nn puncte în plan P1,P2,,PnP_1, P_2, \dots, P_n şi kk un număr natural. Se cere să se verifice dacă se pot construi kk segmente cu ambele capete din mulţimea {P1,P2,,Pn}\{P_1, P_2, \dots, P_n\}, astfel încât să nu se formeze niciun triunghi cu vârfurile în aceste puncte.

Date de intrare

Fişierul de intrare puncte.in conţine pe prima linie numărul nn, iar pe a doua linie numărul kk.

Date de ieșire

Ieşirea se va face în fişierul puncte.out ce va conţine:

  • o linie pe care se află caracterul 0, dacă nu există soluţie, SAU
  • k+1k+1 linii, pe prima linie se află caracterul 1, iar pe umătoarele kk linii se află câte două numere separate printr-un spaţiu (de forma i ji\ j cu semnificaţia că PiPjP_i P_j reprezintă un segment), în cazul când există soluţie.

Restricții și precizări

  • 1n3001 \le n \le 300
  • 1k3001 \le k \le 300
  • Dacă există mai multe soluţii, se cere una dintre ele.

Exemplul 1

puncte.in

4
5

puncte.out

0

Exemplul 2

puncte.in

4
2

puncte.out

1
1 4
1 2

Log in or sign up to be able to send submissions!