-
[๋ฐฑ์ค] 20546 ๐ ๊ธฐ์ ์ ๋งค๋งค๋ฒ ๐ with PythonPS 2021. 12. 18. 20:01728x90๋ฐ์ํ
๐ BOJ 20546 ๐ ๊ธฐ์ ์ ๋งค๋งค๋ฒ ๐
๐ก ์กฐ๊ฑด
๋ชจ๋ ๊ฑฐ๋๋ ์ ๋ ๋งค์์ ์ ๋ ๋งค๋๋ก ์ด๋ฃจ์ด์ง๋ค.
- ํ์ฌ ๊ฐ์ง๊ณ ์๋ ํ๊ธ์ด 100์์ด๊ณ ์ฃผ๊ฐ๊ฐ 11์์ด๋ผ๋ฉด 99์์ด์น์ ์ฃผ์์ ๋งค์ํ๋ ๊ฒ์ด๋ค.
- ๋จ, ํ๊ธ์ด 100์ ์๊ณ ์ฃผ๊ฐ๊ฐ 101์์ด๋ผ๋ฉด ์ฃผ์์ ์ด ์ ์๋ค.
- ์ฑ๋ฏผ์ด๋ ๋น์ ๋ด์ ์ฃผ์์ ํ์ง๋ ์๋๋ค.
3์ผ ์ฐ์ ๊ฐ๊ฒฉ์ด ์ ์ผ ๋๋น ์์นํ๋ ์ฃผ์์ ๋ค์๋ ๋ฌด์กฐ๊ฑด ๊ฐ๊ฒฉ์ด ํ๋ฝํ๋ค๊ณ ๊ฐ์ ํ๋ค.
- ๋ฐ๋ผ์ ํ์ฌ ์์ ํ ์ฃผ์์ ๊ฐ๊ฒฉ์ด 3์ผ์งธ ์์นํ๋ค๋ฉด, ์ ๋ ๋งค๋ํ๋ค.
- ์ ์ผ๊ณผ ์ค๋์ ์ฃผ๊ฐ๊ฐ ๋์ผํ๋ค๋ฉด ๊ฐ๊ฒฉ์ด ์์นํ ๊ฒ์ด ์๋๋ค.
3์ผ ์ฐ์ ๊ฐ๊ฒฉ์ด ์ ์ผ ๋๋น ํ๋ฝํ๋ ์ฃผ์์ ๋ค์๋ ๋ฌด์กฐ๊ฑด ๊ฐ๊ฒฉ์ด ์์นํ๋ค๊ณ ๊ฐ์ ํ๋ค.
- ๋ฐ๋ผ์ ์ด๋ฌํ ๊ฒฝํฅ์ด ๋ํ๋๋ฉด ์ฆ์ ์ฃผ์์ ์ ๋ ๋งค์ํ๋ค.
- ์ ์ผ๊ณผ ์ค๋์ ์ฃผ๊ฐ๊ฐ ๋์ผํ๋ค๋ฉด ๊ฐ๊ฒฉ์ด ํ๋ฝํ ๊ฒ์ด ์๋๋ค.
1์ 14์ผ์ ์์ฐ์ (ํ๊ธ + 1์ 14์ผ์ ์ฃผ๊ฐ ร ์ฃผ์ ์)๋ก ๊ณ์ฐํ๋ค.
1์ 14์ผ ๊ธฐ์ค ์คํ์ด์ ์์ฐ์ด ๋ ํฌ๋ค๋ฉด "BNP"๋ฅผ, ์ฑ๋ฏผ์ด์ ์์ฐ์ด ๋ ํฌ๋ค๋ฉด "TIMING"์ ์ถ๋ ฅํ๋ค.
Stack, ์๋ฃ๊ตฌ์กฐ ์ ํ์ ๋ฌธ์
๐ฅ ์์ค ์ฝ๋
from sys import stdin m = int(stdin.readline()) arr = list(map(int, stdin.readline().split())) jm, sm, j, s, status = m, m, 0, 0, [0, ''] yesterday = arr[0] for i in range(14): # ์คํ if jm // arr[i] != 0: temp = jm // arr[i] j += (jm // arr[i]) jm -= temp * arr[i] # ์ฑ๋ฏผ change = 0 if yesterday < arr[i]: if status[1] == '-': change = 1 status[1] = '+' elif yesterday > arr[i]: if status[1] == '+': change = 1 status[1] = '-' yesterday = arr[i] if change: status[0] = 1 elif status[1] != '': status[0] += 1 if status[0] >= 3: if status[1] == '+': if sm // arr[i] != 0: sm += s * arr[i] s = 0 if status[1] == '-': temp = sm // arr[i] s += (sm // arr[i]) sm -= temp * arr[i] last_day = arr[-1] sm += (s * last_day) jm += (j * last_day) if sm == jm: print("SAMESAME") elif sm > jm: print("TIMING") else: print("BNP")
๐ ์์ ๋ฐ ์คํ๊ฒฐ๊ณผ
์์
100 10 20 23 34 55 30 22 19 12 45 23 44 34 38
์คํ๊ฒฐ๊ณผ
BNP
โจ๏ธ ๋ฌธ์ ํ์ด
- ๋ฌธ์ ์์ ์๊ตฌํ 33 ๋งค๋งค๋ฒ์ ์ธ๊ฐ์ง ๋ฃฐ์ ๋จผ์ ์ ๋ฆฌํ๊ณ ๊ตฌํ์ ํ๋ฉด ์ข์ต๋๋ค.
๐พ ๋๋์
- ๋จ์ํ ๊ตฌํ๋ฌธ์ ์๋ค.
- ๋ฌธ์ ๋ฅผ ์ ์ฝ๊ณ ๋ฌธ์ ๋ฅผ ์์ถํ๊ณ ์ ๋ฆฌํ๋ ์ฐ์ต์ด ํ์ํ๊ฒ ๋ค.
๋ฐ์ํ'PS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] 1535 ์๋ with Python (0) 2022.01.10 [๋ฐฑ์ค] 1063 ํน with Python (0) 2021.12.29 [๋ฐฑ์ค] 18511 ํฐ ์ ๊ตฌ์ฑํ๊ธฐ with Python (0) 2021.12.18 [๋ฐฑ์ค] 14620 ๊ฝ๊ธธ with Python (0) 2021.12.13 [๋ฐฑ์ค] 13900 ์์์์ ๊ณฑ์ ํฉ with Python (0) 2021.12.13