백준(339)
-
[백준 BOJ] 27918번 탁구 경기 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/27918 27918번: 탁구 경기 달구와 포닉스는 탁구 치는 것을 좋아한다. 윤이는 오늘도 탁구를 치는 달구와 포닉스를 보고, 누가 경기에서 승리할지 예측해 보기로 했다. 달구와 포닉스가 탁구 경기를 진행하는 규칙은 다음 www.acmicpc.net 접근 방법 - 사칙연산을 이용한 기초 알고리즘 문제 백준의 27918번 문제는 사칙연산을 통해 간단하게 해결할 수 있는 문제이다. 해당 문제는, 아래의 규칙을 통해 탁구 경기의 우승자가 결정될 때 경기가 종료된 뒤의 점수판을 출력해야 하는 문제이다. - N회의 라운드가 모두 끝난 뒤, 득점을 더 많이 한 사람이 승리한다. - N회의 라운드가 진행되는 동안 누군가가 2점 앞서게 되면, 즉시 ..
2023.10.08 -
[백준 BOJ] 9237번 이장님 초대 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/9237 9237번: 이장님 초대 입력은 두 줄로 이루어져 있다. 첫째 줄에는 묘목의 수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄에는 각 나무가 다 자라는데 며칠이 걸리는지를 나타낸 ti가 주어진다. (1 ≤ ti ≤ 1,000,000) www.acmicpc.net 접근 방법 - 정렬을 활용한 그리디 알고리즘 문제 백준의 9237번 문제는 정렬을 이용하여 해결해야 하는 그리디 알고리즘 문제이다. 해당 문제는, 하나의 나무를 심는 데에 하루가 걸린다고 가정하였을 때 나무가 모두 자라고 이장님을 가장 빨리 초대할 수 있는 날이 언제인지를 출력해야 하는 문제이다. 이때 나무들이 모두 자라는 데에 최소 소요 일수를 구해야 하기 ..
2023.10.07 -
[백준 BOJ] 2828번 사과 담기 게임 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/2828 2828번: 사과 담기 게임 상근이는 오락실에서 바구니를 옮기는 오래된 게임을 한다. 스크린은 N칸으로 나누어져 있다. 스크린의 아래쪽에는 M칸을 차지하는 바구니가 있다. (M> n >> m >> j; int basket = 1; int result = 0; for (int i = 0; i > num; if (basket > num) { while (basket != num) { basket--;result++; } } else if (basket + m - 1 < num) { while (basket + m - 1 != num) { basket++;result++; } } } cout
2023.10.04 -
[백준 BOJ] 27327번 時間 (Hour) (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/27327 27327번: 時間 (Hour) X 日は何時間か,単位 (時間) を省いて出力せよ. www.acmicpc.net 접근 방법 - 기초적인 사칙연산 문제 백준의 27327번 문제는 기초적인 사칙연산을 활용하여 해결하는 문제이다. 해당 문제는, 입력값으로 주어지는 일수에 대해 시간 단위로 변환하여 출력하면 되는 문제이다. 기초 상식이기도 하고 문제에 제시되어 있지만, 1일은 24시간이다. 따라서 곱셈 연산과 입출력만 적절히 할 수 있다면, 매우 쉽게 해결할 수 있을 것이라 예상된다. 이 문제는 매우 쉬운 관계로 설명을 생략하니, 문제 해결에 어려움을 겪고 있다면 아래 코드를 참고해 보길 바란다. 필자는 아래처럼 코드를 작성하여 문제를 ..
2023.10.02 -
[백준 BOJ] 10810번 공 넣기 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/10810 10810번: 공 넣기 도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 매겨져 있다. 또, 1번부터 N번까지 번호가 적혀있는 공을 매우 많이 가지고 있다. 가장 처음 바구니에는 공이 www.acmicpc.net 접근 방법 - 배열을 활용한 기초 알고리즘 문제 백준의 10810번 문제는 배열을 응용하여 간단하게 해결할 수 있는 문제이다. 해당 문제는, 주어진 바구니에 숫자가 적힌 공을 특정 규칙에 맞게 넣는다고 하였을 때, 각 바구니에 있는 공의 숫자를 출력하면 되는 문제이다. 문제에도 기재되어 있으나, 공을 넣는 규칙에 대해선 아래에 함께 정리해 놓았다. - 각 줄마다 a b c로 입력이 주..
2023.10.02 -
[백준 BOJ] 8979번 올림픽 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/8979 8979번: 올림픽 입력의 첫 줄은 국가의 수 N(1 ≤ N ≤ 1,000)과 등수를 알고 싶은 국가 K(1 ≤ K ≤ N)가 빈칸을 사이에 두고 주어진다. 각 국가는 1부터 N 사이의 정수로 표현된다. 이후 N개의 각 줄에는 차례대로 각 www.acmicpc.net 접근 방법 - 구조체에 대한 정렬 응용문제 백준의 8979번 문제는 구조체 정렬에 있어 다소 심화적인 부분을 다루고 있는 문제이다. 해당 문제는, 금/은/동메달의 개수에 기준을 두어 특정 나라의 등수를 출력해야 하는 문제이다. 이때 필자는 개인적으로, 공동 순위의 개념이 포함되어 있음을 알리며 이 점에 대해 주의할 필요가 있다고 본다. 이걸 어떻게 고려하며 코드를 ..
2023.09.30