본문 바로가기
Baekjoon/[Code.plus] 알고리즘 기초 1/2

[BOJ/백준] 10872 팩토리얼

by 해적거북 2021. 7. 28.
728x90

● [문제번호 10872] 팩토리얼

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

 

10872번: 팩토리얼

0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오.

www.acmicpc.net

 

● 알아야 할 것

: long long 자료형

 

● 풀이 과정

: 반복문을 활용하여 구할 수 도 있고, 재귀함수를 활용하여 구할 수 있다.

 

● 주의 할 것

: int형의 범위를 넘을 수 있다고 우려하여 long long형으로 선언하였다.

 

● 참고 할 것

: NULL

 

● 풀이 코드

#include <bits/stdc++.h>

using namespace std;

// int형의 범위를 넘을 수 있다는 우려에 long long형으로 선언
long long N;

// 팩토리얼을 구하는 함수
long long Factorial(int n)
{
    // 재귀의 base case
    if(n == 0 || n == 1)
        return 1;
    
    // 재귀함수 호출
    return n * Factorial(n - 1);
}

int main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    
    cin >> N;
    
    cout << Factorial(N);
    
    return 0;
}

 

 

● [백준] - [알고리즘 기초 1/2] - [300 - 수학 1] 문제집

번호 문제 번호 문제 이름 풀이 링크
1 10430 나머지 https://pirateturtle.tistory.com/180
2 2609 최대공약수와 최소공배수 https://pirateturtle.tistory.com/181
3 1934 최소공배수 https://pirateturtle.tistory.com/182
4 1978 소수 찾기 https://pirateturtle.tistory.com/183
5 1929 소수 구하기 https://pirateturtle.tistory.com/184
6 6588 골드바흐의 추측 https://pirateturtle.tistory.com/185
7 10872 팩토리얼 https://pirateturtle.tistory.com/186
8 1676 팩토리얼 0의 개수 https://pirateturtle.tistory.com/187
9 2004 조합 0의 개수 https://pirateturtle.tistory.com/188

 

728x90

댓글