일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 5397
- 백준 17471
- 풀이
- heap
- 원판 돌리기
- dfs
- AVL 시간 복잡도
- 백준 1158
- 백준 17822
- 해시구현
- 백준
- qorwns
- Stack 이란
- c#
- 자료구조
- 별 찍기 10
- 시간 복잡도
- 스택의 특징
- 게리멘더링2
- 백준 5397
- C/C++ 구현
- 구현
- ㅣ풀이
- 해시 구현
- 백준 2447
- 1764
- 백준 1406
- 백준 17779
- 버킷 정렬
- 조세퍼스 순열
- Today
- Total
목록알고리즘 문제풀이/프로그래머스 (17)
홍시홍의 프로그래밍
분류 : 힙 요구사항 SJF 구현 풀이 고려해야될게 생각보다 많은 문제 인듯하다 1. 우선순위 큐에 아무것도 없을때 - 다음 프로세스가 들어온 시간부터 시작한다 - 끝난 시간은 지금 들어온 프로세스가 끝난 시간이다 2. 우선순위 큐에 프로세스가 있을때 - 현재 작업이 지금 시간보다 이전에 온 작업인지 확인한다 - 이전에 온 작업이라면 큐에 넣어준다 3. 현재 작업을 종료해주고 다음 작업을 고른다 - 다음 작업은 작업시간이 가장 짧은 것중 제일 처음 들어온 것이다 단순구현 문제인데 예외처리가 어려웠다 #include #include #include #include #include using namespace std; bool com(pair a, pair b) { if (a.second < b.second..
분류 : 힙 요구사항 해외 공장으로부터 물량 공급받는 횟수 최소로 하기 풀이 현재 요일 이전까지의 요일과 물량을 힙에 넣어준다 현재 요일이 지날 경우, 이전까지의 물량 중 제일 큰 물량을 넣어 준다. 그래야지 최소로 k일 수 만큼 버틸 수 있다. #include #include #include #include using namespace std; int solution(int stock, vector dates, vector supplies, int k) { int answer = 0; int dist=stock; priority_queue q; int past=0; while(true){ if(dist>=k) break; for(int i=past ; i=dates[i]){ past++; q.push(..
분류 : 힙 요구사항 최소 매움이 k보다 클때까지 조건대로 합차기 풀이 제일 안매운 거의 매움 정도 : heap의 탑 2번째로 안매운거 매움 정도 : 1번째 pop한 뒤, 그 다음 top 두개를 조건에 따라 섞어 준뒤 다시 넣어 준다 #include #include #include #include #include using namespace std; int solution(vector scoville, int K) { int answer = 0; int flag=0; priority_queue q; for(int i=0 ; i
요구사항 옷의 이름과 종류가 주어졌을때 이를 가지고 조합 구현하기 풀이 1, 2, 3이라는 종류의 옷이 3개, 4개, 5개 있을때 겹치지 않고 입을 수 있는 경우의 수는 3*4*5이다 이중에서 아무것도 안입은 수는 빼야하므로 -1을 하면 된다 아이디어가 중요한 문제인거 같다 #include #include #include #include #include using namespace std; map m; int a[31]; int solution(vector clothes) { int answer = 0; for (int i = 0; i < clothes.size(); i++) m[clothes[i][1]]++; int cnt = 0; for (auto iter = m.begin(); iter != m.e..