본문 바로가기

알고리즘

[알고리즘] 백준 2525

https://www.acmicpc.net/problem/2525

 

2525번: 오븐 시계

첫째 줄에 종료되는 시각의 시와 분을 공백을 사이에 두고 출력한다. (단, 시는 0부터 23까지의 정수, 분은 0부터 59까지의 정수이다. 디지털 시계는 23시 59분에서 1분이 지나면 0시 0분이 된다.)

www.acmicpc.net

import java.util.Scanner;
import java.util.*;

public class Main {
	public static void main(String[] args)
    {
		Scanner sc = new Scanner(System.in);
		int[] arr= new int[2];
		arr[0] = sc.nextInt();
		arr[1] = sc.nextInt();
		int a = sc.nextInt();
		arr[0] +=a/60;
		arr[1] += a%60;
		if(arr[0] >= 24)
		{
			arr[0] -=24;
		}
		if(arr[1]>=60)
		{
			arr[1]-=60;
			arr[0] +=1;
			if(arr[0] >=24)
			{
				arr[0] -= 24;
			}
		}
		for(int i=0; i<=1; i++)
		{
			System.out.print(arr[i] + " ");
		}
    }

}

 

 

 

이 문제에서는 요리하는데 필요한 시간 'C'를 받게 되는데 이 C를 시간과 분으로 변환 후 각각 시와 분을 본래 처음 입력 받은 A와 B 에 더해주는 방식으로 풀이했다.

이 경우 고려해야할 2가지 조건이 생긴다.

첫째, 더한 시간이 24를 넘길 경우이다. 때문에 조건문을 통하여 24를 빼주었다.

둘째, 더한 분이 60을 넘을 경우이다. 이 경우 더한 분에서 60을 빼주고 더한 시간에 1을 추가로 더해주면 된다. 이 경우 추가적으로 고려해야할 부분이 있는데 바로 1을 추가로 시간에 더해주었을 때 24보다 크거나 같을 경우이다. 때문에 조건을 추가하여 만약 1을 더한 시간이 24보다 크거나 같다면 24를 빼주는 것으로 정의했다. 

'알고리즘' 카테고리의 다른 글

2024.2.5 백준 3문제  (1) 2024.02.06
[알고리즘]백준 2857  (0) 2023.06.29
[알고리즘]백준 4153번: 직각삼각형  (0) 2023.05.28
[알고리즘]백준 2884번: 알람시계  (0) 2023.05.28
[알고리즘]백준 2588번 곱셈  (0) 2023.05.28