Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 백준 17779
- 백준
- Spring Boot
- 백준 16236
- 백준 19238
- 웹어플리케이션 서버
- 백준 15685
- 백준 파이썬
- Spring
- MSA
- spring oauth
- spring cloud
- sql 기술면접
- 백준 17626
- Kotlin
- with recursive
- 프로그래머스
- 프로래머스
- JVM
- java 기술면접
- JPA
- MySQL
- Coroutine
- springboot
- re.split
- java
- 백준 16235
- spring security
- 백준 16719
- 파이썬
Archives
- Today
- Total
목록백준 2981 (1)
시작이 반
[백준] 2981번 (python 파이썬)
수학적 이론이 필요한 문제이다. M 을 찾아야한다. A = M * a + R B = M * b + R C = M * c + R 여기서 R을 제거하면 A - B = M ( a - b ) B - C = M ( b - c ) 이런 식이 나온다. 즉, M은 A-B, B-C의 공약수이다 즉 최대공약수를 구하면 된다. 최대 공약수를 구하고 해당 수의 1을 제외한 약수를 출력하면된다. 이때 최대 공약수를 구하고 약수를 구할때 반복문을 최대공약수 까지 돌려버리면 숫자 범위가 1,000,000,000까지기 때문에 엄청난 시간이 걸린다. 그래서 공약수를 구할때 18 % 2 = 0 ( 2 = 약수) 18 // 2 = 9 ( 9 = 약수) 이 2개를 한번에 구한다 이러면 반복횟수를 최대공약수의 제곱근 까지 줄일수 있다. 마지..
알고리즘/백준
2021. 3. 1. 19:42