백준 23559 (C++) 밥
PS/BOJ 2022. 2. 8. 23:20

https://www.acmicpc.net/problem/23559 23559번: 밥 제주대 학생회관 식당에는 두 개의 메뉴가 있다. 코너 A로 가면 5,000원짜리 메뉴를 먹을 수 있고, 코너 B로 가면 1,000원짜리 메뉴를 먹을 수 있다. 준원이는 대면 수업이 시작되는 바람에 이제 남 www.acmicpc.net 틀린 코드 #include #include #include #include using namespace std; int n, x; vector v; bool cmp(pair p1, pair p2) { double a = (double)(p1.first) / (double)(p1.second); double b = (double)(p2.first) / (double)(p2.second); i..

백준 20044 (C++) Project Teams
PS/BOJ 2021. 9. 30. 13:00

아이디어 n의 입력을 받고 n*2 만큼의 팀원을 둘씩 짝지으면 된다. 그렇다면 오름차순으로 정렬하고 제일 작은 수 + 제일 큰 수 식으로 팀을 맺으면 최소의 평균값이 나올 것이다. https://www.acmicpc.net/problem/20044 20044번: Project Teams 입력은 표준입력을 사용한다. 입력의 첫 번째 행에는 팀 수를 나타내는 양의 정수 n(1 ≤ n ≤ 5,000)이 주어진다. 그 다음 행에 학생 si 의 코딩 역량 w(si)를 나타내는 2n개의 양의 정수가 공백으로 www.acmicpc.net 코드 #include #include #include using namespace std; using ll = long long; const int INF = 1e8; int mai..

백준 1931 (C++) 회의실 배정
PS/BOJ 2021. 9. 30. 12:49

그리디 알고리즘 종료시간 기준 정렬 코드 #include #include #include using namespace std; int n, m, a, b, cnt; int main() { ios_base::sync_with_stdio(0); cin.tie(0), cout.tie(0); cin >> n; vector v; for(int i = 0; i > a >> b; v.push_back({ b, a }); // 종료시간 기준 정렬 } sort(v.begin(), v.end()); a = 0, cnt = 0; for(int i = 0; i < v.size(); i++) { if(v[i].second < a) continue; a = v[i].first; cnt++; // 최..

백준 2180 (C++) 소방서의 고민
PS/BOJ 2021. 9. 28. 21:08

https://www.acmicpc.net/problem/2180 2180번: 소방서의 고민 첫째 줄에 화재 발생 건수 n이 주어진다. n은 200,000 이하의 양의 정수이다. 둘째 줄부터 n개의 줄에 각각 한 줄에 한 쌍씩 a와 b가 입력된다. a와 b는 40,000 이하의 음이 아닌 정수이다. www.acmicpc.net 문제 이해 문제의 입출력을 보자. 입력 3 2 0 1 2 0 3 출력 5 운이 좋게도 주어진 입력 예시 순서를 따라가면 출력이 나온다. 화재를 진압하는데 걸리는 시간은 at + b이므로 1번째 소방서에서 0초 소비, (2 * 0 + 0) 2번째 소방서에선 2초 소비, (1 * 0 + 2) 3번째 소방서에선 3초 소비 (0 * 2 + 3) 하므로 총 5초(정확히는 단위 시간) 이 소..