5-A 백준 순회공연 질문드립니다.
174
작성한 질문수 4
#include <bits/stdc++.h>
using namespace std;
typedef pair<int,int> pp;
typedef map<int,int> m;
priority_queue<int, vector<int>,greater<int>> pq;
void l(){ cout << "------- " << endl;}
int n; vector<pp> v;
// day 정렬
bool cSort(const pp &a, const pp &b){
if(a.second != b.second){//sort by day
return a.first < b.first;
}
return a.second > b.second; //sort by money
}
//input
void i(){
cin >> n;
int d,p;
for(int i=0; i<n; i++){
cin >> p;
cin >> d;
v.push_back({d,p});
}
sort( v.begin(), v.end() );
}
//solution
void s(){
int money=0;
for(pp dp : v){
pq.push(dp.second);//price
if(pq.size() > dp.first) pq.pop();// pop
}
while(!pq.empty()){
money += pq.top(); pq.pop();
}
cout << money;
}
void sol(){
i();s();
}
int main() {
sol();
return 0;
}
위 코드에서 cSort를 써서 소팅 하게 되면 틀리는데 혹시 어떤 문제인지 여쭤봐도 될까요?
sort( v.begin(), v.end() );
평범하게 소팅하면 통과가 되는데, cSort로 order by date, price로 정렬하면 에러가 터집니다.
답변 1
0
안녕하세요 ㅎㅎ
sort( v.begin(), v.end() ); 이부분을 어떻게 바꾸면 에러가 뜬다는 말씀이시죠?
감사합니다.
0
넵. 안녕하세요 큰돌님. sort -> cSort 함수로 변경하면 에러가 뜨게 됩니다ㅠ
bool cSort(const pp &a, const pp &b){
if(a.second != b.second){//sort by day
return a.first < b.first;
}
return a.second > b.second; //sort by money
}
코딩살구클럽 입장이 안됩니다
0
26
2
4-F 경우의 수 질문입니다.
0
26
2
코딩살구클럽 가입이 안됩니다.
0
53
2
살구 클럽에 대한 질문있습ㄴ디ㅏ
0
42
1
교안 158페이지 문의드립니다
0
37
2
코딩살구클럽 관련 건의사항
0
98
1
코살에 19942 다이어트 문제에 N의 범위가 빠져있슴니다
0
40
1
진행 방법 질문드립니다!
0
72
2
2-I) 왜 이 문제가 그래프이론 카테고리에 있는지 잘 모르겠습니다.
0
61
2
2주차 개념#12 트리 순회
0
32
2
백준사이트가 종료된다고 합니다.
0
303
2
백준 서비스 종료
9
923
1
sk 하이닉스 코테 대비
0
379
2
3-G 최댓값 질문
0
52
1
모듈러 연산 값이 10이 아닌 경우도 있지 않나요?
0
84
2
3-I 코드 질문드립니다.
0
63
2
3-N 질문 있습니다.
0
68
2
학습방법
0
104
2
4-H 질문 있습니다 (코드 리뷰)
0
67
2
코딩테스트 어디까지 준비해야 하는지 질문이 있습니다.
0
178
2
2-O 반례가 무엇일지 어떤 부분이 틀렸는지 잘 모르겠습니다.
0
70
2
2주차 개념 #4-2. 인접행렬 질문있습니다.
0
65
2
1-A 문제풀이 후 궁금한 점이 생겨서 질문드립니다.
0
52
2
조합 재귀 풀이 확인 해주시면 감사하겠습니다.
0
70
2





