ํฐ์คํ ๋ฆฌ ๋ทฐ
๋ฌธ์
๋ฌธ์ ํ์ด
๋ณ๋ ๋์ดํธ๊ฐ N, M ํฌ๊ธฐ์ ์ฒด์คํ์ ์ด๋ํ ๋, ๋ฐฉ๋ฌธํ ์ ์๋ ์นธ์ ๊ฐ์์ ์ต๋ ๊ฐ์ ๋ฐํํ๋ ๋ฌธ์ ์ด๋ค. ๋ฌธ์ ๋ฅผ ์ฒ์ ์ ํ์์ ๋๋ BFS๋ก ํธ๋ ๊ฑด๊ฐ? ํ๊ณ ์๊ฐ์ ํ๋ค. ํ์ง๋ง N, M์ 2,000,000,000๊น์ง ์ด๋ฏ๋ก ์ต๋ ๊ฐ์ด ์ ๋ ฅ๋๋ค๋ฉด ์๊ฐ ๋ด์ ํต๊ณผํ ์ ์๊ฒ ๋๋ค. ๋ฌธ์ ๋ฅผ ํ๊ธฐ ์ํด์ ๋ณ๋ ๋์ดํธ์ ์ด๋์ ๋ํด ์๊ฐํด๋ณด๋ฉด, ์ข์ธก์ผ๋ก ๊ฐ์ง ์๊ณ ๋ฐ๋์ ์ฐ์ธก์ผ๋ก ์ด๋ํ๋ค๋ ํน์ง์ ๊ฐ์ง๊ณ ์๋ค. ๋ํ ๋ฐฉ๋ฌธํ ์นธ์ด 5๊ฐ ๋ฏธ๋ง์ธ ๊ฒฝ์ฐ์๋ ์ด๋ ๋ฐฉ๋ฒ์ ๋ํ ์ ์ฝ์ด ์๋ค๋ ํน์ง์ ๊ฐ์ง๊ณ ์๋ค.
์์ ํน์ง์ ๊ฐ์ง๊ณ ๊ฒฝ์ฐ์ ์๋ฅผ ๋๋์ด ๋ณธ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
-
N = 1
- ๋ฐฉ๋ฌธํ ์ ์๋ ์นธ : 1
- ๋ณ๋ ๋์ดํธ๊ฐ ์ด๋ํ ์ ์๋ 4๊ฐ์ง ๋ฐฉ๋ฒ ์ค ์ด๋ํ ์ ์๋ ๊ฒฝ์ฐ๊ฐ ์๋ค.
-
N = 2
-
M = 1, 2
- ๋ฐฉ๋ฌธํ ์ ์๋ ์นธ : 1
-
M = 3, 4
- ๋ฐฉ๋ฌธํ ์ ์๋ ์นธ : 2
-
M = 5, 6
- ๋ฐฉ๋ฌธํ ์ ์๋ ์นธ : 3
-
M = 7, 8
- ๋ฐฉ๋ฌธํ ์ ์๋ ์นธ : 4
-
M = 9
- ๋ฐฉ๋ฌธํ ์ ์๋ ์นธ : 4
-
M = 10
- ๋ฐฉ๋ฌธํ ์ ์๋ ์นธ : 4
- M์ ๋ฐ๋ผ ์ต๋ 4์นธ์ ๋ฐฉ๋ฌธํ ์ ์๋ค.
-
M = 1, 2
-
N = 3
-
M = 1
- ๋ฐฉ๋ฌธํ ์ ์๋ ์นธ : 1
-
M = 2
- ๋ฐฉ๋ฌธํ ์ ์๋ ์นธ : 2
-
M = 3
- ๋ฐฉ๋ฌธํ ์ ์๋ ์นธ : 3
-
M = 4
- ๋ฐฉ๋ฌธํ ์ ์๋ ์นธ : 4
-
M = 5
- ๋ฐฉ๋ฌธํ ์ ์๋ ์นธ : 4
-
M = 6
- ๋ฐฉ๋ฌธํ ์ ์๋ ์นธ : 4
-
M = 7
- ๋ฐฉ๋ฌธํ ์ ์๋ ์นธ : 5
-
M = 8
- ๋ฐฉ๋ฌธํ ์ ์๋ ์นธ : 6
- M์ด 7๋ณด๋ค ํฌ๊ฒ ๋๋ฉด M - 7 + 5๋ผ๋ ๊ท์น์ ์ฐพ์ ์ ์๋ค.
-
M = 1
์ด์ ๊ฐ์ ์กฐ๊ฑด์ ์ ๋ฆฌํ์ฌ ์ฝ๋๋ก ์์ฑํ๋ฉด ๋ต์ ์ฐพ์ ์ ์๋ค.
์ฝ๋
from sys import stdin
if __name__ == '__main__':
n, m = map(int, stdin.readline().split())
if n == 1:
print(1)
elif n == 2:
print(min(4, (m + 1) // 2))
elif m < 7:
print(min(4, m))
else:
print(m - 7 + 5)
'๐จโ๐ป ์ฝ๋ฉํ ์คํธ > ๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐฑ์ค: 1541 ์์ด๋ฒ๋ฆฐ ๊ดํธ (0) | 2020.09.08 |
---|---|
๋ฐฑ์ค: 10610 30 (0) | 2020.09.08 |
๋ฐฑ์ค: 12015 ์ต์ฅ ์ฆ๊ฐ ๋ถ๋ถ ์์ด 2 (0) | 2020.09.07 |
๋ฐฑ์ค: 2109 ์ํ๊ฐ์ฐ (0) | 2020.09.07 |
๋ฐฑ์ค: 1202 ๋ณด์ ๋๋ (0) | 2020.09.06 |