Rezolvare PBinfo #3721

Decorative Icon Problema: Cochilie / 3721

Decorative IconAutor: Deivid

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

  • Cochilia este formată inițial dintr-un pătrat de latură 1 cu valoarea 1.
  • Pentru fiecare pas I cu valorile 2, 3, …, N 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 I, iar lungimea laturii pătratului nou corespunde cu latura cochiliei la care se lipește.

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

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

Cerința

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

  • Ce dimensiuni are cochilia de ordin N?
  • Ce elemente se află pe linia P a cochiliei de ordin N?
Date de intrare

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

  • Dacă valoarea lui C este 1, atunci pe linia următoare se va găsi valoarea lui N.
  • Dacă valoarea lui C este 2, atunci pe linia următoare se vor găsi valorile lui N și P 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 C astfel:

  • Dacă valoarea lui C este 1, atunci se vor afișa NRLIN și NRCOL separate printr-un spațiu, reprezentând numărul de linii, respectiv numărul de coloane ale cochiliei de ordin N.
  • Dacă valoarea lui C este 2, atunci se vor afișa elementele de pe linia P ale cochiliei de ordin N, separate prin câte un spațiu.
Restricții și precizări
  • 1 < N < 30
  • Linia P întotdeauna se referă la o linie validă a cochiliei.
  • Pentru teste în valoare de 8 puncte avem C = 1.
  • Pentru alte teste în valoare de 36 de puncte avem C = 2 și N ≤ 17.
  • Pentru alte teste în valoare de 20 de puncte avem C = 2 și P se referă la prima sau ultima linie a cochiliei.
  • Pentru alte teste în valoare de 36 de puncte avem C = 2 fără alte restricții.
Exemplul 1:

cochilie.in

1 5

cochilie.out

8 5

Explicație

Cochilia de ordin 5 are 8 linii și 5 coloane.

Exemplul 2:

cochilie.in

2
5 6

cochilie.out

4 4 4 1 2

Explicație

Linia a 6-a a cochiliei de ordin 5 este formată din numerele 4 4 4 1 2.

Decorative Icon Explică rezolvarea folosind Inteligența Artificială

Folosește modelul nostru de AI special antrenament pentru a rezolva problemele de pe PBinfo! În baza creditelor AI primești explicații pentru probleme, pe care le alegi și le rulezi exact atunci când dorești, la un singur click distanță! Află mai multe informații:

👉 Achiziționează credite AI
Andrei Frîntu
Andrei Frîntu

Fondatorul platformei - mentor Academia

LinkedIn Instagram GitHub
© Copyright 2026 - CodulLuiAndrei.ro - Toate drepturile sunt rezervate