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
- 25083
- 백준3085
- 1330
- 백준1476
- 파이썬
- Class Delegation
- baekjoon
- Counting The number
- PreferenceManager
- 새싹
- debugSymbolLevel
- 디버그심볼
- BitMasking
- 기본메신저
- 사파리 월드
- 10926
- 10430
- 개수 세기
- dp
- Android
- 18108
- 브루트포스
- 꼬마 정민
- kotlin
- safari world
- 10807
- 2525
- 코틀린
- 백준1107
- 백준
Archives
- Today
- Total
세상을 더 좋게
[백준] 2884 '알람 시계' 파이썬(Python), 코틀린(Kotlin) 본문
https://www.acmicpc.net/problem/2884
2884번: 알람 시계
상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해보았지만,
www.acmicpc.net
파이썬
시와 분을 입력 받은 뒤, 조건에 맞도록 식을 구성하였다. 우선 45분을 빼야하기 때문에 고려할 수 있는건
- 먼저 해당 시간의 분이 '45분보다 긴가 짧은가' 이다. 길면 그냥 -45만 하면 되지만 짧다면 시간을 바꿔야 하기 때문에 조건이 달라진다.
- 그리고 만약 45분보다 짧다면 또 고려해야 하는게 하루가 24시간이므로 '0시 일 때'도 고려해야 한다. 0시가 아니라면 한 시간만 줄면 되지만, 0시라면 시간은 23시가 되어야 하기 때문이다.
h, m = map(int, input().split())
if m < 45:
if h == 0:
h = 23
m += 60
else:
h -= 1
m += 60
print(h, m-45)
코틀린
파이썬과 흐름은 똑같다. 시와 분을 입력 받고 if문을 이용해 위의 파이썬과 같은 조건으로 구현하였다. when을 쓸까도 생각했었지만, 조건이 하나 들어가고 또 들어가는 형태라 if문이 외부 사람이 보기에 흐름이 더 좋아보였다.
println 같은 경우는 파이썬과 다르게 인자가 하나만 들어가야 하기에 "" 사이에 ${}를 활용하여 출력 조건에 맞춰주었다.
import java.util.*
fun main() = with(Scanner(System.`in`)) {
var (h, m) = Pair(nextInt(), nextInt())
if (m < 45) {
if (h == 0) {
h = 23
m += 60
} else {
h -= 1
m += 60
}
}
println("${h} ${m-45}")
}
'Algorithm' 카테고리의 다른 글
[백준] 2739 '구구단' 파이썬(Python), 코틀린(Kotlin) (0) | 2022.05.05 |
---|---|
[백준] 2525 '오븐 시계' 파이썬(Python), 코틀린(Kotlin) (0) | 2022.03.17 |
[백준] 14681 '사분면 고르기' 파이썬(Python), 코틀린(Kotlin) (0) | 2022.03.17 |
[백준] 2753 '윤년' 파이썬(Python), 코틀린(Kotlin) (0) | 2022.03.17 |
[백준] 9498 '시험 성적' 파이썬(Python), 코틀린(Kotlin) (0) | 2022.03.17 |