일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 탄막 이동
- 회의실 배정
- SWEA
- 영상 프레임 추출
- 유니티
- 탄막
- mysqld.sock
- 마우스 따라다니기
- 알고리즘
- 알고리즘 목차
- MySQL
- AI Hub
- 수 만들기
- 그리디알고리즘
- 3273
- 2020 KAKAO BLIND RECRUITMENT
- 단어 수학
- c#
- 탄막 스킬 범위
- 백준
- 우분투
- 문자열 압축
- 강의실2
- 원형
- 걷는건귀찮아
- 토글 그룹
- 3344
- 18249
- 자료구조 목차
- 윈도우
- Today
- Total
목록코딩테스트/그리디|힙 (8)
와이유스토리
https://www.acmicpc.net/problem/18185 18185번: 라면 사기 (Small) 라면매니아 교준이네 집 주변에는 N개의 라면 공장이 있다. 각 공장은 1번부터 N번까지 차례대로 번호가 부여되어 있다. 교준이는 i번 공장에서 정확하게 Ai개의 라면을 구매하고자 한다(1 ≤ i www.acmicpc.net v[i+1] > v[i+2]이면 v[i+1]을 5원으로 먼저 사기(나중에 3원, 3원 사는 것보다 적은 금액으로 살 수 있다) #include #include using namespace std; int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n; cin >> n; vector v(n+2, 0); ..
https://www.acmicpc.net/problem/8980 8980번: 택배 입력의 첫 줄은 마을 수 N과 트럭의 용량 C가 빈칸을 사이에 두고 주어진다. N은 2이상 2,000이하 정수이고, C는 1이상 10,000이하 정수이다. 다음 줄에, 보내는 박스 정보의 개수 M이 주어진다. M은 1이 www.acmicpc.net #include #include #include using namespace std; struct Info { int start, end, cnt; }; bool operator < (const Info &a, const Info &b) { if (a.end != b.end) return a.end < b.end; // 도착 번호 오름차순 else if (a.start != b..
https://www.acmicpc.net/problem/1715 1715번: 카드 정렬하기 정렬된 두 묶음의 숫자 카드가 있다고 하자. 각 묶음의 카드의 수를 A, B라 하면 보통 두 묶음을 합쳐서 하나로 만드는 데에는 A+B 번의 비교를 해야 한다. 이를테면, 20장의 숫자 카드 묶음과 30장 www.acmicpc.net #include #include #include using namespace std; int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n; cin >> n; int x; priority_queue pq; for(int i=0; i> x; pq.push(x); } long long answer = 0; w..
https://school.programmers.co.kr/learn/courses/30/lessons/17678 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include #include using namespace std; int timeToInt(string time) { return stoi(time.substr(0,2)) * 60 + stoi(time.substr(3,2)); } string intToTime(int time) { return to_string(time/60/10) + to_string(time/60%10) +..
https://www.acmicpc.net/problem/2839 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net #include #define INF 1234567891 using namespace std; int n, ans, a; int main() { ios_base::sync_with_stdio(0); cin.tie(0), cout.tie(0); cin >> n; ans = INF; for (int i = 0; i < n / 5 + 1; i++) { a = n - 5 * i; if (a % 3 == 0) ans..
※ 문제 https://www.acmicpc.net/problem/1931 1931번: 회의실 배정 (1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다. www.acmicpc.net ※ 풀이 1) 너무너무 유명한 `그리디 알고리즘` 문제입니다. 2) 회의 시간이 `일찍 끝나는 순`으로 오름차순 정렬합니다. 3) 현재 회의 시간이 끝나는 시간보다 후에 시작하는 회의가 존재할 때마다 횟수를 카운트하고, 다음 회의가 끝나는 시간을 저장하여 반복합니다. #include #include #include using namespace std; int n, a, b, ans; vector arr; int main() { ios_base::sync_with_stdio(0); cin.tie(0), c..
※ 문제 https://www.acmicpc.net/problem/1379 1379번: 강의실 2 첫째 줄에 강의의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에 걸쳐 각 줄마다 세 개의 정수가 주어지는데, 순서대로 강의 번호, 강의 시작 시간, 강의 종료 시간을 의미한다. 강의 www.acmicpc.net ※ 풀이 1) [회의실 배정]과 비슷한 문제로, `그리디 알고리즘`을 이용합니다. 다만, `회의실 배정`은 한 장소에서 최대 회의 수를 구하는 문제였다면, `강의실2`는 모든 장소에서 최대 강의 수를 진행하여 사용하는 최소 강의실 수와 각 강의별 강의실 번호를 구하는 문제입니다. 2) 처음 강의는 `일찍 시작하는 순`으로 오름차순 정렬합니다. 3) `우선순위 큐`를 이용..
https://www.acmicpc.net/problem/19638 19638번: 센티와 마법의 뿅망치 마법의 뿅망치를 센티의 전략대로 이용하여 거인의 나라의 모든 거인이 센티보다 키가 작도록 할 수 있는 경우, 첫 번째 줄에 YES를 출력하고, 두 번째 줄에 마법의 뿅망치를 최소로 사용한 횟수 www.acmicpc.net #include #include using namespace std; int main(void) { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int n, c, t, max = 0, count = 0, temp; priority_queue q; cin >> n >> c >> t; for (int i = 0; i ..