1 + 2 + 3 + 4 + 5 .... + n-1 + n 의 합을 구하는 법은
가우스의 등차수열로 구할 수 있다.
1~100까지 모든 수의 합을 구하는 법을 생각해보자
양 끝에 있는 숫자를 서로 대칭해서 더하는 방법으로 표현해보면
(1+100) + (2 + 99) + ..... + (99 + 2) + (100 + 1)
모두 합이 101로 이루어진 숫자가 100개가 나오게 된다.
이제 이것을 2로 나누면 1~100까지 모든 수의 합을 구하는 공식이 완성된다.
이를 식으로 표현하면 n * (1 + n) / 2가 된다
아래는 1부터 입력받은 수 까지의 모든 수의 합을 구하는 코드이다
1
2
3
4
5
6
7
8
9
10
11
12
|
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner kb = new Scanner(System.in);
int n = kb.nextInt();
kb.close();
System.out.println(n * (1 + n)/2);
}
}
|
'자료구조,알고리즘' 카테고리의 다른 글
[알고리즘] 에라토스테네스의 체(소수를 찾는법) (0) | 2023.02.28 |
---|---|
[자료구조] Stack (0) | 2023.02.27 |
제1-1장: 변수, 배열, 반복문 (5/7) (0) | 2021.05.21 |
제1-1장: 변수, 배열, 반복문 (4/7) (0) | 2021.05.21 |
제1-1장: 변수, 배열, 반복문 (3/7) (0) | 2021.05.17 |