N

(프로그래머스 c++)풍선 터트리기 본문

프로그래머스 알고리즘/3단계

(프로그래머스 c++)풍선 터트리기

naeunchan 2020. 10. 13. 09:42
728x90
반응형

velog.io/@woga1999/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4-%ED%92%8D%EC%84%A0-%ED%84%B0%ED%8A%B8%EB%A6%AC%EA%B8%B0C

 

프로그래머스 - 풍선 터트리기(C++)

문제 출처: https://programmers.co.kr/learn/courses/30/lessons/68646Level 3만약 풍선이 1,2,3,4,5 순서로 있다고 가정하고 해당 문제의 시뮬레이션을 돌리면 파악이 가능하다. 제일 즁요한 조건 인접할 때 =

velog.io

문제 이해를 못해서 윗 분 블로그를 보고 했다.

나중에 다시 공부하도록 해야겠다...

#include <string>
#include <vector>

using namespace std;

int solution(vector<int> a) {
    int answer = 0;
    int dp1[1000001], dp2[1000001];
    
    dp1[0] = a[0];
    for(int i = 1; i < a.size(); i++)
    {
        if(a[i] < dp1[i - 1])
            dp1[i] = a[i];
        else
            dp1[i] = dp1[i - 1];
    }
    
    dp2[a.size() - 1] = a[a.size() - 1];
    for(int i = a.size() - 2; i >= 0; i--)
    {
        if(a[i] < dp2[i + 1])
            dp2[i] = a[i];
        else
            dp2[i] = dp2[i + 1];
    }
    
    for(int i = 0; i < a.size(); i++)
    {
        if(a[i] <= dp1[i] || a[i] <= dp2[i])
            answer++;
    }
    
    return answer;
}
728x90
반응형