티스토리 뷰
반응형
이번에는 N개의 최소 공배수 문제를 풀어보았습니다.
다른분들과 비슷하게 풀었는데 이게 깔끔해서 이 코드로 대체했습니다!
private fun solution(arr: IntArray): Int {
var answer = arr[0]
for (i in 1 until arr.size) {
answer = lcm(answer, arr[i])
}
return answer
}
//최소 공배수
private fun lcm(a: Int, b: Int): Int = a * b / gcd(a, b)
//최대 공약수
private fun gcd(a: Int, b: Int): Int = if (b != 0) gcd(b, a % b) else a
최소 공배수 , 최대공약수 알고리즘을 알고있으면 풀이가 그래도 쉬워졌습니다.
확실히 Level.2 는 알고리즘에 대해 공부를 많이해야겠다는 생각을 하게되네요.
반응형
'알고리즘' 카테고리의 다른 글
| 완전탐색 알고리즘. (0) | 2024.02.24 |
|---|---|
| 깊이 우선 탐색(DFS) 너비 우선 탐색 (BFS) 에 대하여. (3) | 2023.08.17 |
| [코딩 테스트] Level. 2 JadenCase 문자열 만들기 (코틀린) (0) | 2023.08.07 |
| [코딩 테스트] Level. 2 하노이의 탑 (코틀린) (0) | 2023.07.27 |
| [코딩 테스트] Level. 1 추억 점수 (코틀린, Kotlin) (2) | 2023.07.08 |
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- flutter_new_badger
- java
- Kotlin
- https
- retrofit
- 재귀함수
- android
- Firebase
- GitHub
- error
- listener
- ios
- API
- FCM
- Custom
- Flutter
- 알고리즘
- ec2
- ExoPlayer
- 코딩테스트
- Crop
- node.js
- Hilt
- Android Studio
- direction
- Token
- app bundle
- message
- ScrollView
- bitmap
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
글 보관함