π©π»βπ»λ¬Έμ μ€λͺ
[μ΄μ½ν
Ch4-1] μνμ’μ° (ꡬν)
μ¬νκ° Aλ N Γ N ν¬κΈ°μ μ μ¬κ°ν κ³΅κ° μμ μ μλ€. μ΄ κ³΅κ°μ 1 Γ 1 ν¬κΈ°μ μ μ¬κ°νμΌλ‘ λλμ΄μ Έ μλ€. κ°μ₯ μΌμͺ½ μ μ’νλ (1, 1)μ΄λ©°, κ°μ₯ μ€λ₯Έμͺ½ μλ μ’νλ (N, N)μ ν΄λΉνλ€. μ¬νκ° Aλ μ, ν, μ’, μ° λ°©ν₯μΌλ‘ μ΄λν μ μμΌλ©°, μμ μ’νλ νμ (1, 1)μ΄λ€. μ°λ¦¬ μμλ μ¬νκ° Aκ° μ΄λν κ³νμ΄ μ ν κ³νμκ° λμ¬ μλ€.
κ³νμμλ νλμ μ€μ λμ΄μ°κΈ°λ₯Ό κΈ°μ€μΌλ‘ L, R, U, D μ€ νλμ λ¬Έμκ° λ°λ³΅μ μΌλ‘ μ νμλ€. κ° λ¬Έμμ μλ―Έλ λ€μκ³Ό κ°λ€.
L: μΌμͺ½μΌλ‘ ν μΉΈ μ΄λ
R: μ€λ₯Έμͺ½μΌλ‘ ν μΉΈ μ΄λ
U: μλ‘ ν μΉΈ μ΄λ
D: μλλ‘ ν μΉΈ μ΄λ
μ΄λ μ¬νκ° Aκ° N Γ N ν¬κΈ°μ μ μ¬κ°ν 곡κ°μ λ²μ΄λλ μμ§μμ 무μλλ€. μλ₯Ό λ€μ΄ (1, 1)μ μμΉμμ L νΉμ Uλ₯Ό λ§λλ©΄ 무μλλ€. λ€μμ N = 5μΈ μ§λμ κ³νμμ΄λ€.
μ΄ κ²½μ° 6κ°μ λͺ λ Ήμ λ°λΌμ μ¬νκ°κ° μμ§μ΄κ² λλ μμΉλ μμλλ‘ (1, 2), (1, 3), (1, 4), (1, 4), (2, 4), (3, 4)μ΄λ―λ‘, μ΅μ’ μ μΌλ‘ μ¬νκ° Aκ° λμ°©νκ² λλ κ³³μ μ’νλ (3, 4) μ΄λ€. λ€μ λ§ν΄ 3ν 4μ΄μ μμΉμ ν΄λΉνλ―λ‘ (3, 4)λΌκ³ μ λλ€. κ³νμκ° μ£Όμ΄μ‘μ λ μ¬νκ° Aκ° μ΅μ‘±μ μΌλ‘ λμ°©ν μ§μ μ μ’νλ₯Ό μΆλ ₯νλ νλ‘κ·Έλ¨μ μμ±νμμ€.
μ λ ₯
- 첫째 μ€μ 곡κ°μ ν¬κΈ°λ₯Ό λνλ΄λ Nμ΄ μ£Όμ΄μ§λ€. (1 <= N <= 100)
- λμ§Έ μ€μ μ¬νκ° Aκ° μ΄λν κ³νμ λ΄μ©μ΄ μ£Όμ΄μ§λ€. (1 <= μ΄λ νμ <= 100)
μΆλ ₯
- 첫째 μ€μ μ¬νκ° Aκ° μ΅μ’ μ μΌλ‘ λμ°©ν μ§μ μ μ’ν (X, Y)λ₯Ό 곡백μΌλ‘ ꡬλΆνμ¬ μΆλ ₯νλ€.
μ
λ ₯ μμ
5
R R R U D D
μΆλ ₯ μμ
3 4
βοΈIdea Sketch
μκ³ λ¦¬μ¦ : ꡬν
μκ°λ³΅μ‘λ
μ°μ° νμλ μ΄λ νμμ λΉλ‘νλ€. μ΄λ νμκ° nμΈ κ²½μ° O(n)μ΄ λλ€.
βοΈλ΄ μμ€μ½λ
- κ³νμλ₯Ό μ λ ₯λ°μ μ΄λ νμλ§νΌ forλ¬Έμ μ€ννλ€.
- dx, dyλ L, R, U, Dμ λ°λ₯Έ μ΄λ λ°©ν₯μ΄λ€. L, R, U, Dμ λ°λ₯Έ dx, dyμ μΈλ±μ€ iλ₯Ό ꡬνλ€.
- μλ‘μ΄ x, y μ’νλ₯Ό ꡬν ν N * Nμ 곡κ°μ λ²μ΄λλμ§ νμΈνλ€. λ²μ΄λμ§ μλ κ²½μ° x, y μ’νλ₯Ό κ°±μ νλ€.
import sys
si = sys.stdin.readline
n = int(si())
x, y = 0, 0
dx = [0, 0, -1, 1]
dy = [-1, 1, 0, 0]
for move in si().split():
if move == 'L':
i = 0
elif move == 'R':
i = 1
elif move == 'U':
i = 2
elif move == 'D':
i = 3
nx, ny = x + dx[i], y + dy[i]
if (0 <= nx < n) and (0 <= ny < n):
x, y = nx, ny
print(x + 1, y + 1)