hyunjin

[level 1] 예산 문제, sort 사용 본문

알고리즘 연습/프로그래머스

[level 1] 예산 문제, sort 사용

_h.j 2020. 7. 6. 12:15
728x90

https://programmers.co.kr/learn/courses/30/lessons/12982?language=cpp

 

난이도가 쉬운 문제였다.

#include <iostream>
#include <stdio.h>
#include <string>
#include <vector>
#include <algorithm>

using namespace std;

int solution(vector<int> d, int budget) {
    int answer = 0;
    sort(d.begin(),d.end());
    for(auto iter = d.begin();iter!=d.end();iter++){
        budget -= *iter;
        if(budget < 0 )break;
        else answer++;
    }
    return answer;
}

1. sort 함수 사용

  • 헤더파일 : <algorithm>
  • 3번째 인자로 내가 원하는 비교문을 넣을 수 있다. 이런 간단한 내림 오름 차순 말고 <key,value>이런 쌍이 있을 때 value값을 기준으로 key를 정렬할 수 있다.
bool compare(pair<int> a, pair<int> b){//first 기준 정렬
	if(a.firts == b. first) //first가 같다면
    	return a.second < b.second; //second를 오름차순으로
    return a.firts < b. first;//first가 다르다면 first 기준 오름차순으로
}

2.iterator 사용 

728x90