๐ Algorithm/๋ฐฑ์ค
โฐ๋ฌธ์ ์ ๋ ฌ๋ ๋ ๋ฌถ์์ ์ซ์ ์นด๋๊ฐ ์๋ค๊ณ ํ์. ๊ฐ ๋ฌถ์์ ์นด๋์ ์๋ฅผ A, B๋ผ ํ๋ฉด ๋ณดํต ๋ ๋ฌถ์์ ํฉ์ณ์ ํ๋๋ก ๋ง๋๋ ๋ฐ์๋ A+B ๋ฒ์ ๋น๊ต๋ฅผ ํด์ผ ํ๋ค. ์ด๋ฅผํ
๋ฉด, 20์ฅ์ ์ซ์ ์นด๋ ๋ฌถ์๊ณผ 30์ฅ์ ์ซ์ ์นด๋ ๋ฌถ์์ ํฉ์น๋ ค๋ฉด 50๋ฒ์ ๋น๊ต๊ฐ ํ์ํ๋ค. ๋งค์ฐ ๋ง์ ์ซ์ ์นด๋ ๋ฌถ์์ด ์ฑ
์ ์์ ๋์ฌ ์๋ค. ์ด๋ค์ ๋ ๋ฌถ์์ฉ ๊ณจ๋ผ ์๋ก ํฉ์ณ๋๊ฐ๋ค๋ฉด, ๊ณ ๋ฅด๋ ์์์ ๋ฐ๋ผ์ ๋น๊ต ํ์๊ฐ ๋งค์ฐ ๋ฌ๋ผ์ง๋ค. ์๋ฅผ ๋ค์ด 10์ฅ, 20์ฅ, 40์ฅ์ ๋ฌถ์์ด ์๋ค๋ฉด 10์ฅ๊ณผ 20์ฅ์ ํฉ์น ๋ค, ํฉ์น 30์ฅ ๋ฌถ์๊ณผ 40์ฅ์ ํฉ์น๋ค๋ฉด (10 + 20) + (30 + 40) = 100๋ฒ์ ๋น๊ต๊ฐ ํ์ํ๋ค. ๊ทธ๋ฌ๋ 10์ฅ๊ณผ 40์ฅ์ ํฉ์น ๋ค, ํฉ์น 50์ฅ ๋ฌถ์๊ณผ 20์ฅ์ ํฉ์น๋ค๋ฉด (10 + 40) + (50 + 20..
๐ Algorithm/๋ฐฑ์ค
๋ฌธ์ 11866๋ฒ: ์์ธํธ์ค ๋ฌธ์ 0 ์ฒซ์งธ ์ค์ N๊ณผ K๊ฐ ๋น ์นธ์ ์ฌ์ด์ ๋๊ณ ์์๋๋ก ์ฃผ์ด์ง๋ค. (1 ≤ K ≤ N ≤ 1,000) www.acmicpc.net ์ ์ถ ์ฝ๋ from collections import deque N, K = map(int, input().split()) q = deque() for i in range(1, N+1): q.append(i) li = [] while q: for i in range(K-1): q.append(q.popleft()) li.append(q.popleft()) print("") ์ด ๋ฌธ์ ๋ deque๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ ๋ฌธ์ ์ด๋ค. popleft()๋ ๊ฐ์ฅ ์ผ์ชฝ์ ์์๋ฅผ ์ ๊ฑฐํด์ฃผ๋ฉฐ ์ ๊ฑฐํ ๊ฐ์ return ํด์ค๋ค. ๋ฐ๋ผ์ ์์ q.append(q.popl..
๐ Algorithm/๋ฐฑ์ค
๋ฌธ์ 2851๋ฒ: ์ํผ ๋ง๋ฆฌ์ค ์ฒซ์งธ ์ค์ ๋ง๋ฆฌ์ค๊ฐ ๋ฐ๋ ์ ์๋ฅผ ์ถ๋ ฅํ๋ค. ๋ง์ฝ 100์ ๊ฐ๊น์ด ์๊ฐ 2๊ฐ๋ผ๋ฉด (์: 98, 102) ๋ง๋ฆฌ์ค๋ ํฐ ๊ฐ์ ์ ํํ๋ค. www.acmicpc.net ์ ์ถ ์ฝ๋ score = [] sum = 0 sum_under = 0 for i in range(10): score.append(int(input())) for i in range(len(score)): sum += score[i] if sum > 100: sum_under = sum - score[i] break; if abs(100-sum) == abs(100-sum_under): print(sum) else: if abs(100-sum) < abs(100-sum_under): print(sum) else : pr..
๐ Algorithm/๋ฐฑ์ค
๋ฌธ์ 1021๋ฒ: ํ์ ํ๋ ํ ์ฒซ์งธ ์ค์ ํ์ ํฌ๊ธฐ N๊ณผ ๋ฝ์๋ด๋ ค๊ณ ํ๋ ์์ ๊ฐ์ M์ด ์ฃผ์ด์ง๋ค. N์ 50๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๊ณ , M์ N๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๋ค. ๋์งธ ์ค์๋ ์ง๋ฏผ์ด๊ฐ ๋ฝ์๋ด๋ ค๊ณ ํ๋ ์์ ์์น๊ฐ www.acmicpc.net ์ ์ถ์ฝ๋ N, M = map(int, input().split()) P = list(map(int, input().split())) q = [i for i in range(1, N+1)] cnt = 0 for i in range(M): # ์์น 0๊ณผ์ ๊ฑฐ๋ฆฌ ์ฐจ์ด๋ก ์ผ์ชฝ์ผ๋ก or ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ ์ง๋ฅผ ๊ฒฐ์ if q.index(P[i]) < len(q)-q.index(P[i]): while True: if q[0] == P[i]: del q[0] brea..
๐ Algorithm/๋ฐฑ์ค
๋ฌธ์ 2460๋ฒ: ์ง๋ฅํ ๊ธฐ์ฐจ 2 ์ต๊ทผ์ ๊ฐ๋ฐ๋ ์ง๋ฅํ ๊ธฐ์ฐจ๊ฐ 1๋ฒ์ญ(์ถ๋ฐ์ญ)๋ถํฐ 10๋ฒ์ญ(์ข
์ฐฉ์ญ)๊น์ง 10๊ฐ์ ์ ์ฐจ์ญ์ด ์๋ ๋
ธ์ ์์ ์ดํ๋๊ณ ์๋ค. ์ด ๊ธฐ์ฐจ์๋ ํ๊ฑฐ๋ ๋ด๋ฆฌ๋ ์ฌ๋ ์๋ฅผ ์๋์ผ๋ก ์ธ์ํ ์ ์๋ ์ฅ์น๊ฐ ์๋ค. www.acmicpc.net ์ ์ถ ์ฝ๋ num = [] left = [0] for i in range(10): num.append(list(map(int, input().split()))) for i in range(1,11): add = num[i-1][1] - num[i-1][0] left.append(left[i-1] + add) print(max(left)) ๋จผ์ , num ๋ฆฌ์คํธ์ 2์ฐจ์ ๋ฐฐ์ด๋ก ์
๋ ฅ๋ฐ์ append ํจ์๋ก ๋ฆฌ์คํธ์ ์ถ๊ฐํ๋ค. add๋ ๊ฐ ์ญ์์ ํ ์ฌ๋๊ณผ..
๐ Algorithm/๋ฐฑ์ค
๋ฌธ์ 11399๋ฒ: ATM ์ฒซ์งธ ์ค์ ์ฌ๋์ ์ N(1 ≤ N ≤ 1,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค์๋ ๊ฐ ์ฌ๋์ด ๋์ ์ธ์ถํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ Pi๊ฐ ์ฃผ์ด์ง๋ค. (1 ≤ Pi ≤ 1,000) www.acmicpc.net ์ ์ถ ์ฝ๋ N = int(input()) P = list(map(int, input().split())) total = 0 P.sort() for i in range(N): for j in range(i+1): total += P[j] print(total) ์ด ๋ฌธ์ ๋ ๋จผ์ ์
๋ ฅ๋ฐ์ ๊ฐ ์ฌ๋๋ค์ ์ธ์ถ ์๊ฐ์ ์์ ์๊ฐ ๋ถํฐ ์ ๋ ฌ์ ํด์ผํ๋ค. ๋ฆฌ์คํธ์ ์ ๋ ฌ์ ์ํด ๋ฆฌ์คํธ์ ๋ด๋ถ ์์๋ฅผ ์ ๋ ฌํด์ฃผ๋ sort() ํจ์๋ฅผ ์ฌ์ฉํ๋ค. sort ํจ์๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌ์ด ๋๊ธฐ ๋๋ฌธ์ P.s..