[CodeUp] #3719-블럭 채우기 6(관계기반설계)

chrmqgozj·2022년 1월 22일
0

CodeUp

목록 보기
26/48
#include <iostream>
#include <vector>
using namespace std;

vector<long long> v;
vector<long long> s;

long long b(int n);

long long a(int n){
	if(v[n-1]!=-1){
		return v[n-1]; 
	}
	else{
		return v[n-1] = (2*b(n-1)+a(n-2)+2)%100007;
	}
}

long long b(int n){
	if(s[n-1]!=-1){
		return s[n-1];
	}
	else{
		return s[n-1] = (b(n-1) + a(n))%100007;
	}
}


int main(){
	int n;
	cin >> n;
	
	v.resize(n+1,-1);
	s.resize(n+1,-1);
	v[0] = 2;
	v[1] = 7;
	s[0] = 2;
	s[1] = 9;
	cout << a(n);
}

0개의 댓글

관련 채용 정보