728x90
문제
https://www.acmicpc.net/problem/9461
처음에 이미지보고 ??? 이랬는데, 삼각형을 보고 삼각형의 각 변을 나열해보니 규칙성을 찾을 수 있었다.
코드
using System;
using System.Text;
using System.Collections.Generic;
namespace dongsik
{
class Algorithm
{
static void Main(string[] str)
{
int input = int.Parse(Console.ReadLine());
for(int i = 0; i < input; i++)
{
int num = int.Parse(Console.ReadLine());
long[] arr = new long[num];
long init = 1;
if(num <= 3)
{
Console.WriteLine("1");
continue;
}
arr[0] = arr[1] = arr[2] = init;
for(long j = 3; j < arr.Length; j++)
{
arr[j] = arr[j-3] + arr[j-2];
}
Console.WriteLine(arr[num-1]);
}
}
}
}
고민
위 조건으로 문제를 풀었고 처음엔 틀렸다. 손으로 디버깅해봐도 이유를 못찾았는데, int형이 100을 넘으면 음수가 나오는 이슈가 있어서 long타입으로 변경했더니 맞았다!! 타입의 중요성을 다시 상기했다.
'동식이 취업시키기 작전 > 코딩테스트' 카테고리의 다른 글
[백준] 1224 스위치 켜고 끄기(C#) (0) | 2024.01.29 |
---|---|
[백준] 1541 잃어버린 괄호(C#) (1) | 2024.01.26 |
[백준] 1193 분수찾기(C#) (2) | 2024.01.26 |
[백준] 1929 소수 찾기(C#) (1) | 2024.01.25 |
[백준] 1065 한수(C#) (1) | 2024.01.25 |