๋ฐ์ํ
๐ค๋ฌธ์ ํด๊ฒฐ
O | O | X | X | O | O |
O | O | X | X | O | O |
X | X | O | O | X | X |
X | X | O | O | X | X |
O | O | X | X | O | O |
O | O | X | X | O | O |
O | O | X | X | O |
O | O | X | X | O |
X | X | O | O | X |
์์์๋ถํฐ ์๋๋ก ํ์ค์ฉ ๋ด๋ ค๊ฐ๋ฉด์ ๊ท์น์ ์ฐพ์๋ณด๋ฉด์์ ๊ทธ๋ฆผ์ฒ๋ผ ์ฌ๋๊ฒ ๊ฐ์ฅ ๊ฒฝ์ฐ์ ์๊ฐ ๋ง๊ฒ ์ฌ์ ์ ์๋ค.
- ์ฒซ์ค์์
- ์ค๋ฅธ์ชฝ์ผ๋ก 4์นธ๋ง๋ค 2๊ฐ์ฉ ์ฌ์ ์ ์๋ค
- ๊ทธ๋ฆฌ๊ณ ๋๋จธ์ง์นธ์ด
- 3์นธ - 2๊ฐ
- 2์นธ - 2๊ฐ
- 1์นธ - 1๊ฐ
- 0์นธ - 0๊ฐ
- ๋๋ฒ์งธ ์ค๋ ์์ ๊ฐ๋ค
- ์ธ๋ฒ์งธ ์ค์ ์์ ๋์นธ์ ๋นผ๊ณ ์์ํ์ฌ ์์ ๊ท์น์ ์ ์ฉ
- ๋ค๋ฒ์งธ๋ ์ธ๋ฒ์งธ์ ๊ฐ๋ค
- ๋ค์ฏ๋ฒ์งธ๋ ๋ค์ ์ฒซ๋ฒ์งธ์ฒ๋ผ
๊ฒฐ๋ก ์ 1,2 | 3,4 | 5,6 | 7,8 | ... ์ง์ง์ด์ ํ๋ฉด๋๋ค.
๐ป์์ค ์ฝ๋
def get_axis_per_count(num):
count = num // 4 * 2
nmg = num % 4
if nmg in (3, 2):
count += 2
else:
count += nmg
return count
T = int(input())
for test_case in range(1, T + 1):
N, M = map(int, input().strip().split())
answer = 0
flag = 0
for i in range(M):
if flag in (0, 1):
answer += get_axis_per_count(N)
flag += 1
else:
answer += get_axis_per_count(N - 2)
flag += 1
flag %= 4
print(f'#{test_case} {answer}')
๐๋ฌธ์ ํ์ธ
์ถ์ฒ: SW Expert Academy
๋ฐ์ํ
'Algorithm Problem > Python' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[python] SWEA - 12052. ๋ถ์์ง ํ์ผ (0) | 2022.03.28 |
---|---|
[python] SWEA - 4366. ์ ์์ด์ ์ํ์ ๋ฌด (0) | 2022.03.25 |
[python] SWEA - 3347. ์ฌ๋ฆผํฝ ์ข ๋ชฉ ํฌํ (0) | 2022.03.24 |
[python] SWEA - 2805. ๋์๋ฌผ ์ํํ๊ธฐ (0) | 2022.03.23 |
[python] SWEA - 1225. [S/W ๋ฌธ์ ํด๊ฒฐ ๊ธฐ๋ณธ] 7์ผ์ฐจ - ์ํธ์์ฑ๊ธฐ (0) | 2022.03.22 |