🗒 문제
📝 나의 문제풀이
import kotlin.math.*
class Solution {
fun solution(a: Int, b: Int): Int {
return if(a % 2 != 0 && b % 2 != 0) {(a * a) + (b * b)
}else if(a % 2 != 0 || b % 2 != 0){
2 * ( a +b )
}else{
abs(a - b)
}
}
}
📝 다른 사람의 문제 풀이
다른 사람의 문제 풀이는 좋아요 수가 높거나 많은 사람들이 푼 방법 기준으로 첨부하였습니다.
import kotlin.math.*
class Solution {
fun solution(a: Int, b: Int): Int {
var answer: Int = 0
return when {
a % 2 != 0 && b % 2 != 0 -> a*a+b*b
a % 2 != 0 || b % 2 != 0 -> 2*(a+b)
else -> abs(a-b)
}
}
}
🖊 문제 풀이 시 알면 좋을 것
abs(x: Int): Int
- 정수 또는 실수의 절대값을 반환
import kotlin.math.abs
println(abs(-10)) // 10
println(abs(5)) // 5
when 표현식
- 여러 조건을 깔끔하게 처리하는 if-else 대체문
val result = when {
a % 2 != 0 && b % 2 != 0 -> a * a + b * b
a % 2 != 0 || b % 2 != 0 -> 2 * (a + b)
else -> abs(a - b)
}
mod 연산 (%)
- 나머지를 구하는 연산자
- 홀수/짝수 판별에 유용함
val num = 5
println(num % 2 != 0) // true (홀수)
println(num % 2 == 0) // false (짝수 아님)
a * a + b * b (제곱 연산)
- 간단한 곱셈을 통한 제곱 연산
val a = 3
println(a * a) // 9
대체 가능 방법: a.toDouble().pow(2).toInt()
import kotlin.math.pow
val a = 3
println(a.toDouble().pow(2).toInt()) // 9
pow()
- pow() 함수는 거듭제곱(제곱, 세제곱 등)을 계산하는 함수.
- kotlin.math.pow()는 Double 타입의 값만 사용 가능함.
- 반환값: Double (항상 Double을 반환)
- 사용하려면 import kotlin.math.pow 필요!
import kotlin.math.pow
val base = 2.0
val exponent = 3.0
println(base.pow(exponent)) // 8.0 (2^3)
반응형
'코딩테스트' 카테고리의 다른 글
[프로그래머스] 커피 심부름 (0) | 2025.02.13 |
---|---|
[프로그래머스] 날짜 비교하기 (0) | 2025.02.13 |
[프로그래머스] 정수 찾기 (0) | 2025.02.13 |
[프로그래머스] 꼬리 문자열 (0) | 2025.02.13 |
[프로그래머스] 부분 문자열 (0) | 2025.02.10 |