Github & Portfolio
๐ Problem Solving/Baekjoon(73)
-
[๋ฐฑ์ค-11723] ์งํฉ / Python
11723๋ฒ: ์งํฉ ์ฒซ์งธ ์ค์ ์ํํด์ผ ํ๋ ์ฐ์ฐ์ ์ M (1 ≤ M ≤ 3,000,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค๋ถํฐ M๊ฐ์ ์ค์ ์ํํด์ผ ํ๋ ์ฐ์ฐ์ด ํ ์ค์ ํ๋์ฉ ์ฃผ์ด์ง๋ค. www.acmicpc.net import sys data = [] for _ in range(int(sys.stdin.readline())): command = list(sys.stdin.readline().split()) if len(command) == 2: oper = command[0] x = int(command[-1]) else: oper = command[0] if oper == "add": if x not in data: data.append(x) elif oper == "remove": if x in data:..
-
[๋ฐฑ์ค-11659] ๊ตฌ๊ฐ ํฉ ๊ตฌํ๊ธฐ4 / Python
11659๋ฒ: ๊ตฌ๊ฐ ํฉ ๊ตฌํ๊ธฐ 4 ์ฒซ์งธ ์ค์ ์์ ๊ฐ์ N๊ณผ ํฉ์ ๊ตฌํด์ผ ํ๋ ํ์ M์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค์๋ N๊ฐ์ ์๊ฐ ์ฃผ์ด์ง๋ค. ์๋ 1,000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๋ค. ์ ์งธ ์ค๋ถํฐ M๊ฐ์ ์ค์๋ ํฉ์ ๊ตฌํด์ผ ํ๋ ๊ตฌ๊ฐ i์ j www.acmicpc.net import sys n, m = map(int, sys.stdin.readline().split()) data = list(map(int, sys.stdin.readline().split())) d = [0] * (n + 1) for i in range(1, n + 1): d[i] = d[i - 1] + data[i - 1] for _ in range(m): a, b = map(int, sys.stdin.readline().split()) ..
-
[๋ฐฑ์ค-11286] ์ ๋๊ฐ ํ / Python
11286๋ฒ: ์ ๋๊ฐ ํ ์ฒซ์งธ ์ค์ ์ฐ์ฐ์ ๊ฐ์ N(1≤N≤100,000)์ด ์ฃผ์ด์ง๋ค. ๋ค์ N๊ฐ์ ์ค์๋ ์ฐ์ฐ์ ๋ํ ์ ๋ณด๋ฅผ ๋ํ๋ด๋ ์ ์ x๊ฐ ์ฃผ์ด์ง๋ค. ๋ง์ฝ x๊ฐ 0์ด ์๋๋ผ๋ฉด ๋ฐฐ์ด์ x๋ผ๋ ๊ฐ์ ๋ฃ๋(์ถ๊ฐํ๋) ์ฐ์ฐ์ด๊ณ , x๊ฐ 0 www.acmicpc.net import sys import heapq q = [] for _ in range(int(sys.stdin.readline())): num = int(sys.stdin.readline()) if not q and num == 0: print(0) else: if num == 0: print(heapq.heappop(q)[1]) else: heapq.heappush(q, (abs(num), num)) ํด์ค heapq์ ์ ๋๊ฐ๊ณผ ๊ธฐ์กด๊ฐ์ ํจ๊ป ๋ฃ..
-
[๋ฐฑ์ค-9461] ํ๋๋ฐ ์์ด / Python
9461๋ฒ: ํ๋๋ฐ ์์ด ์ค๋ฅธ์ชฝ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ์ผ๊ฐํ์ด ๋์ ๋ชจ์์ผ๋ก ๋์ฌ์ ธ ์๋ค. ์ฒซ ์ผ๊ฐํ์ ์ ์ผ๊ฐํ์ผ๋ก ๋ณ์ ๊ธธ์ด๋ 1์ด๋ค. ๊ทธ ๋ค์์๋ ๋ค์๊ณผ ๊ฐ์ ๊ณผ์ ์ผ๋ก ์ ์ผ๊ฐํ์ ๊ณ์ ์ถ๊ฐํ๋ค. ๋์ ์์ ๊ฐ์ฅ ๊ธด ๋ณ์ www.acmicpc.net for _ in range(int(input())): n = int(input()) d = [0] * 101 d[1], d[2], d[3], d[4] = 1, 1, 1, 2 for i in range(5, n + 1): d[i] = d[i - 2] + d[i - 3] print(d[n]) ํด์ค ๊ท์น๋ง ์๋ฉด ์ฝ๊ฒ ํด๊ฒฐํ ์ ์๋ dp๋ฌธ์ ์๋ค. 2์นธ๊ณผ 3์นธ ์ด์ ์ ๊ฐ์ ํฉํ ๊ฐ์ด ํ์ฌ ๊ฐ์ด ๋๋ค.
-
[๋ฐฑ์ค-11279] ์ต๋ ํ / Python
11279๋ฒ: ์ต๋ ํ ์ฒซ์งธ ์ค์ ์ฐ์ฐ์ ๊ฐ์ N(1 ≤ N ≤ 100,000)์ด ์ฃผ์ด์ง๋ค. ๋ค์ N๊ฐ์ ์ค์๋ ์ฐ์ฐ์ ๋ํ ์ ๋ณด๋ฅผ ๋ํ๋ด๋ ์ ์ x๊ฐ ์ฃผ์ด์ง๋ค. ๋ง์ฝ x๊ฐ ์์ฐ์๋ผ๋ฉด ๋ฐฐ์ด์ x๋ผ๋ ๊ฐ์ ๋ฃ๋(์ถ๊ฐํ๋) ์ฐ์ฐ์ด๊ณ , x๊ฐ www.acmicpc.net import sys import heapq q = [] for _ in range(int(sys.stdin.readline())): num = int(sys.stdin.readline()) if not q and num == 0: print(0) else: if num == 0: print(-heapq.heappop(q)) else: heapq.heappush(q, -num) ํด์ค heapq๋ ์ต์ ํ๋ง ์ง์ํ๊ธฐ ๋๋ฌธ์ ์ต๋ ํ์ ๊ตฌํํ๋ ค๋ฉด ์..
-
[๋ฐฑ์ค-9375] ํจ์ ์ ์ ํด๋น / Python
9375๋ฒ: ํจ์ ์ ์ ํด๋น ์ฒซ ๋ฒ์งธ ํ ์คํธ ์ผ์ด์ค๋ headgear์ ํด๋นํ๋ ์์์ด hat, turban์ด๋ฉฐ eyewear์ ํด๋นํ๋ ์์์ด sunglasses์ด๋ฏ๋ก (hat), (turban), (sunglasses), (hat,sunglasses), (turban,sunglasses)๋ก ์ด 5๊ฐ์ง ์ด๋ค. www.acmicpc.net import sys def func(clothes): dic = {} for i in clothes: if i[1] in dic: dic[i[1]] += 1 else: dic[i[1]] = 1 cnt = 1 for i in dic.values(): cnt *= i + 1 return cnt - 1 for _ in range(int(sys.stdin.readline()))..