reflex

Time limit: 0.08s Memory limit: 2MB Input: reflex.in Output: reflex.out

La un concurs de robotică, în timpul prezentării, un roboţel cu corp cilindric cu diametrul de o unitate scapă de sub control şi se deplasează într-un ring de formă dreptunghiulară. Ringul este împărţit în N×MN \times M pătrate identice, cu latura de o unitate, aşezate pe NN linii şi MM coloane.

Robotul poate părăsi ringul numai pe la colţuri, acestea fiind numerotate de la 11 la 44, colţul cu numărul 11 fiind cel din stânga jos apoi restul fiind numerotate în sens trigonometric. Suprafaţa ringului este delimitată de exterior prin intermediul a patru pereţi despărţitori: doi pereţi "verticali" (aşezaţi de la colţul 11 la colţul 44, respectiv de la colţul 22 la colţul 33) şi doi pereţi "orizontali" (aşezaţi de la colţul 11 la colţul 22, respectiv de la colţul 33 la colţul 44), fără a bloca ieşirile, ca în desenul alăturat.

Robotul pătrunde în ring prin colţul cu numărul 11 sub un unghi de 4545 de grade şi cu o viteză de o unitate pe secundă. Ciocnirile cu pereţii sunt considerate perfect elastice (robotul nu-şi pierde din viteză) iar unghiul de incidenţă este egal cu cel de reflexie.

Cerință

Se cere să se determine:

  1. După câte secunde şi prin ce colţ al ringului va ieşi robotul.
  2. De câte ori se ciocneşte robotul de pereţii orizontali şi verticali, rezultând o schimbare de direcţie, până la ieşirea din ring.

Date de intrare

Fişierul de intrare reflex.in conţine pe prima linie două numere naturale NN şi MM, separate printr-un singur spaţiu.

Date de ieșire

Fişierul de ieşire reflex.out va conţine pe prima linie două numere naturale SS și CC, separate printr-un singur spațiu, SS reprezentând numărul de secunde după care robotul va ieşi din ring, iar CC reprezintă numărul colţului prin care acesta va ieşi. Pe a doua linie, fişierul de ieşire va conține două numere naturale HH şi VV, separate printr-un spaţiu, HH reprezentând numărul de ciocniri cu pereţii orizontali ai ringului, iar VV numărul de ciocniri cu pereţii verticali.

Restricții și precizări

  • 3N,M2 000 000 0003 \leq N, M \leq 2 \ 000 \ 000 \ 000
  • Pentru rezolvarea corectă a unei singure cerinţe se acordă 50%50\% din punctaj, iar pentru rezolvarea corectă a ambelor cerinţe se acordă 100%100\% din punctaj.

Exemplul 1

reflex.in

3 6

reflex.out

11 4
4 1

Explicație

Până la ieşire se parcurg 1111 pătrate, ieşirea se produce pe la colţul 44. Se produc 44 ciocniri cu pereţii orizontali şi o ciocnire cu pereţii verticali.

Exemplul 2

reflex.in

5 7

reflex.out

13 4
2 1

Explicație

Se parcurg 1313 pătrate, ieşirea se face la colţul 44 şi se produc 22 ciocniri cu pereţii orizontali în punctele aa şi cc respectiv o ciocnire cu pereţii verticali în punctul bb.

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