문제 링크입니다: https://www.acmicpc.net/problem/2965
솔직히 왜 동적계획법 기초 문제에 수록되어있는지 모르겠습니다.
처음에는 동적계획법으로 접근하려고 했으나 간단하게 질문을 코드로만 구현하면 되는 문제였기 때문에 DP로 풀지 않았습니다.
/*
캥거루 세마리가 사막에서 놀고 있다.
사막에는 수직선이 하나 있고, 캥거루는 서로 다른 한 좌표 위에 있다.
한번 움직일 때, 바깥쪽의 두 캥거루 중 한마리가 다른 두 캥거루 사이의 정수 좌표로 점프한다.
한 좌표 위에 있는 캥거루가 두 마리 이상일 수는 없다.
캥거루는 최대 몇번 움직일까?
*/
#include <iostream>
#include <cstring> //memset
using namespace std;
//int cache[100];
int A, B, C; //캥거루 세마리
int main(void)
{
cin >> A >> B >> C;
//memset(cache, 0, sizeof(cache));
//A와 B 사이와 B와 C 사이의 길이를 비교한 후 큰 쪽 길이를 반환
//즉, 한칸씩 뛰기만 하면 된다.(왜 DP 문제에 수록된건지 모르겠다)
int sum = B - A > C - B ? B - A - 1 : C - B - 1;
cout << sum << endl;
return 0;
}
개발환경:Visual Studio 2017
지적, 조언, 질문 환영입니다! 댓글 남겨주세요~
'알고리즘 > BOJ' 카테고리의 다른 글
백준 9461번 파도반 수열 (0) | 2018.02.09 |
---|---|
백준 1912번 연속합 (0) | 2018.02.07 |
백준 11066번 파일 합치기 (3) | 2018.02.07 |
백준 9251번 LCS (4) | 2018.02.06 |
백준 1520번 내리막 길 (0) | 2018.02.05 |