티스토리 뷰
문제 링크
https://www.acmicpc.net/problem/9465
9465번: 스티커
문제 상근이의 여동생 상냥이는 문방구에서 스티커 2n개를 구매했다. 스티커는 그림 (a)와 같이 2행 n열로 배치되어 있다. 상냥이는 스티커를 이용해 책상을 꾸미려고 한다. 상냥이가 구매한 스티
www.acmicpc.net

N이 1일 때는 아래, 위의 두 값 중 최대값이 되고
2일 때는 이전 대각선과의 합 중 최대값이 됩니다.
3이상일 때는 이전 대각선과의 합과 이전 대각선 왼쪽과의 합 중 최대값이 정답이 됩니다.
구현 코드
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <iostream> | |
#include <algorithm> | |
#define endl '\n' | |
#define fastio cin.sync_with_stdio(false); cin.tie(nullptr); | |
using namespace std; | |
const int MAX = 100000; | |
int dp[2][MAX]; | |
int main(){ | |
fastio; | |
int test_case; | |
cin >> test_case; | |
while(test_case--){ | |
int n; | |
cin >> n; | |
for(int i=0;i<2;i++) | |
for(int j=0;j<n;j++) | |
cin >> dp[i][j]; | |
dp[0][1] += dp[1][0]; | |
dp[1][1] += dp[0][0]; | |
for(int j=2;j<=n;j++){ | |
dp[0][j] += max(dp[1][j-1], dp[1][j-2]); | |
dp[1][j] += max(dp[0][j-1], dp[0][j-2]); | |
} | |
cout << max(dp[0][n-1], dp[1][n-1]) << endl; | |
} | |
return 0; | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
test_case = int(input()) | |
for _ in range(test_case): | |
n = int(input()) | |
dp = [] | |
for i in range(2): | |
dp.append(list(map(int, input().split()))) | |
dp[0][1] += dp[1][0] | |
dp[1][1] += dp[0][0] | |
for j in range(2,n): | |
dp[0][j] += max(dp[1][j-1], dp[1][j-2]) | |
dp[1][j] += max(dp[0][j-1], dp[0][j-2]) | |
print(max(dp[0][n-1], dp[1][n-1])) |
'Coding Test > 백준' 카테고리의 다른 글
[C++/Python] 백준 11053 - 가장 긴 증가하는 부분 수열 (0) | 2020.07.31 |
---|---|
[C++/Python] 백준 2156 - 포도주 시식 (0) | 2020.07.30 |
[C++/Python] 백준 2193 - 이친수 (0) | 2020.07.28 |
[C++/Python] 백준 11057 - 오르막 수 (0) | 2020.07.27 |
[C++/Python] 백준 10844 - 쉬운 계단 수 (0) | 2020.07.24 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- hive
- 스파크
- import
- 팰린드롬 구하기
- 하둡
- 합친 lis
- 외발 뛰기
- Jaeha's Safe
- 2225
- 삼각형 위의 최대 경로 수 세기
- HDFS
- Django
- microwaving lunch boxes
- 삼각형 위의 최대 경로
- python
- 배열과 문자열
- 출전 순서 정하기
- C++
- 두니발 박사의 탈옥
- 종만북
- pyspark
- Sqoop
- 완전탐색
- 백준
- Hadoop
- HiveQL
- 코딩인터뷰 완전분석
- 분할정복
- 하이브
- 알고스팟
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
글 보관함