Atenţie! Aceasta este o versiune veche a paginii, scrisă la 2009-07-21 09:44:20.
Revizia anterioară   Revizia următoare  

 

Fişierul intrare/ieşire:horse.in, horse.outSursăLot Juniori 2009 - Baraj 2
AutorZoltan SzaboAdăugată deGavrilaVladGavrila Vlad GavrilaVlad
Timp execuţie pe test0.05 secLimită de memorie6144 kbytes
Scorul tăuN/ADificultateN/A

Vezi solutiile trimise | Statistici

Horse

Se consideră o tablă de şah cu n linii şi n coloane, şi n = 4k + 1. Liniile acestei table sunt numerotate de sus în jos începând cu linia 1, iar coloanele sunt numerotate de la stânga la dreapta începând cu 1. În fiecare dintre câmpurile acestei table se scrie câte un număr natural din mulţimea {1, 2, …, n2} după următoarele reguli:
a) se porneşte din colţul aflat în poziţia stânga sus al tablei şi se avansează utilizând săritura calului
b) se merge orizontal către dreapta şi în continuare, pe chenarul format din primele două linii, primele două coloane, ultimele două linii şi ultimele două coloane, în sensul acelor de ceasornic;
c) se efectuează mai multe tururi ale tablei, până ce se umple întregul chenar, fără să se sară de două ori în aceeaşi căsuţă, fără să se sară în afara acestui chenar şi fără să rămână vreun câmp liber;
d) din poziţia finală în care s-a ajuns, trebuie să fie posibilă săritura în colţul din stânga sus al pătratului rămas neacoperit;
e) se continuă deplasarea în interiorul pătratului rămas neacoperit, folosind regulile a), b), c), d) până ce se ajunge la pătratul interior de latură 1 care va conţine valoarea n2.

Amintim că o săritură a calului constă într-o deplasare de două căsuţe pe orizontală urmată de o deplasare de o căsuţă pe verticală sau într-o deplasare de două căsuţe pe verticală urmată de o deplasare de o căsuţă pe orizontală. Calul din figura următoare poate ajunge printr-o săritură în oricare dintre cele 8 poziţii haşurate:

De exemplu, pentru n=5, după un tur al tablei, se obţine următoarea acoperire parţială:

Iar după al doilea tur, se obţine acoperirea parţială:

Pentru n=9, acoperirea se realizează astfel:

Umplerea completă si umplerea succesivă a chenarelor:

Cerinţă

Cunoscând valoarea lui n ce reprezintă dimensiunea tablei şi un număr p, să se determine linia şi coloana căsuţei din tabelă unde este scris numărul p, după regulile de mai sus.

Date de intrare

Fişierul horse.in conţine două numere:

  • n – numărul liniilor şi coloanelor tablei, pe prima linie;
  • p – numărul dintr-o căsuţă a tablei, pe a doua linie.

Date de ieşire

Fişierul horse.out va conţine două numere: linia şi respectiv coloana căsuţei unde este scris numărul p, cu un spaţiu între ele.

Restricţii

  • 4 < n < 46340
  • n = 4k + 1
  • 1 ≤ p ≤ n2
  • Pentru 50% dintre teste n≤1000

Exemplu

horse.inhorse.outExplicatie
5
24
2 1
Pe o tablă 5×5 numărul 24 va ajunge pe linia 2 şi coloana 1.
9
36
8 9
Pe o tablă 9×9 numărul 36 va ajunge pe linia 8 şi coloana 9.
41
1000
14 7
Pe o tablă 41×41 numărul 1000 va ajunge pe linia 14 şi coloana 7.
Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?