본문 바로가기

백준 문제풀이

(72)
[Baekjoon 11652] 카드 - Java [Silver IV] 카드 - 11652 문제 링크 성능 요약 메모리: 32528 KB, 시간: 392 ms 분류 자료 구조, 해시를 사용한 집합과 맵, 정렬 제출 일자 2024년 4월 18일 13:32:51 문제 설명 준규는 숫자 카드 N장을 가지고 있다. 숫자 카드에는 정수가 하나 적혀있는데, 적혀있는 수는 -262보다 크거나 같고, 262보다 작거나 같다. 준규가 가지고 있는 카드가 주어졌을 때, 가장 많이 가지고 있는 정수를 구하는 프로그램을 작성하시오. 만약, 가장 많이 가지고 있는 정수가 여러 가지라면, 작은 것을 출력한다. 입력 첫째 줄에 준규가 가지고 있는 숫자 카드의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 출력..
[Baekjoon 2839] 설탕 배달 - Java [Silver IV] 설탕 배달 - 2839 문제 링크 성능 요약 메모리: 14212 KB, 시간: 120 ms 분류 다이나믹 프로그래밍, 그리디 알고리즘, 수학 제출 일자 2024년 3월 7일 10:16:53 문제 설명 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그램 봉지와 5킬로그램 봉지가 있다. 상근이는 귀찮기 때문에, 최대한 적은 봉지를 들고 가려고 한다. 예를 들어, 18킬로그램 설탕을 배달해야 할 때, 3킬로그램 봉지 6개를 가져가도 되지만, 5킬로그램 3개와 3킬로그램 1개를 배달하면, 더 적은 개수의 봉지를 배달할 수 있다. 상근이가 설탕을 정확하게 N킬..
[Baekjoon 1158] 요세푸스 문제 - Python [Silver IV] 요세푸스 문제 - 1158 문제 링크 성능 요약 메모리: 31120 KB, 시간: 44 ms 분류 자료 구조, 구현, 큐 제출 일자 2023년 11월 26일 12:00:20 문제 설명 요세푸스 문제는 다음과 같다. 1번부터 N번까지 N명의 사람이 원을 이루면서 앉아있고, 양의 정수 K(≤ N)가 주어진다. 이제 순서대로 K번째 사람을 제거한다. 한 사람이 제거되면 남은 사람들로 이루어진 원을 따라 이 과정을 계속해 나간다. 이 과정은 N명의 사람이 모두 제거될 때까지 계속된다. 원에서 사람들이 제거되는 순서를 (N, K)-요세푸스 순열이라고 한다. 예를 들어 (7, 3)-요세푸스 순열은 이다. N과 K가 주어지면 (N, K)-요세푸스 순열을 구하는 프로그램을 작성하시오. 입력 첫째 ..
[Baekjoon 3182] 한동이는 공부가 하기 싫어! - JAVA [Silver III] 한동이는 공부가 하기 싫어! - 3182 문제 링크 성능 요약 메모리: 14348 KB, 시간: 148 ms 분류 브루트포스 알고리즘, 그래프 이론, 그래프 탐색 제출 일자 2023년 11월 19일 12:31:07 문제 설명 H-ALGO 회원인 한동이는 공부하는것을 좋아하지 않는다. 하지만 약삭빠르게도 한동이는 공부도 하지 않으면서 어려운 시험을 통과하고 싶어한다. 그러던 와중 어느 날, 한동이의 동기가 한동이에게 선배들 중 누군가가 시험의 답을 알고있다는 꿀정보를 알려주었다. 하지만 안타깝게도 그 정보는 사실이 아니어서 선배들조차도 정답은 알지 못하고 다른 누군가가 알고 있을거 같다는 정보만 알고 있는 것이었다. 한동이는 택민이에게 시험 정답을 물어보았다. 택민이는 답을 모른다고..
[Baekjoon 25945] 컨테이너 재배치 - JAVA [Silver III] 컨테이너 재배치 - 25945 문제 링크 성능 요약 메모리: 87460 KB, 시간: 464 ms 분류 그리디 알고리즘, 수학, 정렬 문제 설명 항구의 컨테이너 하치장 바닥에는 컨테이너를 쌓을 수 있는 칸이 일렬로 총 n$n$개가 그려져 있고, 현재 하치장에는 총 m$m$개의 컨테이너가 쌓여 있다. 개별 컨테이너의 높이는 모두 1$1$로 동일하며, 각 칸에 쌓을 수 있는 컨테이너의 개수에는 제한이 없다. 즉, ai$a_i$ (1≤i≤n$1 ≤ i ≤ n$)가 현재 i$i$번째 칸에 쌓여있는 컨테이너의 개수를 나타내면, m=∑i=1nai$m = \sum_{i=1}^{n}{a_i}$의 관계가 만족된다. 현재와 같이 높이에 아무 제한이 없이 컨테이너가 쌓여 있을 경우 각 칸별로 쌓여있는..
[Baekjoon 25943] 양팔저울 - JAVA [Silver IV] 양팔저울 - 25943 문제 링크 성능 요약 메모리: 15232 KB, 시간: 156 ms 분류 그리디 알고리즘, 구현 문제 설명 $1$부터 $n$까지 번호가 매겨진 $n$개의 자갈이 있다. 이 자갈들을 다음 절차에 따라 양팔저울에 올려놓는다. $1$번 자갈을 왼쪽, $2$번 자갈을 오른쪽에 올려놓는다. $i = 3, \dots , n$번 자갈 각각에 대해서 차례로 다음 과정 중 하나를 수행한다. 만약 양팔저울이 평형을 이루는 경우, $i$번 자갈을 왼쪽에 올려 놓는다. 만약 양팔저울이 평형을 이루지 않는 경우, $i$번 자갈을 가벼운 쪽에 올려 놓는다. 모든 자갈을 위의 규칙에 따라 올려 놓은 후에도 양팔저울은 평형을 이루지 않을 수 있다. 이경우 가벼운 쪽에 무게추를 올려서 균형..
[Baekjoon 26110] Palindrome Type - JAVA [Gold III] Palindrome Type - 26110 문제 링크 성능 요약 메모리: 17504 KB, 시간: 156 ms 분류 재귀, 문자열 문제 설명 A palindrome string is a word which reads the same backward as forward, such as madam or racecar. In this problem we only consider strings with lowercase alphabets. We newly define the types of palindromes. If a string is not a palindrome, we try to make it a palindrome by removing the minimum number of cha..
[Baekjoon 26111] Parentheses Tree - JAVA [Silver II] Parentheses Tree - 26111 문제 링크 성능 요약 메모리: 59836 KB, 시간: 356 ms 분류 자료 구조, 스택, 문자열 문제 설명 A rooted ordered tree $T$ can be expressed as a string of matched parentheses $p(T)$. The string representation $p(T)$ can be defined recursively. As a base case, a tree consisting of a single node is expressed by a pair of parentheses (). When a rooted ordered tree $T$ consists of a root node and ..