[항주전기oj] 2047 - 소의 EOF 쇠고기 꼬치(귀속)

소의 EOF 쇠고기 꼬치


제목 링크: 클릭하여 보기
이것은 전형적인 귀속 문제이다. 귀속은 하나의 대형 복잡한 문제를 층층이 원래의 문제와 비슷한 규모가 비교적 작은 문제로 바꾸어 해답을 구하는 것이다. 귀속 전략은 소량의 프로그램만 있으면 문제 풀이 과정에 필요한 여러 차례의 중복 계산을 묘사할 수 있기 때문에 귀속 문제를 해결하는 관건은 소위 가장 간단한 문제를 찾는 데 있다.
이 문항: n자의 해결 방안을 M(n)으로 설정합니다.1. 마지막 자리가'o'가 아닐 때: 앞의 n-1 문자에 대한 요구가 없다(전자는 당연히'o-o'가 없는 요구에 부합된다). 마지막 문자는 두 가지 선택이 있다. 모두 2*M(n-1)이다.마지막 자리가'o'일 때: n-1 문자가'o'가 아니면 2*M(n-2) 합계:2*[M(n-1)+M(n-2)]종이 있다.AC 코드:
#include

int main(){
    int n;
    long long a[45];
    a[1] = 3;a[2] = 8;
    for(int i=3;i<45;i++){
        a[i] = 2*(a[i-2]+a[i-1]);
    }
    while(~scanf("%d",&n)){
        printf("%lld
"
,a[n]); } return 0; }

기술: n마다 대응하는 값을 수조로 저장하여 호출할 때 시간을 절약합니다.

좋은 웹페이지 즐겨찾기