© 2025 anveloper.dev
GitHub·LinkedIn·Contact

목차

  • 문제
  • 입력
  • 출력
  • 예제
  • 풀이
  • 코드
  • 복잡도
풀이 목록으로 돌아가기

BOJ 2530 - 인공지능 시계

2023-10-01
BOJ
브론즈 IV
java
원본 문제 보기
수학
사칙연산

문제

BOJ 2530 - 인공지능 시계

현재 시각(시 분 초)과 요리 시간(초)이 주어질 때, 요리가 끝나는 시각을 구하라.

입력

첫째 줄에 현재 시각(A B C), 둘째 줄에 요리 시간(D초)이 주어진다.

출력

요리가 끝나는 시각을 시 분 초로 출력한다.

예제

입력출력
14 30 0 20014 33 20

풀이

초에 요리 시간을 더한 뒤, 60 단위로 올림하여 분과 시를 갱신한다.

  1. 초(C)에 D를 더한다
  2. 초가 60 이상이면 분으로 올림하고 나머지를 초로 남긴다
  3. 분이 60 이상이면 시로 올림하고 나머지를 분으로 남긴다
  4. 시가 24 이상이면 24로 나눈 나머지를 취한다

핵심 아이디어: 단순한 시간 덧셈과 자리올림(carry) 연산이다.

코드

package day649;
 
import java.io.*;
import java.util.*;
 
public class Day604BOJ2530인공지능시계 {
  public static void main(String[] args) throws Exception {
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    StringTokenizer st = new StringTokenizer(br.readLine());
    int a = Integer.parseInt(st.nextToken());
    int b = Integer.parseInt(st.nextToken());
    int c = Integer.parseInt(st.nextToken());
    int d = Integer.parseInt(br.readLine());
    c += d;
    b += (c / 60);
    c = c % 60;
    a += (b / 60);
    b = b % 60;
    a = a % 24;
    System.out.print(a + " " + b + " " + c);
  }
}

복잡도

  • 시간: O(1)
  • 공간: O(1)