본문 바로가기
백준

[백준] 10872번 : 팩토리얼 – JAVA [자바]

by Hongwoo 2022. 7. 8.
반응형

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

 

10872번: 팩토리얼

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

www.acmicpc.net

 


  • 문제

 

 


  • 문제 풀이

백준 10872번 팩토리얼은 브론즈 5 난이도의 수학 및 구현 문제이다. 이 문제는 되게 간단하다. 정수 N이 주어지고 N! (N 팩토리얼)을 출력하면 되는 문제이다. 그리고 정수의 범위도 0 ≤ N ≤ 12이기 때문에 long형이나 BigInteger 같은 큰 범위의 정수들을 고려하지 않고 int형만 써도 풀 수 있는 문제이다.

 

이 문제는 for-loop을 이용해서 풀었다. 먼저 n을 입력받는다. 그리고 n - 1부터 2를 n에 곱해주면 1 × 2 × ... × n이 된다. 따라서 그 답을 그대로 출력해주면 된다. 

 

자세한 코드는 밑에 있다.

 


  • 코드

 

import java.io.*;
import java.util.*;
public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int n = Integer.parseInt(br.readLine());
        if (n == 0) {
            System.out.print(1);
            return;
        }
        for (int i = n-1; i > 1; i--) {
            n *= i;
        }
        System.out.print(n);
    }
}

 

 

반응형

댓글