[백준/JAVA] 17427번: 약수의 합 2
🔺 문제
17427번: 약수의 합 2
두 자연수 A와 B가 있을 때, A = BC를 만족하는 자연수 C를 A의 약수라고 한다. 예를 들어, 2의 약수는 1, 2가 있고, 24의 약수는 1, 2, 3, 4, 6, 8, 12, 24가 있다. 자연수 A의 약수의 합은 A의 모든 약수를 더
www.acmicpc.net
🔺 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
import java.util.*;
import java.io.*;
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());
long ans = 0;
for(int i = 1 ; i <= N ; i++) {
ans += (N / i) * i; // 각 숫자의 총합 계산
}
System.out.println(ans);
}
}
|
cs |
✅ 해결 아이디어
✔ for문을 하나만 만들어 쓰자
- 1부터 N까지 for문을 돌면서 1이 몇 번 나오는지 계산 → (N / i) * i번
💥 유의사항
• 시간제한 0.5초이므로 N 제곱(이중 for문)으로 풀면 시간초과 발생 ⇨ 1억 - 1초
💬 느낀 점
손으로 일단 써놓고 해보기...
1회독 | 2회독 | 3회독 | 4회독 | 5회독 |
V |
(참고)
- 과정 설명들 덕에 이해하였읍니다...ㅠ
[백준] Java 17427 약수의 합 2
https://www.acmicpc.net/problem/17427수학N까지의 모든 약수의 합을 구해야 한다.일단 시간제한을 잘 봐야 한다. 시간제한이 0.5초이다. 대략적으로 1억이 1초이고 N은 백만까지 가능하다. 여기서 우리는 N
velog.io
[백준] 17427 약수의 합2 (Java)
✉️문제 https://www.acmicpc.net/problem/17427 17427번: 약수의 합 2 두 자연수 A와 B가 있을 때, A = BC를 만족하는 자연수 C를 A의 약수라고 한다. 예를 들어, 2의 약수는 1, 2가 있고, 24의 약수는 1, 2, 3, 4, 6, 8,
brightmango.tistory.com
[BOJ - JAVA] 17427 - 약수의 합2
# 주소 https://www.acmicpc.net/problem/17427 17427번: 약수의 합 2 두 자연수 A와 B가 있을 때, A = BC를 만족하는 자연수 C를 A의 약수라고 한다. 예를 들어, 2의 약수는 1, 2가 있고, 24의 약수는 1, 2, 3, 4, 6, 8, 12,
codingrapper.tistory.com