[ 알고리즘 ]/Greedy

    [프로그래머스] 큰 수 만들기

    📌문제 https://programmers.co.kr/learn/courses/30/lessons/42883 🎖️난이도 Level 2 ✔️풀이 # sol def solution(number, k): num_l = len(number) l = num_l - k answer = ['0' for _ in range(l)] i = 0 for x in range(l): if i == k+x : answer[x:] = number[i:] return ''.join(answer) tmp_list = number[i:k+x+1] # tmp_max = max(tmp_list) ==> 테스트케이스 10번 시간초과 오류! # tmp_max 구하기 tmp_max = '0' for m in tmp_list: # '9'보다 큰 ..

    [프로그래머스] 체육복

    📌문제 https://programmers.co.kr/learn/courses/30/lessons/42862 🎖️난이도 Level 1 ✔️풀이 # sol1) set()이용, 빌려준 사람인 reserve를 제거해가기 def solution(n, lost, reserve): intersection = set(lost) & set(reserve) lost_set = set(lost) - intersection reserve_set = set(reserve) - intersection ok = 0 for l in lost_set: if reserve_set == {}: break if l-1 in reserve_set: ok += 1 reserve_set.remove(l-1) elif l+1 in reserve..

    [백준] 11501. 주식

    📌문제 https://www.acmicpc.net/problem/11501 🎖️난이도 ✔️풀이 #define _CRT_SECURE_NO_WARNINGS #include #include #include #include #include #include #include #include #include #include // operator typeid using namespace std; int T(0); int N(0); long long solution(vector day) { long long answer(0); long long max_val = *max_element(day.begin(), day.end()); long long max_index(0); for (int i = 0; i < N; i++)..

    [백준] 11497. 통나무 건너뛰기

    📌문제 https://www.acmicpc.net/problem/11497 🎖️난이도 ✔️풀이 #define _CRT_SECURE_NO_WARNINGS #include #include #include #include #include #include #include #include #include #include // operator typeid using namespace std; int T; int N; int main(void) { cin >> T; for (int i = 0; i > N; vector L_v; int l; for (int j = 0; j > l; L_v.push_back(l); } sort(L_v.begin(), L_v.e..