SMALL

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

 

10870번: 피보나치 수 5

피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가

www.acmicpc.net


  • 문제


  • 문제풀이

이러한 패턴을 가진 수열은 재귀함수를 사용해도 되고 값들을 다 정해준뒤 출력해도 된다.

 

 


  • 코드 1
namespace ConsoleApp21
{
    internal class Program
    {
        public static int Blood(int num)
        {
            if (num == 1)
            {
                return 0;
            }
            else if (num == 2 || num == 3)
            {
                return 1;
            }
            else { 
                return Blood(num-1)+Blood(num-2);
            }
            
        }
        static void Main(string[] args)
        {
            int N = int.Parse(Console.ReadLine());
            Console.WriteLine(Blood(N+1));
        }
    }
}
  • 코드 2
using System;

namespace ConsoleApp21
{
    internal class Program
    {
        
        static void Main(string[] args)
        {
            int N = int.Parse(Console.ReadLine());
            int[] arr=new int[21];
            arr[0] = 0;
            arr[1] = 1;
            arr[2] = 1;
            
               for(int i=3;i<=N;i++)
                {
                    arr[i] = arr[i - 1] + arr[i - 2];
                }
            
            Console.WriteLine("{0}", arr[N]);
        }
    }
}

  • 후기

뭔가 더 쉬운 방법이 있을거같은데...

LIST

'백준 > C#' 카테고리의 다른 글

[C#]백준 1786번: 찾기  (0) 2023.03.15
[C#]백준 10872: 팩토리얼  (0) 2023.03.15
[C#]백준 2839번: 설탕 배달  (2) 2023.03.13
[C#]백준 2798번: 블랙잭  (0) 2023.03.13
[C#]백준 1436번: 영화감독 숌  (0) 2023.03.13

+ Recent posts