본문 바로가기
Computer/Algorithm_Java

[BaekJoon] 24267번 알고리즘 수업 - 알고리즘의 수행 시간 6 문제풀이 (Success)

by HJ0216 2023. 6. 8.
 

24267번: 알고리즘 수업 - 알고리즘의 수행 시간 6

오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시

www.acmicpc.net

 

Language: Java

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.math.BigInteger;
 
public class Main {
    public static void main(String[] args) throws Exception {
 
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
 
        int n = Integer.parseInt(br.readLine());
 
        BigInteger sum = BigInteger.ZERO;
 
        for (int i = n - 2; i > 0; i--) {
            BigInteger iBigInteger = BigInteger.valueOf(i);
            sum = sum.add(iBigInteger.multiply(iBigInteger.add(BigInteger.ONE)).divide(BigInteger.TWO));
        }
 
        bw.write(sum.toString() + "\n" + 3);
        bw.flush();
        }
}
 
 
 

⭐ 3중 반복문으로 long 타입 변수 범위를 넘어 BigInteger 활용

 - n은 개별 입력값이므로 BigInteger가 아닌 int 선언 가능

 - 기본형 타입의 변수와 달리 값 입력 시, ZERO, ONE 등의 방법으로 가능

 - 기본형 타입의 변수와는 달리 덧셈의 경우에 +가 아닌 add 사용

 

 

 

소스 코드
🔗 HJ0216/TIL/BOJ