프로그래머스 스킬체크 LV2 통과

A Code AM·2020년 5월 25일
0

Algorithm

목록 보기
8/9

와~ LV2 통과했다(...)

문제 1 < N개의 최소공배수 >

#include <iostream>
#include <vector>

using namespace std;

int gcd(int a, int b) {
    while (b != 0)
    {
        int r = a % b;
        a = b;
        b = r;
    }
    return a;
}

int lcm(int a, int b)
{
    return a * b / gcd(a, b);
}

int solution(vector<int> arr) {
    int answer = arr[0];
    for (int i = 1; i < arr.size(); i++)
    {
        answer = lcm(answer, arr[i]);
    }

    return answer;
}

문제 2 < 주식 가격 >

#include <string>
#include <vector>

using namespace std;

vector<int> solution(vector<int> prices) {
    vector<int> answer;

    for (int i = 0; i < prices.size(); i++)
    {
        int p = prices[i];
        int count = 0;
        for (int j = i; j < prices.size() -1; j++)
        {
            count++;
            if (prices[j] > prices[j + 1])
            {
                if (p > prices[j + 1])
                {
                    break;
                }
            }
        }

        answer.push_back(count);
    }

    return answer;
}

근데 2번째 문제는 뭔가.. 문제 자체가 애매한 느낌이라서 내가 푼 게 맞는지도 몰겠음..🤔
코딩게임(codin game)의 STOCK EXCHANGE LOSSES << 이 문제랑 비슷한데 이 쪽이 더 나아보여요

profile
배움기록

0개의 댓글