코딩 테스트 준비! (백준)/GREEDY 6

[그리디]백준 1201번 NMK(C++)

https://www.acmicpc.net/problem/1201 내 인생의 첫 플래티넘 문제이다 뇌 척수가 뽑힐정도의 고통을 받고 결국 풀이를 봤다. 참고한 블로그이다https://hongjw1938.tistory.com/191 알고리즘 풀이 - 백준 1201(NMK, 그리디(Greedy))관련글 그리디 알고리즘 관련 포스팅은 여기를 참조 1. 개요 문제의 링크는 여기를 참조 문제의 내용은 아래의 더보기를 클릭하여 참조 더보기 1~N 수를 한 번씩 이용해서 LIS와 길이가 M이고, LDShongjw1938.tistory.com너무 예쁘게 설명을 잘 해놓았는데나의 개판같은 설명이 이해가 안되면,, 여기서 보면서 이해해라 그림도 그려주신 아주 멋진분이시다 먼저 -1이 나오는 조건문부터 해결해주어야 한다. ..

[그리디]백준 1744번 수 묶기(C++)

https://www.acmicpc.net/problem/1744 읽어보면쉽다 단순히오름차순 정렬해주고 제일 작은 음수 들끼리 곱해주고, 제일 큰 양수들끼리 곱해주고 그 중에서 다 묶고 난 후, 남은 음수가 1개일때, 남은 양수가 1개일때 등조건만 나눠주면 된다 #include #include using namespace std;int main(){ int n; cin >> n; int arr[n]; for (int i = 0; i { cin >> arr[i]; } sort(arr, arr + n); int result = 0; for (int i = n - 1; i >= 0; i--) { if (arr[i] >= 0 &&..

[그리디]백준 1541번 잃어버린 괄호(C++)

https://www.acmicpc.net/problem/1541 문제는 간단하다 최소가 되면 됨 잘 생각해봐라-가 나온 이후에+가 나온다면?-앞에 괄호를 쳐줘서 모든 + 들을 다 더한 후 음수로 바꿀 것이다 그렇다면 -가 나온 이후에+가 나오고 또 -가 나오면? 그냥 또 빼주면 된다 그니까 -가 1개라도 나오면 그 이후의 수는 모두 -로 바꿔주는 것이 최소이다.#include #include using namespace std;int main(){ string s; cin >> s; string temp; int result = 0; char trigger = '+'; int first = 0; for (int i = 0; i { if (s[i]..

[그리디]백준 1931번 회의실 배정(C++)

.https://www.acmicpc.net/problem/1931 그리디 알고리즘을 배운다면무조건 나오는 문제 중 하나이다. 이건 그냥 외우다 시피 해라!~! https://source-sc.tistory.com/59 [탐욕 알고리즘][2] - 회의실 배정 문제유명한 Greedy 알고리즘 - 회의실 배정 문제 회의실 배정 문제는 그리디 알고리즘에서 빠지지 않고 등장하는 문제이다. 이문제는 각 회의마다 시작시간과 종료시간이 정해져있고 하나의 회의실에source-sc.tistory.com이 블로그에서 회의실 배정 문제에 대해 굉장히 자세히 알려주고 있다! 그리디 알고리즘을 사용하는 건 알겠는데 어떻게 사용하냐! 끝나는 시간을 기준으로 생각하면 된다 예를들어 q에 들어가는 회의 시간은"종료 시간이 가장 빠른..

[그리디]백준 11047번 동전 0 (C++)

https://www.acmicpc.net/problem/11047흠.. 너무쉽다 이거 딱봐도 그리디 문제 조건에 Ai 가 Ai-1의 배수라 했으니까 그냥 간단하게 가장 큰 수부터 작은 수 까지 반복적으로 더해주고, 커지면 다음으로 넘어가면 된다#include using namespace std;int main(){ int n, k; cin >> n >> k; int arr[n]; for (int i = 0; i { cin >> arr[i]; } int money = 0, count = 0; int temp = n - 1; while (money != k) { if (money + arr[temp] > k) { ..

[Greedy] 백준 10972번 다음 순열 (C++)

https://www.acmicpc.net/problem/10972 해당 문제는 순열의 길이를 입력하고 (n) , 1과n으로 이루어진 특정 순열을 입력 시, 다음 순열을 출력하는 프로그램이다.     --다음은 틀린 풀이..--뭐 내가 앞서, n과m이라는 순열 문제를 풀어보았으니, 그렇게 한번 풀어볼까? (참고)https://lee-soo.tistory.com/17 [DFS] 백준 15649번 N과 M (1,2,3) (C++)https://www.acmicpc.net/problem/15649 이 문제를 풀면서 나에게도 큰 시련이 찾아왔다. 도저히 못풀겠다 사실 글쓴이는 아직 코테 초보수준이라 해본게 브루트 포스랑, dp 랑.. 자료구조 뭐 이런것들인lee-soo.tistory.com 그냥, 모든 경우의 ..