https://www.acmicpc.net/problem/13728행렬식과 여인자를 통해 $D(k)$를 확인한다.$k\\geq 3$ 일 때, $D(k)=D(k-1)+D(k-2)$ 를 만족한다.$k\\cdot k$ 행렬 $M$에 대하여 $M{11}\\cdot D
https://www.acmicpc.net/problem/16891두 물체 A와 B가 충돌했을 때의 속도는 문제에 나와있는 공식을 그대로 써주면 된다.충돌이 언제 끝나는지 고려해 주면 된다.A가 왼쪽으로 운동하면 벽과 충돌하여 운동 방향만 바뀐다.B가 왼쪽으로
https://www.acmicpc.net/problem/18194소들이 일렬로 설 수 있는 모든 경우의 수를 확인하면 오래 걸릴 것이다.문제에서 요구하는 값은 기댓값이기 때문에 조합론으로 접근할 수 있다.N 마리의 소 중 어떤 소 하나를 선택했다고 하자.그
[문제] > https://www.acmicpc.net/problem/9184 [풀이] 대표적인 다이나믹 프로그래밍(dp) 문제. 문제에 쓰여있는 대로 재귀함수 w(a,b,c)를 탑다운으로 구현하면 된다. 다만, 정말 그대로 하면 시간초과가 나기 때문에 메모이제이
https://www.acmicpc.net/problem/24040부피인 정수 N이 입력으로 주어진다. 높이가 1이므로 가로를 w, 세로를 h라 하면 w\*h = N 이다.장식용 띠는 빨간색, 초록색, 하얀색 총 3가지가 있으므로 예쁜 케이크를 만들려면(w+h
https://www.acmicpc.net/problem/31395오름차순이 되도록 구간을 만들고, 서로 다른 구간에 대해 구간의 길이를 더하면 된다.dp 배열을 사용하지 않고, 정수형 변수 2개로도 충분히 풀 수 있다.
https://www.acmicpc.net/problem/31404먼지가 있으면 규칙표 A, 없으면 규칙표 B를 따른다.여기서 중요한 것이, 같은 곳에서 같은 방향으로 여러 번 이동할 수 있다는 것이다.단, 먼지를 청소하지 못하고 무의미하게 사이클을 도는 것은
https://www.acmicpc.net/problem/31406입력 부분을 보니 폴더 N와 명령 Q가 각각 2,000보다 작거나 같기 때문에별 짓을 다 해도 시간초과는 안날 것 같았다.move를 dfs로 하려고 했으나.. 더 복잡할 것 같아 다른 방법을 사
https://www.acmicpc.net/problem/31408당직 근무를 개선할 수 없는 상황은 한 사람이 2일 연속으로 서는 경우이다.N이 짝수일 때, N=2k 라고 하고 k개의 상자 안에 병사를 2명 씩 배정한다고 하자.한 병사가 k+1번 당직을 선다
https://www.acmicpc.net/problem/31409모든 전화기는 자기 자신 또는 다른 전화기를 가르키고 있어야 한다.모든 전화기가 사이클 내부에 포함되어야 하는 것은 아니다.사이클이 만들어지지 않으려면 마지막 전화기는 자기 자신을 가르키고 있어
https://www.acmicpc.net/problem/31410왔던 위치를 되돌아가는 것은 효율적이지 않다.그렇기 때문에, 정렬을 통해 한 방향으로 이동해야 한다.가장 작은 x 좌표부터 이동하는 경우와 가장 큰 x 좌표부터 이동하는 경우의 결과 값은 서로
[문제] https://www.acmicpc.net/problem/31413 [풀이] 문제를 보고 2579의 계단 오르기가 떠올랐다. 헌혈을 할 때마다 D일을 쉰다면 최대 헌혈 횟수는 $\frac{N+D-1}{D}$ $(=ceil(N/D))$번이다. 0부터 최대
https://www.acmicpc.net/problem/29792브루트포스인줄 알았는데 M개의 캐릭터가 한정된 15분 내에 획득할 수 있는 메소의 최대값이였다.M개의 캐릭터는 가장 쌘 캐릭터로 구성하면 되고, 15분 내 획득 가능한 메소의 최대값은 배낭문제로
https://www.acmicpc.net/problem/1922기본적인 MST 문제프림 알고리즘으로 해결했다.pq 써서 visit 됐는 지 확인하면서 다 넣어주면 된다.
https://www.acmicpc.net/problem/17472MST 응용 문제로 BFS, DFS만 섞어주면 된다.섬을 찾아 구분해주고 다리를 모두 만들어보면 된다. N, M이 작기 때문에 시간은 여유롭다.다리를 만들 때 모든 (i, j) 에 대해 상하좌우
https://www.acmicpc.net/problem/28305각 날에 진행되는 세미나 수를 k로 정하고 배정을 할 수 있는지 없는 지 판단할 수 있다.$a_i$ 를 오름차순으로 정렬하여 이분탐색을 적용하면 $O(NlogN)$ 으로 풀 수 있다. func에
[문제] https://www.acmicpc.net/problem/27651 [풀이] 머리 가슴 배를 오름차순으로 정렬하면, 머리 배 가슴 순으로 되도록 해야한다. 머리와 가슴을 f를 기준으로 나누고, 가슴과 배를 조건에 맞게 이분탐색으로 나누어 준다. 머리와
https://www.acmicpc.net/problem/25168위상정렬 하면서W가 7보다 크거나 같으면 +1을 취하고 max 연산을 한다.사실 맞왜틀 열심히 해서 그냥 해설을 봤다... ㅎㅎ;;;내가 생각한 문제랑 좀 달랐다
https://www.acmicpc.net/problem/1766위상정렬이긴한데 또 오름차순으로 정렬하는 문제이다.기존 위상정렬은 deque 자료구조를 썼으나 큐 안에 있는 원소 중 가장 작은 것부터 뽑기 위해 그냥 heapq를 썼다.
[문제] https://www.acmicpc.net/problem/5624 [풀이] 나보다 앞에 있는 수 중에 아무거나 3개 더해서 나를 만들 수 있으면 좋은 수이다. 그냥 짜면 $O(N^3)$ 으로 안봐도 시간초과지만, $-100,000
2025.06.29 토요일에 ANA 동아리 주최 UCPC 연습 1회차를 진행했다.뉴비분들도 있어서 문제셋은 골드로 선정했다.3시간을 가졌고, 나는 뉴비분들 도와주면서 3문제를 해결했다.boj.kr/17374최종적으로, 비트코인을 얻기 위해 비트, 코인이 필요하다.베리는