Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

1R/2016 09 24: Difference between revisions

From ZeroWiki
No edit summary
No edit summary
Line 49: Line 49:
= 아이디어 =
= 아이디어 =
== 15이원준 ==
== 15이원준 ==
 
* 가치가 큰 보석 부터 넣을 수 있는 가장 작은 가방에 차례대로 넣는다.
* 끝
== 박인서 ==
== 박인서 ==


== 곽정흠 ==
== 곽정흠 ==



Revision as of 02:00, 26 September 2016

오늘의 문제

참가자

코드

15이원준

#include<iostream>
#include<algorithm>
#include<set>
#include<utility>
#include<queue>

using namespace std;

int main(){
  priority_queue<pair<int, int>> que;
  multiset<int> bag;
  int N, K;
  long long int ans = 0;
  cin >> N >> K;
  for(int i = 0; i<N; i++){
    int tmp1, tmp2;
    scanf("%d %d", &tmp1, &tmp2);
    que.push(make_pair(tmp2, tmp1));
  }
  for(int i = 0; i<K; i++){
    int tmp;
    scanf("%d", &tmp);
    bag.insert(tmp);
  }
  while(que.size() && bag.size()){
    pair<int,int> tmp = que.top();
    que.pop();
    auto p = bag.lower_bound(tmp.second);
    if(p != bag.end()){
      ans+= tmp.first;
      bag.erase(p);
    }
  }
  cout<< ans<<endl;
}

박인서

곽정흠

아이디어

15이원준

  • 가치가 큰 보석 부터 넣을 수 있는 가장 작은 가방에 차례대로 넣는다.

박인서

곽정흠