목록일상 (233)
Life Engineering
www.acmicpc.net/problem/2156 2156번: 포도주 시식 효주는 포도주 시식회에 갔다. 그 곳에 갔더니, 테이블 위에 다양한 포도주가 들어있는 포도주 잔이 일렬로 놓여 있었다. 효주는 포도주 시식을 하려고 하는데, 여기에는 다음과 같은 두 가지 규 www.acmicpc.net 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 n = int(input()) d=[0]*n array=[] for _ in range(n): array.append(int(input())) for i in range(n): if i==0: d[0]=array[0] elif i==1: d[1]=d[0]+array[1] elif i==2: d[2]=max(array[0], array[1]..
www.acmicpc.net/problem/9465 9465번: 스티커 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스의 첫째 줄에는 n (1 ≤ n ≤ 100,000)이 주어진다. 다음 두 줄에는 n개의 정수가 주어지며, 각 정수는 그 위치에 해당하는 스티커의 www.acmicpc.net 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 T = int(input()) for _ in range(T): n = int(input()) array=[] for _ in range(2): array.append(list(map(int, input().split()))) dp=[[0]*n for _ in range(2)] dp[0][0],..
www.acmicpc.net/problem/1912 1912번: 연속합 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다. www.acmicpc.net 1 2 3 4 5 6 7 8 N = int(input()) array=list(map(int, input().split())) d=[0]*N d[0]=array[0] for i in range(1,N): d[i]=max(d[i-1]+array[i], array[i]) print(max(d)) cs DP 문제. 연속 합을 저장하는 d 배열을 만들어서 각 배열을 순회할 때마다, 이전 연속 합+자기 값 vs 그냥 자기 값 해서..
출처: plzrun.tistory.com/entry/%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-%EB%AC%B8%EC%A0%9C%ED%92%80%EC%9D%B4PS-%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0 알고리즘 문제풀이(PS) 시작하기 이런건 고수들이나 써야 하지 않나 싶지만, 그래도 1년정도 공부하면서 이 분야를 어떻게 시작해야 할지 써보려 한다. 라고 운을 뗀다음 열심히 내 얘기만 했던 후속편이다. 내 인생사가 궁금하 plzrun.tistory.com DP - 1463, 11726, 11727, 9095, 10844, 11057, 2193, 9465, 2156, 11053, 11055, 11722, 11054, 1912, 2579, 1699, 213..