2117 : ์ํ ๋์ค#
์ค๋ฒ 1
์๊ฐ์ ํ |
๋ฉ๋ชจ๋ฆฌ์ ํ |
์ ๋ต๋น์จ |
---|---|---|
2์ด |
128MB |
63.918% |
in and out#
input : n
output : ์ต์ ์๋ฆฌ๋ฐ๊ฟ ํ์
N(1 โค n โค 32767)๋ช
์ ์ฌ๋๋ค์ด ์์น์์ ์ถค์ ์ถ๊ฒ ๋์๋ค.
์ฒ์์๋ 1๋ฒ๋ถํฐ N๋ฒ๊น์ง์ ์ฌ๋๋ค์ด ์ฐจ๋ก๋๋ก, ๋ฅ๊ธ๊ฒ ์์ ์ก๊ณ ์ ์๋ค.
๊ทธ๋ฆฌ๊ณ ์ถค์ด ๋๋ ๋์๋ ์ด ์์๊ฐ ๋ฐ๋(๊ฑฐ๊พธ๋ก, ๋ค์งํ)๊ฐ ๋์ด์ผ ํ๋ค.
๋ฌผ๋ก ์ฌ๋๋ค์ด ๋ชจ๋ ์์ ๋๊ณ ๋ค์ ์๋ฆฌ๋ฅผ ์ก์ผ๋ฉด ๋๊ฒ ์ง๋ง, ๊ทธ๋ ๊ฒ ํ๋ฉด ๋ฅ๊ทธ๋ฐ ๋ชจ์์ด ๊นจ์ง๊ฒ ๋๋ค.
๋ฐ๋ผ์ ์๋ฆฌ๋ฅผ ๋ฐ๊ฟ ๋์๋, ์๋ก ์์ ์ก๊ณ ์๋ ๋ ๋ช
์ ์ฌ๋๋ง ์๋ฆฌ๋ฅผ ๋ฐ๊ฟ ์ ์๋ค.
์๋ฅผ ๋ค์ด n=6์ธ ๊ฒฝ์ฐ๋ฅผ ๋ณด์.
๋งจ ์ฒ์์ ์์๋ (1, 2, 3, 4, 5, 6)์ด ๋๋ค.
๋ฅ๊ธ๊ฒ ์ ์๊ธฐ ๋๋ฌธ์ 1๋ฒ๊ณผ 6๋ฒ๋ ์์ ์ก๊ณ ์๋ค. ์ด์ (1, 2, 3, 4, 5, 6) โ (6, 2, 3, 4, 5, 1) โ (2, 6, 3, 4, 5, 1) โ (1, 6, 3, 4, 5, 2) โ (1, 6, 3, 5, 4, 2) โ (1, 6, 5, 3, 4, 2) โ (1, 6, 5, 4, 3, 2)์ ์์๋๋ก ๋ฐ๊พธ๋ฉด ์๋ฆฌ๊ฐ ๋ฐ๋๊ฐ ๋๋ค.
(6, 5, 4, 3, 2, 1)์ด ๋๋ ๊ฒ ๋ง๊ฒ ์ง๋ง, ์ด์ฐจํผ ๋ฅ๊ธ๊ฒ ์ ์๊ธฐ ๋๋ฌธ์ (1, 6, 5, 4, 3, 2)์ ๊ฐ์ ๊ฒฝ์ฐ๋ ์์๋ ๋ฐ๋๊ฐ ๋๋ ๊ฒ ๋ง๋ค.
๊ฐ๊ธ์ ์ด๋ฉด ์๋ฆฌ๋ฅผ ์ต์๋ก ๋ฐ๊พธ๋ ค๊ณ ํ๋ค. ์ต์๋ก ์๋ฆฌ๋ฅผ ๋ฐ๊พธ๋ ค๋ฉด ์ด๋ป๊ฒ ํด์ผ ํ ๊น?
# input setting
problem_num = 2117
import os, sys
path = os.getcwd() + f'\\txt\\{problem_num}' + '.txt'
sys.stdin = open(path,'r')
n = int(sys.stdin.readline())
def circle_dance(n): #n 1~dd
if n == 1 or n == 2:
return 0
elif n == 3:
return 1
else:
a = int(n/2)
b = n - int(n/2)
a_ = [x+1 for x in range(a-1)]
b_ = [x+1 for x in range(b-1)]
c = sum(a_) + sum(b_)
return c
result = circle_dance(n)
print(result)
6
์ค์ ๋ก ์์๋ค์ ๊ตฌํด๋ณด๊ณ ๊ทธ ์์์ ๋ ์๊ฒ ์๋ฅผ ์ ์๋ ๋ฉ์ด๋ฆฌ๋ฅผ ์๊ฐํ ์ ์์ด์ผํ ๊ฒ ์ผ๋ก ๋ณด์ธ๋ค. ๊ฒฐ๊ตญ ์ด ์ฐธ๊ณ ๋ ๋ฌธ์ ์์ ๋ฌธ์ ๋ฅผ ์ ํ์์ผ๋ก ๋ํ๋ด์ ํธํ๊ฒ ํ ์ ์๊ฒ ๋ ๊ฒ.