Programozó versenyek

DEIK Regionális Programozó Csapatverseny, egyetemi/főiskolai kategória, 2013. december 1.

2013. december 1. 10:30 – 2013. december 1. 15:30

Rendezz, rendezz és rendezz!

Ebben a feladatban egy egyszerű rendezést kell megvalósítanod. Adva lesz N szám és egy pozitív egész M. Be kell rendezned az N számot a modulo M értékük (azaz az M-mel való egész osztás után kapott maradékuk) szerinti növekvő sorrendbe. Ha egy páratlan és egy páros szám modulo M értéke megegyezik, akkor a páratlan szám megelőzi a páros számot. Ha két páratlan szám modulo M értéke megegyezik, akkor a nagyobb értékű páratlan szám megelőzi a kisebbet, végül ha két páros szám modulo M értéke megegyezik, akkor a kisebb értékű páros szám megelőzi a nagyobbat. A negatív számok maradékának számításakor kövessük a C programozási nyelv szabályát: egy negatív számnak nem lehet nullánál nagyobb maradéka (pozitív osztó esetén). Például –100 MOD 3 = –1, –100 MOD 4 = 0 stb.

A bemenet specifikációja

A bemenet legfeljebb 20 tesztesetet tartalmaz. Minden teszteset két egész számmal, N-nel (0 < N ≤ 10000) és M-mel (0 < M ≤ 10000) kezdődik. N adja meg, hogy hány szám szerepel ebben a tesztesetben. A következő N sor mindegyike egyetlen számot tartalmaz, amely biztosan elfér egy 32 bites előjeles egész számban. A bemenetet egy olyan sor zárja, amely két nullából áll.

A kimenet specifikációja

Minden tesztesetre egy N + 1 sorból álló blokkot kell a kimenetre írni. A blokkok első sorának N és M értékét kell tartalmaznia. A következő N sorban a bemeneten megadott N számnak kell szerepelnie, a fenti szabályoknak megfelelően rendezett sorrendben. A bemenet végén szereplő két nullát a kimenet végére is ki kell írni.

Példa bemenet

  1. 15 3
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7. 6
  8. 7
  9. 8
  10. 9
  11. 10
  12. 11
  13. 12
  14. 13
  15. 14
  16. 15
  17. 0 0
letöltés szöveges állományként

A példa bemenethez tartozó kimenet

  1. 15 3
  2. 15
  3. 9
  4. 3
  5. 6
  6. 12
  7. 13
  8. 7
  9. 1
  10. 4
  11. 10
  12. 11
  13. 5
  14. 2
  15. 8
  16. 14
  17. 0 0
letöltés szöveges állományként
Debreceni Egyetem, Informatikai Kar, v. 2019.03.01.