Notice
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- android ar 개발
- rxjava cold observable
- 스택 큐 차이
- 안드로이드 라이선스 종류
- jvm 작동 원리
- 안드로이드 유닛 테스트
- 안드로이드 레트로핏 사용법
- 플러터 설치 2022
- Rxjava Observable
- 서비스 쓰레드 차이
- jvm이란
- 안드로이드 os 구조
- 서비스 vs 쓰레드
- 멤버변수
- rxjava hot observable
- 안드로이드 레트로핏 crud
- 스택 자바 코드
- 안드로이드 유닛테스트란
- android retrofit login
- ANR이란
- 2022 플러터 안드로이드 스튜디오
- 안드로이드 유닛 테스트 예시
- 2022 플러터 설치
- 안드로이드 라이선스
- 객체
- rxjava disposable
- 자바 다형성
- 큐 자바 코드
- ar vr 차이
- 클래스
Archives
- Today
- Total
나만을 위한 블로그
[Algorithm] 백준 - 직각삼각형 (4153) (Kotlin) 본문
728x90
반응형
피타고라스의 정리만 떠올린다면 어렵지 않게 풀 수 있다. 여러 입력을 받으면서 "0 0 0"을 받으면 프로그램이 종료되게 하는 것에 주의하면 된다.
fun main() {
while (true) {
val list = readln()
.split(" ")
.map { it.toInt() }
.sortedDescending()
if (list == listOf(0, 0, 0)) {
break
}
val left = list[0] * list[0]
val right = (list[1] * list[1]) + (list[2] * list[2])
if (left == right) {
println("right")
} else {
println("wrong")
}
}
}
sorted()를 쓰든 sortedDescending()을 쓰든 상관없다. 본인에게 더 편한 메서드를 사용한다.
계속 입력받아야 하기 때문에 무한 while문을 만들었고 입력받은 값을 공백으로 split한 다음, 정수로 바꿔서 내림차순으로 정렬한다.
이 때 종료 조건인 "0 0 0"을 받으면 무한 while문을 탈출하게 break를 사용했다.
그리고 가장 큰 수의 제곱이 다른 두 수의 제곱들의 합과 같은지 확인해서 같으면 right, 다르면 wrong을 출력하게 하면 문제를 풀 수 있다.
반응형
'알고리즘 문제 풀이 > 백준' 카테고리의 다른 글
[Algorithm] 백준 - 소수 찾기 (1978) (Kotlin) (0) | 2024.09.19 |
---|---|
[Algorithm] 백준 - 웰컴 키트 (30802) (Kotlin) (0) | 2024.09.19 |
[Algorithm] 백준 - 음계 (2920) (Kotlin) (0) | 2024.07.06 |
[Algorithm] 백준 - 문자열 반복 (2675) (Kotlin) (0) | 2024.07.06 |
[Algorithm] 백준 - 단어의 개수 (1152) (Kotlin) (0) | 2024.07.06 |
Comments