Programozó versenyek

Programozási technológiák, 2015. március 18., Sze16 ZH

2015. március 18. 16:25 – 2015. március 18. 17:58

Mátrix

Készítsen programot, amely a billentyűzetről egy kvadratikus mátrix sorainak számát, valamint a mátrix elemeit olvassa be. A program határozza meg és írja a szabványos kimenetre azt az értéket, amit az alábbi tevékenységsorozat végrehajtásával kapunk:

  • előbb a második bemenetsor elemeit spirálvonalban az alábbi (bal oldali) ábrán (5x5-ös mátrix példáján) látható módon elhelyezzük a mátrixban,
  • majd az így kapott mátrix sorait rendezzük sorösszegük szerint csökkenően,
  • végül pedig jelenítsük meg a kimeneten az utolsó előtti sorában szereplő páratlan értékek összegét! Ha nem létezik utolsó előtti sor, akkor az „N/A” szöveg kerüljön a kimenetre!

A középső ábra azt mutatja be, hogy miképp kell az [1..25] zárt intervallum értékeit elhelyezni egy 5x5-ös mátrixban. A jobb szélső ábrán az első oszlop értékei alapján már átrendezett mátrix látható, az utolsó előtti sorának páros értékei vannak bekarikázva.

A bemenet első sora egy 1 ≤ k ≤ 100 pozitív egész érték, amely a tesztesetek számát jelenti. Minden teszteset pontosan két sorból áll: az első sorban egyetlen, szintén 1 és 100 közötti n egész (a kvadratikus mátrix mérete), míg a másodikban pontosan n2 egész (a kvadratikus mátrix elemei) helyezkedik el. A mátrix elemeit egymástól szóköz karakterek választják el. A kimenet tesztesetenként egy sorban egyetlen egész értéket, a fentiek értelmében kitöltött és átrendezett mátrix főátlójában lévő elemeinek szorzatát tartalmazza.

Példa bemenet

  1. 3
  2. 5
  3. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
  4. 3
  5. 69 94 81 41 9 98 39 4 0
  6. 2
  7. 1 0 0 1
letöltés szöveges állományként

Példa kimenet

  1. 33
  2. 48
  3. 1
letöltés szöveges állományként
Debreceni Egyetem, Informatikai Kar, v. 2019.03.01.