프로그래머스 - lv2 주식가격

이상현·2021년 3월 3일
0

알고리즘_문제풀이

목록 보기
16/45

조이스틱

문제는 프로그래머스에서 확인 할 수 있다.


✔ 접근방법

이중포문을 이용한다.

  1. 하나의 인덱스를 선택
  2. 그 뒤에 나오는 원소 중 조건에 해당하는 인덱스를 찾는다.
  3. 시간은 인덱스의 차이를 이용하여 계산한다.

✔ 코드

#include <string>
#include <vector>
#include <iostream>

using namespace std;

vector<int> solution(vector<int> prices) {
    vector<int> answer;
    int time = 0;
    bool input_check;

    for(int i=0; i<prices.size(); i++){
        time = 0;
        input_check = false;
        for( int j=i; j<prices.size(); j++){
            // 조건을 확인
            if( prices[i] > prices[j] || j == prices.size()-1 ){
                // 시간은 인덱스의 차이만큼으로 계산 가능
                time = j-i;
                answer.push_back(time);
                // cout << "time : " << time << endl;
                input_check = true;
                break;
            }
        }
    }

    return answer;
}

int main(void){
    vector<int> prices = {1,2,3,2,3};
    vector<int> ret;

    ret = solution( prices );
    
    for( auto elem: ret){
        cout << elem << " " ;
    }
    cout << endl;

    return 0;
}


👍 참고 사이트

profile
'당신을 한 줄로 소개해보세요'를 이 블로그로 대신 해볼까합니다.

0개의 댓글

관련 채용 정보