반응형
https://programmers.co.kr/learn/courses/30/lessons/42587
글쓴이의 답
개인적인 풀이 임으로
이것보다 더 좋은 알고리즘은 많음...
이렇게도 풀이하는구나.. 공유하기 위해 올림...
#include <string>
#include <vector>
#include <deque>
#include <utility>
#include <iostream>
using namespace std;
int solution(vector<int> priorities, int location) {
int answer = 0;
deque<pair<int, int>> data;
int num = 1;
for(int i=0; i < priorities.size(); i++){
pair<int, int> insert = make_pair(num, priorities[i]);
data.push_back(insert);
num++;
}
deque<pair<int, int>> result;
while(0 != data.size()){
int i=0;
for(i=1; i < data.size(); i++){
if(data[0].second < data[i].second){
pair<int, int> temp = data[0];
data.pop_front();
data.push_back(temp);
break;
}
}
if(i == data.size()){
pair<int, int> temp = data[0];
result.push_back(temp);
data.pop_front();
}
}
for(int i=0; i<result.size(); i++){
if(result[i].first == location+1){
answer = i+1;
}
}
return answer;
}
꾸준히 하다보면 실력이 늘겠지..
반응형
'코딩테스트' 카테고리의 다른 글
[프로그래머스][C++] 소수 찾기 (0) | 2022.03.22 |
---|---|
[프로그래머스][C++] 가장 큰 수 (0) | 2022.03.22 |
[프로그래머스][C++] 전화번호 목록 (0) | 2022.03.21 |
[프로그래머스][C++] 빛의 경로 사이클 (0) | 2022.03.21 |
[프로그래머스][C++] 튜플 (0) | 2022.03.21 |