Notice
Recent Posts
Recent Comments
250x250
Creative Code
데이터 분석 본문
728x90
https://school.programmers.co.kr/learn/courses/30/lessons/250121
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
#include <string>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
bool compare1(vector<int>a, vector<int>b) { // 정렬기준이 "code"
return a[0] < b[0];
}
bool compare2(vector<int>a, vector<int>b) { // 정렬기준이 "date"
return a[1] < b[1];
}
bool compare3(vector<int>a, vector<int>b) { // 정렬기준이 "maximum"
return a[2] < b[2];
}
bool compare4(vector<int>a, vector<int>b) { // 정렬기준이 "remain"
return a[3] < b[3];
}
vector<vector<int>> solution(vector<vector<int>> data, string ext, int val_ext, string sort_by) {
vector<vector<int>> answer;
for (int i = 0; i < data.size(); i++) {
if (ext == "code" && data[i][0] < val_ext) { //code가 기준보다 작은경우
answer.push_back(data[i]);
}
else if (ext == "date" && data[i][1] < val_ext) { // date가 기준보다 작은경우
answer.push_back(data[i]);
}
else if (ext == "maximum" && data[i][2] < val_ext) { // maximum이 기준보다 작은경우
answer.push_back(data[i]);
}
else if (ext == "remain" && data[i][3] < val_ext) { // remain이 기준보다 작은경우
answer.push_back(data[i]);
}
}
if (sort_by == "code") {
sort(answer.begin(), answer.end(), compare1);
}
else if (sort_by == "date") {
sort(answer.begin(), answer.end(), compare2);
}
else if (sort_by == "maximum") {
sort(answer.begin(), answer.end(), compare3);
}
else {
sort(answer.begin(), answer.end(), compare4);
}
return answer;
}
728x90
'프로그래머스 코테 문제 > LEVEL 1' 카테고리의 다른 글
가장 많이 받은 선물 (0) | 2024.04.12 |
---|---|
이웃한 칸 (0) | 2024.04.12 |
붕대 감기 (0) | 2024.04.12 |