-
백준 11727 - 2×n 타일링 2백준 algorithm 2019. 8. 31. 17:58반응형
처음 풀어보는 문제라 많이 버벅거렸다.
30분이상 생각하다가 답이 안나와 구글링하여 답을 보고 내 방식대로 짜봤다.
참고로 vector로 풀어서 좋을건 하나도 없을 거 같다.배열로만 풀어도 되는 문제다.
answer[i] = answer[i-1] + (answer[i-2]*2)
의 식만 적용하면 풀수 있는 간단한 문제다.
알고리즘 문제를 풀때는 항상 종이와 펜이 필수다.#include <iostream> #include <vector> using namespace std; int method(int n) { vector<int> answer; answer.push_back(0); answer.push_back(1); answer.push_back(3); if (n == 1) { return answer[1]; } else if (n == 2) { return answer[2]; } else { for (int i = 3; i <= n; i++) { int value = 0; value = answer[i - 1] + (answer[i - 2] * 2); answer.push_back(value%10007); } return answer[n] ; } } int main() { int n;//2xn 크기의 직사각형 cin >> n; method(n); cout << method(n); cout << endl; return 0; }
반응형'백준 algorithm' 카테고리의 다른 글
백준 1037 - 약수 (0) 2019.09.02 백준 1065 - 한수 (0) 2019.09.02 백준 2440 - 별 찍기 - 3 (0) 2019.08.31 백준 2439-별찍기-2 (0) 2019.08.31 백준 2438-별 찍기 - 1 (0) 2019.08.31