์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- ๊ทธ๋ฆฌ๋์๊ณ ๋ฆฌ์ฆ
- ์คํ๋ง
- ์ฐ์ ์์ํ
- ๋ฐฑ์คํ์ด
- ChatGPT
- ๊ทธ๋ฆฌ๋
- ๋จ์ํ ์คํธ
- ์ปดํจํฐ๊ณตํ
- ๋ฐฑ์ค
- ์๋ฃ๊ตฌ์กฐ
- ๋ชจ๋ฐ์ผ์ฑํ๋ก๊ทธ๋๋ฐ
- ๋ฐฑ์ค1436
- ์น๊ฐ๋ฐ
- ์ปด๊ณต
- spring
- ํ์ด์ฌ
- ๋ฆฌ์กํธ๋ค์ดํฐ๋ธ
- ์น๊ฐ๋ฐ๊ธฐ๋ก
- ๊ฐ๋ฐ์
- boj11653
- ์ดํญ๊ณ์
- ๋ฆฌ์กํธ
- ์ฝ๋ฉ
- ์ปด๊ณต์
- ํ๋ก ํธ์ค๋
- ์๊ณ ๋ฆฌ์ฆ
- ํ๋ก๊ทธ๋๋ฐ
- ์ฝ๋ฉํ ์คํธ
- SSE
- ๋ฐฑ์๋
- Today
- Total
๋ชฉ๋ก์๋ฃ๊ตฌ์กฐ (11)
๐ป๐ญ๐ง๐
๋ฌธ์ https://www.acmicpc.net/problem/10775 10775๋ฒ: ๊ณตํญ ์์ 1 : [2][?][?][1] ํํ๋ก ๋ํน์ํฌ ์ ์๋ค. 3๋ฒ์งธ ๋นํ๊ธฐ๋ ๋ํน์ํฌ ์ ์๋ค. ์์ 2 : [1][2][3][?] ํํ๋ก ๋ํน ์ํฌ ์ ์๊ณ , 4๋ฒ์งธ ๋นํ๊ธฐ๋ ์ ๋ ๋ํน ์ํฌ ์ ์์ด์ ์ดํ ์ถ๊ฐ์ ์ธ ๋ํน์ ๋ถ www.acmicpc.net ์ฝ๋ import sys input = sys.stdin.readline def find_parent(x): if parent[x] == x: return x P = find_parent(parent[x]) parent[x] = P return parent[x] def union(x, y): x = find_parent(x) y = find_parent(y)..
๋ฌธ์ https://www.acmicpc.net/problem/1781 1781๋ฒ: ์ปต๋ผ๋ฉด ์์ฑ ์กฐ๊ต๋ ๋ํธ์๊ฒ N๊ฐ์ ๋ฌธ์ ๋ฅผ ์ฃผ๊ณ ์, ๊ฐ๊ฐ์ ๋ฌธ์ ๋ฅผ ํ์์ ๋ ์ปต๋ผ๋ฉด์ ๋ช ๊ฐ ์ค ๊ฒ์ธ์ง ์ ์ ํ์๋ค. ํ์ง๋ง ๋ํธ์ ์ฐ๋ฅผ๋ฏํ ์์ ๊ฐ์ ์์ฌํ ์์ฑ ์กฐ๊ต๋ ๊ฐ๊ฐ์ ๋ฌธ์ ์ ๋ํด ๋ฐ๋๋ผ www.acmicpc.net ์ฝ๋ import heapq import sys input = sys.stdin.readline array = [] for _ in range(n): deadline, ramen = map(int, input().split()) array.append((deadline, ramen)) array.sort() queue = [] for i in array: heapq.heappush(queue,i[1]..
๋ฌธ์ https://www.acmicpc.net/problem/2437 2437๋ฒ: ์ ์ธ ํ๋์ ์ํ ์ ์ธ์ ์ด์ฉํ์ฌ ๋ฌผ๊ฑด์ ๋ฌด๊ฒ๋ฅผ ์ธก์ ํ๋ ค๊ณ ํ๋ค. ์ด ์ ์ธ์ ์ ํ์ ๋์๋ ๋ฌผ๊ฑด์ด๋ ์ถ๋ฅผ ์ฌ๋ ค๋๋ ์ ์๊ฐ ๋ฌ๋ ค ์๊ณ , ์ํ์ ๊ธธ์ด๋ ๊ฐ๋ค. ๋ํ, ์ ์ธ์ ํ์ชฝ์๋ ์ ์ธ์ถ๋ค๋ง ๋ www.acmicpc.net ์ฝ๋ import sys input = sys.stdin.readline n = int(input()) array= list(map(int, input.split())) array.sort() target = 1 for i in array: if target < i: break target += i print(target) ํ์ด target ์ด๋ผ๋ ๋ณ์์ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ ์ ์ธ์ถ๋ค์ ์ฐจ๋ก๋๋ก ๋ํ๋ค...
๋ฌธ์ https://www.acmicpc.net/problem/1339 1339๋ฒ: ๋จ์ด ์ํ ์ฒซ์งธ ์ค์ ๋จ์ด์ ๊ฐ์ N(1 โค N โค 10)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์ ๋จ์ด๊ฐ ํ ์ค์ ํ๋์ฉ ์ฃผ์ด์ง๋ค. ๋จ์ด๋ ์ํ๋ฒณ ๋๋ฌธ์๋ก๋ง ์ด๋ฃจ์ด์ ธ์๋ค. ๋ชจ๋ ๋จ์ด์ ํฌํจ๋์ด ์๋ ์ํ๋ฒณ์ ์ต๋ www.acmicpc.net ์ฝ๋ import sys n = int(sys.stdin.readline()) alpha = list('ABCDEFGHIJKLMNOPQRSTUVWXYZ') num = [0]*26 #์ํ๋ฒณ์ ์ซ์๋ฅผ ํ ๋นํ๋์ง ์ฌ๋ถ check = [0]*10 #์ซ์๋ฅผ ์ฌ์ฉํ๋์ง ์ฌ๋ถ array = [] #์ํ๋ฒณ ๋ฌธ์์ด์ ๋ด์ for i in range(n): array.append(list(sys.stdi..
๋ฌธ์ https://www.acmicpc.net/problem/1092 1092๋ฒ: ๋ฐฐ ์ฒซ์งธ ์ค์ N์ด ์ฃผ์ด์ง๋ค. N์ 50๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๋ค. ๋์งธ ์ค์๋ ๊ฐ ํฌ๋ ์ธ์ ๋ฌด๊ฒ ์ ํ์ด ์ฃผ์ด์ง๋ค. ์ด ๊ฐ์ 1,000,000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๋ค. ์ ์งธ ์ค์๋ ๋ฐ์ค์ ์ M์ด ์ฃผ์ด์ง๋ค. M์ 10,000๋ณด www.acmicpc.net ์ฝ๋ import sys n = int(sys.stdin.readline()) #ํฌ๋ ์ธ ์ limit = [[0 for i in range(2)] for j in range(n)] #๊ฐ ํฌ๋ ์ธ์ ๋ฌด๊ฒ ์ ํ์ 0์ด์, ๊ฐ ํฌ๋ ์ธ์ด ์ด๋์ํจ ๋ฐ์ค์ ์๋ฅผ 1์ด์ ๋ฃ๋ ๋ฐฐ์ด array = list(map(int, sys.stdin.readline().split())) #ํฌ๋ ์ธ์ ๋ฌด๊ฒ..
๋ฌธ์ https://www.acmicpc.net/problem/1715 1715๋ฒ: ์นด๋ ์ ๋ ฌํ๊ธฐ ์ ๋ ฌ๋ ๋ ๋ฌถ์์ ์ซ์ ์นด๋๊ฐ ์๋ค๊ณ ํ์. ๊ฐ ๋ฌถ์์ ์นด๋์ ์๋ฅผ A, B๋ผ ํ๋ฉด ๋ณดํต ๋ ๋ฌถ์์ ํฉ์ณ์ ํ๋๋ก ๋ง๋๋ ๋ฐ์๋ A+B ๋ฒ์ ๋น๊ต๋ฅผ ํด์ผ ํ๋ค. ์ด๋ฅผํ ๋ฉด, 20์ฅ์ ์ซ์ ์นด๋ ๋ฌถ์๊ณผ 30์ฅ www.acmicpc.net ์ฝ๋ import sys import heapq n = int(sys.stdin.readline()) heap = [] for i in range(n): heapq.heappush(heap,int(sys.stdin.readline())) total = 0 if n!=1: while len(heap)!=0: a = heapq.heappop(heap) b = heapq.heappo..
๋ฌธ์ https://www.acmicpc.net/problem/1041 1041๋ฒ: ์ฃผ์ฌ์ ์ฒซ์งธ ์ค์ N์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค์ ์ฃผ์ฌ์์ ์ฐ์ฌ ์๋ ์๊ฐ ์ฃผ์ด์ง๋ค. ์์ ๊ทธ๋ฆผ์์ A, B, C, D, E, F์ ์ฐ์ฌ ์๋ ์๊ฐ ์ฐจ๋ก๋๋ก ์ฃผ์ด์ง๋ค. N์ 1,000,000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๊ณ , ์ฐ์ฌ ์๋ ์ www.acmicpc.net ์ฝ๋ import sys N = int(sys.stdin.readline()) array = list(map(int, sys.stdin.readline().split())) one = min(array) two = 100 # 50 * 2 = ๋ ๋ฉด์ ์ต๋ ํฉ three = 150 # 50 * 3 = ์ธ ๋ฉด์ ์ต๋ ํฉ if N == 1: # N==1์ด๋ผ๋ฉด ์ด ์ฃผ์ฌ์ ์ซ์..
๋ฌธ์ https://www.acmicpc.net/problem/11000 11000๋ฒ: ๊ฐ์์ค ๋ฐฐ์ ์ฒซ ๋ฒ์งธ ์ค์ N์ด ์ฃผ์ด์ง๋ค. (1 โค N โค 200,000) ์ดํ N๊ฐ์ ์ค์ Si, Ti๊ฐ ์ฃผ์ด์ง๋ค. (0 โค Si < Ti โค 109) www.acmicpc.net ์ฝ๋ import sys import heapq n = int(sys.stdin.readline()) array = [] for i in range(n): array.append(list(map(int, sys.stdin.readline().split()))) array.sort() room = [] heapq.heappush(room,array[0][1]) for i in range(1,n): if array[i][0] < room[0]..
์ฐ์ ์์ ํ๋? ์ฐ์ ์์๊ฐ ๊ฐ์ฅ ๋์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ฅ ๋จผ์ ์ญ์ ํ๋ ์๋ฃ๊ตฌ์กฐ ์ฐ์ ์์ ํ๋ ๋ฐ์ดํฐ๋ฅผ ์ฐ์ ์์์ ๋ฐ๋ผ ์ฒ๋ฆฌํ๊ณ ์ถ์ ๋ ์ฌ์ฉํจ. ๊ตฌํ ํ๋ ๋ฐฉ๋ฒ 1) ๋จ์ํ ๋ฆฌ์คํธ๋ฅผ ์ด์ฉํ์ฌ ๊ตฌํ 2) ํ(heap)์ ์ด์ฉํ์ฌ ๊ตฌํ ์ฐ์ ์์ ํ ๊ตฌํ ๋ฐฉ์ ์ฝ์ ์๊ฐ ์ญ์ ์๊ฐ ๋ฆฌ์คํธ O(1) O(N) ํ(Heap) O(logN) O(logN) ๋จ์ํ N๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ํ์ ๋ฃ์๋ค๊ฐ ๋ชจ๋ ๊บผ๋ด๋ ์์ ์ ์ ๋ ฌ๊ณผ ๋์ผํ๋ค. ์ด ๊ฒฝ์ฐ ์๊ฐ ๋ณต์ก๋๋ O(NlogN) ํ(Heap)์ ํน์ง ํ์ ์์ ์ด์ง ํธ๋ฆฌ ์๋ฃ๊ตฌ์กฐ์ ์ผ์ข ์ด๋ค. ํ์์๋ ํญ์ ๋ฃจํธ ๋ ธ๋(root node)๋ฅผ ์ ๊ฑฐํ๋ค. ์ต์ ํ(min heap) ๋ฃจํธ ๋ ธ๋๊ฐ ๊ฐ์ฅ ์์ ๊ฐ์ ๊ฐ์ง๋ค ๋ฐ๋ผ์ ๊ฐ์ด ์์ ๋ฐ์ดํฐ๊ฐ ์ฐ์ ์ ์ผ๋ก ์ ๊ฑฐ๋๋ค. ์ต๋ ํ(max he..
ํ์ ์ผ์ ํ ๋น์จ(20%)๋ก ๋์๋ฅผ ์์ฑํ์ฌ ํ์ ์ ๋ ฅํ๊ณ , ์ผ์ ํ ๋น์จ(10%)๋ก ํ์์ ์ ์๋ฅผ ๊บผ๋ด๋ ํ๋ก๊ทธ๋จ์ ์์ฑํด๋ณด์. ์์ฐ์๊ฐ ์๋น์๋ณด๋ค ๋น ๋ฅด๋ฏ๋ก ํ๊ฐ ํฌํ ์ํ๊ฐ ๋ ๊ฐ๋ฅ์ฑ์ด ๋์์ง๋ค. 1. time() ํจ์๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์๋ time.h ํ์ผ์ ํฌํจํด์ผํจ. 2. rand() % 5 == 0 -> 20/100 = 1/5 => 20%์ ํ๋ฅ rand() % 10 == 0 -> 10/100 = 1/10 => 10%์ ํ๋ฅ #include #include #include //=====์ํํ ์ฝ๋ ์์===== #define MAX_QUEUE_SIZE 5 typedef int element; typedef struct { // ํ ํ์ element data[MAX_QUEUE_SIZE]; int ..