본문 바로가기

GREEDY

(15)
[BOJ] 12018번 Yonsei TOTO (C++) https://www.acmicpc.net/problem/12018 12018번: Yonsei TOTO 첫째 줄에는 과목 수 n (1 ≤ n ≤ 100)과 주어진 마일리지 m (1 ≤ m ≤ 100)이 주어진다. 각 과목마다 2줄의 입력이 주어지는데 첫째 줄에는 각 과목에 신청한 사람 수 Pi과 과목의 수강인원 Li이 주어 www.acmicpc.net #include #include #include using namespace std; int main() { int n, m, num, p, l; cin >> n >> m; vector vv; for(int i = 0; i > p >> l; vector v; for(int j = 0; j > num;..
[BOJ] 11508번 2+1 세일 (C++) https://www.acmicpc.net/problem/11508 11508번: 2+1 세일 KSG 편의점에서는 과일우유, 드링킹요구르트 등의 유제품을 '2+1 세일'하는 행사를 하고 있습니다. KSG 편의점에서 유제품 3개를 한 번에 산다면 그중에서 가장 싼 것은 무료로 지불하고 나머지 두 www.acmicpc.net #include #include #include using namespace std; int main() { int n, c; cin >> n; vector v; for(int i = 0; i > c; v.push_back(c); } sort(v.begin(), v.end(), greater()); int sum = 0; for(int i = 0; i < n..
[BOJ] 1461번 도서관 (C++) https://www.acmicpc.net/problem/1461 1461번: 도서관 세준이는 도서관에서 일한다. 도서관의 개방시간이 끝나서 세준이는 사람들이 마구 놓은 책을 다시 가져다 놓아야 한다. 세준이는 현재 0에 있고, 사람들이 마구 놓은 책도 전부 0에 있다. 각 책 www.acmicpc.net #include #include #include #include using namespace std; bool compare(int a, int b){ return a > b; } int main() { int n, m, p, res = 0; vector book_l; vector book_r; cin >> n >> m; for(int i = 0; i > p; if(p < ..
[BOJ] 1931번 회의실 배정 (C++) https://www.acmicpc.net/problem/1931 1931번: 회의실 배정 (1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다. www.acmicpc.net #include #include #include using namespace std; bool compare(pair& a, pair& b){ if(a.second == b.second) return a.first > n; vector v; for(int i = 0; i > a >> b; v.push_back({a, b}); } sort..
[BOJ] 6068번 시간 관리하기 (C++) https://www.acmicpc.net/problem/6068 6068번: 시간 관리하기 성실한 농부 존은 시간을 효율적으로 관리해야 한다는 걸 깨달았다. 그는 N개의 해야할 일에 (1 b.second; } int main() { int n, t, s, time; vector v; cin >> n; for(int i = 0; i > t >> s; v.push_back({t, s}); } sort(v.begin(), v.end(), compare); time = v[0].second - v[0].first; for(int i = 1; i < n; i++){ if(time < v[i].second) time -= v[i].first; else { time = v[i].seco..
[BOJ] 1263번 시간 관리 (C++) https://www.acmicpc.net/problem/1263 1263번: 시간 관리 진영이는 캠프 조교를 온 후 효율적으로 시간 관리를 해야 한다는 것을 깨달았다. 진영이는 하루에 해야 할 일이 총 N개가 있고 이 일들을 편하게 1번부터 N번까지 차례대로 번호를 붙였다. 진영 www.acmicpc.net #include #include #include using namespace std; bool compare(pair& a, pair& b) { return a.second > b.second; } int main() { int n, t, s, tmp = 0, left = 0; cin >> n; vector v(n); for (int i = 0; i > t >> s; ..
[BOJ] 23028번 5학년은 다니기 싫어요 (C++) https://www.acmicpc.net/problem/23028 23028번: 5학년은 다니기 싫어요 2022년 1학기에는 전공 수업이 4과목, 비전공 수업이 3과목이 주어진다. 아리는 전공 2과목, 비전공 2과목을 듣게 되면 전공학점이 66학점, 총 학점이 132학점이 된다. 그래서 총 8학기 안에 졸업을 www.acmicpc.net #include using namespace std; int main() { int n, a, b, x, y; cin >> n >> a >> b; int rs = 8 - n; // 남은 학기 int rg = 66 - a; // 남은 전공 학점 int rc = 130 - b; // 남은 총 학점 for(int i = 0; i > x >> y..