cochilie

Time limit: 0.1s Memory limit: 256MB Input: cochilie.in Output: cochilie.out

O matrice se numește cochilie de ordin NN, sau mai simplu cochilie, dacă a fost construită în funcție de un număr natural NN nenul după următoarea regulă:

  • Cochilia este formată inițial dintr-un pătrat de latură 11 cu valoarea 11.
  • Pentru fiecare pas II cu valorile 22, 33, ..., NN la cochilia deja existentă, se va alătura pe rând la DREAPTA, JOS, STÂNGA, SUS, în mod repetat în această ordine, câte un pătrat în care toate elementele au valoarea II, iar lungimea laturii pătratului nou corespunde cu latura cochiliei la care se lipește.


O cochilie de ordin 55 se formează în 55 pași astfel:

Liniile și coloanele sunt numerotate de sus în jos și de la stânga la dreapta începând cu valoarea 11.

Cerință

Cunoscând valorile numerelor naturale NN și PP, va trebui să răspundeți la următoarele întrebări:

  1. Ce dimensiuni are cochilia de ordin NN?
  2. Ce elemente se află pe linia PP a cochiliei de ordin NN?

Date de intrare

Pe prima linie din fișierul de intrare cochilie.in se va găsi valoarea CC, care poate să aibă una dintre valorile 11 sau 22.

Dacă valoarea lui CC este 11, atunci pe linia următoare se va găsi valoarea lui NN.
Dacă valoarea lui CC este 22, atunci pe linia următoare se vor găsi valorile lui NN și PP separate printr-un spațiu.

Date de ieșire

Datele de ieșire se vor afișa pe prima linie a fișierului de ieșire cochilie.out în funcție de valoarea lui CC astfel:

  1. Dacă valoarea lui CC este 11, atunci se vor afișa NRLINNRLIN și NRCOLNRCOL separate printr-un spațiu, reprezentând numărul de linii, respectiv numărul de coloane ale cochiliei de ordin NN.
  2. Dacă valoarea lui CC este 22, atunci se vor afișa elementele de pe linia PP ale cochiliei de ordin NN, separate prin câte un spațiu.

Restricții și precizări

  • 1<N<301 \lt N \lt 30
  • Linia PP întotdeauna se referă la o linie validă a cochiliei.
  • Pentru teste în valoare de 8 puncte avem C=1C = 1.
  • Pentru alte teste în valoare de 36 de puncte avem C=2C = 2 și N17N \leq 17.
  • Pentru alte teste în valoare de 20 de puncte avem C=2C = 2 și PP se referă la prima sau ultima linie a cochiliei.
  • Pentru alte teste în valoare de 36 de puncte avem C=2C = 2 fără alte restricții.

Exemplu 1

cochilie.in

1
5

cochilie.out

8 5

Explicație

Cochilia de ordin 55 are 88 linii și 55 coloane.

Exemplu 2

cochilie.in

2
5 6

cochilie.out

4 4 4 1 2

Explicație

Linia a 66-a a cochiliei de ordin 55 este formată din numerele 4 4 4 1 24\ 4\ 4\ 1\ 2.

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