안녕 세상아,

[c++/백준] 9461 파도반 수열 본문

백준

[c++/백준] 9461 파도반 수열

돈 많은 백수가 되고싶다 2023. 5. 14. 22:29

https://www.acmicpc.net/problem/9461

 

9461번: 파도반 수열

오른쪽 그림과 같이 삼각형이 나선 모양으로 놓여져 있다. 첫 삼각형은 정삼각형으로 변의 길이는 1이다. 그 다음에는 다음과 같은 과정으로 정삼각형을 계속 추가한다. 나선에서 가장 긴 변의

www.acmicpc.net

규칙 찾기 약간 조금 까다로웠다. 사실 그냥 내가 규칙 찾기 잘 못하는 것 같다. 

 

규칙은 p(n) = p(n-2) + p(n-3) 이다. 

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

int main() {
	ios::sync_with_stdio(false);
	cin.tie(NULL);
	cout.tie(NULL);

	long long int t, n;

	cin >> t;

	long long int arr[105] = {};

	arr[1] = 1;
	arr[2] = 1;
	arr[3] = 1;
	arr[4] = 2;
	arr[5] = 2;
	arr[6] = 3;
	arr[7] = 4;

	for (long long int i = 0; i < t; i++) {
		cin >> n;
		for (long long int j = 8; j <= n; j++) {
			arr[j] = arr[j - 2] + arr[j - 3];
		}
		cout << arr[n] << '\n';
	}
	return 0;
}

'백준' 카테고리의 다른 글

[c++/백준] 1260 DFS와 BFS  (0) 2023.05.17
[c++/백준] 17413 단어 뒤집기 2  (0) 2023.05.16
[c++/백준] 2559 수열  (0) 2023.05.13
[c++/백준] 2512 예산  (1) 2023.05.13
[c++/백준] 15657 N과 M (8)  (0) 2023.05.12