1793 : 타일링

풀이

타일링 가즈아~~~!!!

코드

#include <iostream>
#include <string>
#include <algorithm>
using namespace std;

int n;
string dp[255] = { "1", "1" };

string deohagi(string a, string b) {
	int sum = 0;
	string res;
	while (!a.empty() || !b.empty() || sum) {
		if (!a.empty()) sum += a.back() - '0', a.pop_back();
		if (!b.empty()) sum += b.back() - '0', b.pop_back();
		res.push_back((sum % 10) + '0');
		sum /= 10;
	}
	reverse(res.begin(), res.end());
	return res;
}

int main() {
    cin.tie(0); ios_base::sync_with_stdio(0);
    
	for (int i = 2; i <= 250; i++)
		dp[i] = deohagi(deohagi(dp[i-2], dp[i-2]), dp[i-1]);
	while (cin >> n) cout << dp[n] << "\n";
    
	return 0;
}

아무말

백준, 백준 온라인 저지, BOJ, Baekjoon Online Judge, C, C++, 씨, 씨쁠쁠, JAVA, algorithm, 자바, 알고리즘, 자료구조, 문제, 문제 풀이, 풀이

wookje.kwon's profile image

wookje.kwon

2018-03-13 12:43

Read more posts by this author