일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 27 | 28 | 29 | 30 | 31 |
Tags
- 파이썬
- JPA
- Data Structure
- Galera Cluster
- IT
- Kafka
- c언어
- MySQL
- 네트워크
- 운영체제
- MSA
- Proxy
- Java
- 백준
- redis
- C
- react
- 자료구조
- 컴퓨터구조
- 알고리즘
- Spring
- design pattern
- spring webflux
- 자바
- JavaScript
- 디자인 패턴
- mongoDB
- Algorithm
- OS
- Heap
Archives
- Today
- Total
시냅스
백준 boj 17427 - 약수의 합 2 (파이썬, python) 본문
https://www.acmicpc.net/problem/17427
문제의 난도는 높지 않으나, 시간 초과를 고려해야 하는 부분이 까다롭다.
첫 시도에 2중 반복문을 활용하였으나, 당연히 실패...
하여 얻은 인사이트는
만약 10을 기준으로 한다면,
1 은 총 10번 등장하고 ((10 / 1) * 1),
2 는 총 5번 등장하고 ((10 / 2) * 2),
3 은 총 3번 등장하고 ((10 / 3) * 3),
4, 5 는 총 2번 등장하고 ((n (10) / i ( 4 ~ 5 )) * i ( 4 ~ 5 )),
6, 7, 8, 9, 10 은 총 1번 등장한다 ((n (10) / i ( 6 ~ 10 )) * i ( 6 ~ 10 )).
수식으로 정리하면
( n / i ) * i
이 된다.
코드
n = int(input())
result = 0
for i in range(1, n + 1):
result += (n // i) * i
print(result)
'알고리즘' 카테고리의 다른 글
백준 boj 17425 - 약수의 합 (파이썬, python) (0) | 2022.02.08 |
---|---|
백준 boj 6588 - 골드바흐의 추측 (파이썬, python) (0) | 2022.02.08 |
백준 boj 2609 - 최대공약수와 최소공배수 (파이썬, python) (0) | 2022.02.08 |
백준 boj 1978 - 소수 찾기 (파이썬, python) (0) | 2022.02.08 |
백준 boj 4375 - 1 (파이썬, python) (0) | 2022.02.07 |
Comments