목록그리디 (7)
정화 코딩
https://www.acmicpc.net/problem/17939 #include #include using namespace std;int n;vector c;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin >> n; c = vector(n); for (int i = 0; i > c[i]; int ans = 0; int s = 0; int e = c.size(); while (s = maxv) { maxv = c[i]; maxi = i; } } for (int i = s;..
https://www.acmicpc.net/problem/30645 #include #include #include using namespace std;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int r, c, n; cin >> r >> c >> n; vector d(n); for (int i = 0; i > d[i]; } sort(d.begin(), d.end()); vector maxh(c, 0); int idx = 0; int ans = 0; for (int i = 0; i = n) break; maxh[j] = d[idx++]; ..
https://www.acmicpc.net/problem/15889 #include #include using namespace std;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n; cin >> n; vector loc = vector(n); vector avl = vector(n - 1); for (int i = 0; i > loc[i]; } for (int i = 0; i > avl[i]; } if (n == 1) { cout 0; i--) { if (loc[i] + avl[i] >= nxt) { ..
06-1 그리디 알고리즘 032. 동전 0 (백준 11047번) https://www.acmicpc.net/problem/11047 from sys import stdin n, k = map(int, stdin.readline().split()) coin = [int(stdin.readline()) for _ in range(n)] ans = 0 for i in range(n-1, -1, -1): ans += k // coin[i] k = k % coin[i] print(ans) 그리디 알고리즘의 문제들의 특징은 이 문제가 그리디 알고리즘을 이용해서 풀어야 한다는 것을 아는 상태에서는 매우 쉽지만, 그리디라는 아이디어 떠올리는 것 자체가 매우 어렵다는 것이다. 어려운 문제일수록 그렇다고 한다. 그래서 그..
04-3. 삽입 정렬 018. ATM (백준 11399번) https://www.acmicpc.net/problem/11399 from sys import stdin n = int(stdin.readline()) data = list(map(int, stdin.readline().split())) for i in range(1, n): value = data[i] for j in range(i-1, -1, -1): if(data[j] > value): data[j+1] = data[j] else: data[j+1] = value break if(j==0): data[0] = value sum = 0 for i in range(0, n): sum += (n-i) * data[i] print(sum) 저번에..
전부 파이썬으로 풀었고 다 푸는 데에 40-50분 정도 걸렸다. C문제를 다른 방법으로 푸느라 20-30분 정도 더 썼다. A. 사칙연산 (백준 10869번) https://www.acmicpc.net/problem/10869 import sys a, b = map(int, sys.stdin.readline().split()) print(a+b) print(a-b) print(a*b) print(a//b) print(a%b) (정답) B. 나머지 (백준 10430번) https://www.acmicpc.net/problem/10430 import sys a, b, c = map(int, sys.stdin.readline().split()) print((a+b)%c) print(((a%c)+(b%c))%c..
EDOC 코딩테스트 전날인 오늘, 코딩테스트 예비소집에 있는 문제들을 풀었다. 전부 파이썬으로 풀었고, 총 1시간 20분 걸렸다. A. A+B (백준 1000번) https://www.acmicpc.net/problem/1000 import sys a, b = map(int, sys.stdin.readline().split()) print(a+b) (정답) B. 꼬마 정민 (백준 11382번) https://www.acmicpc.net/problem/11382 import sys a, b, c = map(int, sys.stdin.readline().split()) print(a+b+c) (정답) C. 단어 길이 재기 (백준 2743번) https://www.acmicpc.net/problem/2743 ..