31472번 - 갈래의 색종이 자르기 31472번: 갈래의 색종이 자르기첫 번째 줄에 정수 $W$가 주어진다. ($2 \le W \le 20\,000$, $W$는 짝수) 항상 답이 존재하는 경우만 입력으로 주어진다.www.acmicpc.net 1회 양갈래 컵 A번 문제다. 가장 쉬운 문제인만큼 풀이도 쉽다. 원래 사각형의 절반 $W$가 주어지므로 2를 곱한 후 제곱근 해주면 한 변의 길이가 된다. 단, 출력할 때 정수로 출력하는 것을 잊지 말자. 이것 때문에 틀리신 분들이 조금 존재했고, 예제만 보시고 /3*4 하신 분들도 많았다. 여담으로 이 문제는 원래 점이 여러 개 주어지고 컨벡스 헐을 구한 후 반으로 나누고 컨벡스 헐 내부에 있는 점들이 반으로 나눈 선분의 왼쪽에 있는지 오른쪽에 있는지 판별하려는..
문제 링크: https://www.acmicpc.net/problem/15728 15728번: 에리 - 카드 첫째 줄에 N, K(0 ≤ K < N ≤ 100)가 주어지고 둘째 줄에는 N개의 ‘공유 숫자카드’에 적혀 있는 정수, 셋째 줄에는 N개의 ‘팀 숫자카드’에 적혀 있는 정수가 주어진다. 이 수는 -10,000보다 크거나 www.acmicpc.net 문제 풀이 처음에는 우선순위 큐로 풀려했다가 N과 K의 범위가 작아서 브루트 포스로 풀었다. 전부 확인해서 곱이 가장 큰 팀 카드들을 뽑았다. set()을 이용해서 원소를 뽑는데 remove를 이용했다. O(1)로 없앨 수 있기 때문에 시간단축에 도움이 된다. 코드
문제 링크: https://www.acmicpc.net/problem/2056 2056번: 작업 수행해야 할 작업 N개 (3 ≤ N ≤ 10000)가 있다. 각각의 작업마다 걸리는 시간(1 ≤ 시간 ≤ 100)이 정수로 주어진다. 몇몇 작업들 사이에는 선행 관계라는 게 있어서, 어떤 작업을 수행하기 위해 www.acmicpc.net 문제 풀이 위상 정렬에 다이나믹 프로그래밍을 이용하는 문제이다. 사실상 웰노운 문제인 1005번의 아이디어를 가져왔다. 상관 관계가 있는 작업의 시간을 가져와 max()로 최댓값을 갱신해줘야 한다. 어떤 작업을 수행하기 위해 반드시 먼저 완료되어야 하기 때문이다. dp 테이블을 만들어서 가장 시간이 오래 걸린 것을 출력하면 된다. 이 역시도 max()를 이용하면 된다. 물론 ..
문제 링크: https://www.acmicpc.net/problem/22993 22993번: 서든어택 3 좋은 전투 순서가 존재해서 준원이만 생존하고 나머지 플레이어가 모두 죽게 만들 수 있다면 Yes를, 반대로 전투가 어떤 순서로 이루어져도 준원이가 절대 최후의 생존자가 될 수 없다면 No를 www.acmicpc.net 문제 풀이 그리디 문제이다. 두 사람이 동시에 싸우지 못하니 그냥 준원이가 차례차례 한사람씩 싸운다 생각하자. 우리는 준원이를 최후의 생존자로 만들어야 하니 최적의 조건으로 맞춰줘야 하기 때문이다. 최후의 생존자로 만들기 위해서는 좋은 순서를 만들어줘야 하는데 약한 적부터 강한 적으로 오름차순 정렬을 해주면 된다. 약한 적이랑 만나면서 공격력을 올려주면 되는 것이다. 하지만 최후의 생..
문제 링크: https://www.acmicpc.net/problem/20365 20365번: 블로그2 neighbor 블로그를 운영하는 일우는 매일 아침 풀고 싶은 문제를 미리 정해놓고 글을 올린다. 그리고 매일 밤 각각의 문제에 대하여, 해결한 경우 파란색, 해결하지 못한 경우 빨간색으로 칠한 www.acmicpc.net 문제 풀이 그리디 문제이다. 1번 과정을 보면 연속된 임의의 문제들을 선택할 수 있다. 따라서 일단 파란색 혹은 빨간색으로 모든 문제를 칠한다. 최솟값을 구해야하므로 파란색으로 모든 문제를 칠하고 빨간색으로 칠할 때와 빨간색으로 모든 문제를 칠하고 파란색으로 칠할 때 중에 최소가 되는 것을 택하면 된다. 예제 입력 1을 보면 BBRBRBBR은 1번 과정에 따라서 이렇게 선택할 수 있..
- Total
- Today
- Yesterday
- Brute Force
- 백트래킹
- convex hull
- Python
- 구현
- MST
- set
- Implementation
- TEXT
- BOJ
- 시뮬레이션
- Simulation
- 위상 정렬
- Topological Sorting
- 브루트포스
- 수학
- 정렬
- 그리디
- 볼록 껍질
- Sorting
- 집합과 맵
- greedy
- 다이나믹 프로그래밍
- backtracking
- DP
- 파이썬
- 너비 우선 탐색
- 최소 신장 트리
- math
- BFS
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |