[๋ฐฑ์ค€] 10158 - ๊ฐœ๋ฏธ (Python)

5233 ๋‹จ์–ด bojboj

๋ฌธ์ œ ๋งํฌ

์•Œ๊ณ ๋ฆฌ์ฆ˜

  • ์ˆ˜ํ•™

ํ’€์ด

t (์‹œ๊ฐ„)์˜ ๋ฒ”์œ„๊ฐ€ 1 ~ 200,000,000 ์ด๋ฏ€๋กœ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ๋Œ๋ฆฌ๋ฉด ๋ฌด์กฐ๊ฑด ์‹œ๊ฐ„์ดˆ๊ณผ๊ฐ€ ๋‚œ๋‹ค.
๋”ฐ๋ผ์„œ ๋‹ค๋ฅธ ๋ฐฉ์‹์œผ๋กœ ํ’€์–ด์•ผ ํ•œ๋‹ค.

1์ดˆ์˜ ์‹œ๊ฐ„์ด ์ง€๋‚˜๋ฉด ๊ฐœ๋ฏธ์˜ x๊ฐ’์€ (x+1) ์•„๋‹ˆ๋ฉด (x-1) ์ด๋˜๊ณ 
y๊ฐ’๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ (y+1) or (y-1) ์ด ๋œ๋‹ค.

x๊ฐ’๊ณผ y๊ฐ’์„ ๋”ฐ๋กœ ๊ตฌํ•ด์„œ ํ’€์—ˆ๋‹ค.


๊ฐœ๋ฏธ๊ฐ€ ์ฒ˜์Œ ์œ„์น˜ํ•œ ๊ณณ์ด ์•„๋ž˜ ๊ทธ๋ฆผ์ฒ˜๋Ÿผ (p,q) ์— ์ฃผ์–ด์ง„๋‹ค. (4,1)

๋จผ์ € ์ฒ˜์Œ์˜ ์œ„์น˜ (p,q) ์—์„œ ์‹œ๊ฐ„์„ ๋”ํ•œ ๊ฐ’์„ ๊ฒฉ์ž (w,h)์˜ ๊ธธ์ด๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ๊ตฌํ•œ๋‹ค.

๋‚˜๋จธ์ง€๊ฐ€ 0์ด ์•„๋‹ˆ๋ฉด ๊ทธ ๊ฐ’์„ ๋ (w,h) ์—์„œ ๋บ€๋‹ค.
ํ•˜์ง€๋งŒ ๋‚˜๋จธ์ง€๊ฐ€ ๋”ฑ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋ฉด 0์—์„œ ๋”ํ•ด์ค€๋‹ค.

์˜ˆ๋ฅผ ๋“ค๋ฉด ์œ„์˜ ๊ทธ๋ฆผ์—์„œ ๊ฐœ๋ฏธ๊ฐ€ 8์ดˆ ํ›„์— ์žˆ์„ ๊ณณ์€ x = 0, y = 1 ์ด๋‹ค.
๋จผ์ € x๊ฐ’์„ ๊ตฌํ•˜๋ ค๋ฉด ์ดˆ๊ธฐ๊ฐ’ (4) ์—์„œ ์‹œ๊ฐ„ (8) ์„ ๋”ํ•œ ๊ฐ’ (12) ์—์„œ ๊ฒฉ์ž์˜ ๊ฐ€๋กœ๊ธธ์ด (6) ์œผ๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€ (0) ์„ ๊ตฌํ•œ๋‹ค. ์›๋ž˜๋Š” ๊ฒฉ์ž์˜ ์˜ค๋ฅธ์ชฝ ๋ (6) ์—์„œ ๋‚˜๋จธ์ง€ (6) ์„ ๋นผ์•ผ ํ•˜์ง€๋งŒ 6์€ ๋‚˜๋จธ์ง€๋กœ ๋‚˜์˜ฌ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์™ผ์ชฝ ๋ (0)์—์„œ ๋”ํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

์ฝ”๋“œ

# ๊ฐœ๋ฏธ

# (w * h ๊ฒฉ์ž)
w, h = map(int, input().split())

# ์ฒ˜์Œ ๊ฐœ๋ฏธ์˜ ์œ„์น˜ (p,q)
p, q = map(int, input().split())

# ๊ฐœ๋ฏธ๊ฐ€ ์›€์ง์ธ ์‹œ๊ฐ„
t = int(input())

# ๊ฐœ๋ฏธ๊ฐ€ ์ด๋™ํ•œ ๊ฑฐ๋ฆฌ - ์™•๋ณตํ•œ ๊ฑฐ๋ฆฌ
a = (p + t) // w
b = (q + t) // h

if a % 2 == 0:
    x = (p + t) % w
else:
    x = w - (p + t) % w

if b % 2 == 0:
    y = (q + t) % h
else:
    y = h - (q + t) % h

print(x, y)

์ข‹์€ ์›นํŽ˜์ด์ง€ ์ฆ๊ฒจ์ฐพ๊ธฐ