백준 252

BOJ 2258 : 정육점

문제 링크 : boj.kr/2258 난이도 : G4 태그 : 정렬, 그리디 2258번: 정육점 첫째 줄에 두 정수 N(1 ≤ N ≤ 100,000), M(1 ≤ M ≤ 2,147,483,647)이 주어진다. N은 덩어리의 개수를 의미하고, M은 은혜가 필요한 고기의 양이다. 다음 N개의 줄에는 각 고기 덩어리의 무게와 가격을 나 www.acmicpc.net 코드 #include #define all(x) (x).begin(), (x).end() #define INF 0x7FFFFFFF using namespace std; using ll = long long; using ld = long double; using pii = pair; using pll = pair; bool comp(pii &a, pii..

PS 2024.04.16

BOJ 27740 : 시프트 연산

문제 링크 : boj.kr/27740 난이도 : G4 태그 : 애드혹, 그리디, 브루트포스 27740번: 시프트 연산 $0$과 $1$로 이루어진 길이 $N$의 수열 $A_1,A_2,\cdots,A_N$이 주어진다. 주어진 수열에는 다음과 같이 정의된 두 가지 연산을 원하는 대로 적용할 수 있다. L-시프트: 수열의 원소를 한 자리씩 앞으로 옮 www.acmicpc.net 코드 #include #define all(x) (x).begin(), (x).end() #define INF 0x7FFFFFFF using namespace std; using ll = long long; using ld = long double; using pii = pair; using pll = pair; int main() { ..

PS 2024.04.15

BOJ 27440 : 1로 만들기 3

문제 링크 : boj.kr/27440 난이도 : G4 태그 : BFS, 맵 27440번: 1로 만들기 3 첫째 줄에 1보다 크거나 같고, 1018보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 코드 #include #define all(x) (x).begin(), (x).end() #define INF 0x7FFFFFFF using namespace std; using ll = long long; using ld = long double; using pii = pair; using pll = pair; int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); ll n; cin >> n; unordered_map _um; _um[n..

PS 2024.04.14

BOJ 22981 : 휴먼 파이프라인

문제 링크 : boj.kr/22981 난이도 : G5 태그 : 정렬, 그리디 22981번: 휴먼 파이프라인 모든 상자를 최대한 빠르게 옮기는 경우의 작업 시간을 분 단위로 출력한다. www.acmicpc.net 코드 #include #define all(x) (x).begin(), (x).end() #define INF 0x7FFFFFFF using namespace std; using ll = long long; using ld = long double; using pii = pair; using pll = pair; int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); ll n, k; cin >> n >> k; vector arr(n); fo..

PS 2024.04.13

BOJ 18234 : 당근 훔쳐 먹기

문제 링크 : boj.kr/18234 난이도 : G3 태그 : 정렬, 그리디 18234번: 당근 훔쳐 먹기 첫 번째 줄에 N(1 ≤ N ≤ 200,000)과 T(N ≤ T ≤ 100,000,000)가 공백으로 구분되어 주어진다. 오리는 당근의 맛을 충분히 높이기 위해 항상 N이상인 T일 동안 재배한다. 다음 N개의 줄에 걸쳐서 i+1번째 www.acmicpc.net 코드 #include #define all(x) (x).begin(), (x).end() #define INF 0x7FFFFFFF using namespace std; using ll = long long; using ld = long double; using pii = pair; using pll = pair; int main() { ios..

PS 2024.04.12

BOJ 25577 : 열 정렬정렬 정

문제 링크 : boj.kr/25577 난이도 : G4 태그 : 정렬, 그리디 25577번: 열 정렬정렬 정 첫 번째 줄에 배열의 크기 $N(4 ≤ N​ ≤ 100\,000)$이 주어진다. 그다음 줄에 배열의 원소 $A_1, A_2, \cdots, A_n (-10^9 ≤ A_i ≤ 10^9, i \neq j $ 이면 $ A_i \neq A_j )$ 이 주어진다. 배열의 원소는 모두 정수이다 www.acmicpc.net 코드 #include #define all(x) (x).begin(), (x).end() #define INF 0x7FFFFFFF using namespace std; using ll = long long; using ld = long double; using pii = pair; using..

PS 2024.04.11

BOJ 27279 : 조사전달

문제 링크 : boj.kr/27279 난이도 : G4 태그 : 정렬, 그리디 27279번: 조사전달 만약 각 병사들이 순서대로 $\{1\}$, $\{2, 4\}$, $\{1, 2, 3, 4\}$, $\{2, 3, 4\}$, $\{1, 2, 3, 4\}$번 사역이 가능하다고 했다면, $1$번 사역에 $1$번 병사를, $2$번 사역에 $2$번 병사를, $3$번 사역에 $3$번과 $4$번 병 www.acmicpc.net 코드 #include #define all(x) (x).begin(), (x).end() #define INF 0x7FFFFFFF using namespace std; using ll = long long; using ld = long double; using pii = pair; using ..

PS 2024.04.10

BOJ 14719 : 빗물

문제 링크 : boj.kr/14719 난이도 : G5 태그 : 구현 14719번: 빗물 첫 번째 줄에는 2차원 세계의 세로 길이 H과 2차원 세계의 가로 길이 W가 주어진다. (1 ≤ H, W ≤ 500) 두 번째 줄에는 블록이 쌓인 높이를 의미하는 0이상 H이하의 정수가 2차원 세계의 맨 왼쪽 위치 www.acmicpc.net 코드 #include #define all(x) (x).begin(), (x).end() #define INF 0x7FFFFFFF using namespace std; using ll = long long; using ld = long double; using pii = pair; using pll = pair; int main() { ios::sync_with_stdio(0);..

PS 2024.04.09

BOJ 20159 : 동작 그만. 밑장 빼기냐?

문제 링크 : boj.kr/20159 난이도 : G4 태그 : 누적합 20159번: 동작 그만. 밑장 빼기냐? 카드의 개수 N (2 ≤ N ≤ 100,000)이 주어진다. 단, N은 짝수이다. 둘째 줄에 카드의 윗장부터 밑장까지 카드의 값 X (1 ≤ X ≤ 10,000)이 정수로 주어진다. www.acmicpc.net 코드 #include #define all(x) (x).begin(), (x).end() #define INF 0x7FFFFFFF using namespace std; using ll = long long; using ld = long double; using pii = pair; using pll = pair; int main() { ios::sync_with_stdio(0); cin...

PS 2024.04.08

BOJ 26651 : 팬램그

문제 링크 : boj.kr/26651 난이도 : G5 태그 : 수학, 해 구성하기 26651번: 팬램그 그램팬인 부분 문자열의 개수가 $X$개인 문자열 $S$를 찾아 출력한다. $S$는 길이가 $1$ 이상 $100\,000$ 이하이며 알파벳 대문자로 구성되어야 한다. 가능한 답이 여럿인 경우 그 중 아무거나 하나를 www.acmicpc.net 코드 #include #define all(x) (x).begin(), (x).end() #define INF 0x7FFFFFFF using namespace std; using ll = long long; using ld = long double; using pii = pair; using pll = pair; int main() { ios::sync_with_s..

PS 2024.04.07