반응형
1. 문제
2. 풀이
입력된 시간과 분에
요리시간을 더해주면 되는 문제다.
여기서 고려해야 할 점은 총 3가지다.
1) 입력된 분과 요로 소요시간을 합쳤을 때 60분을 넘는가?
2) 60분을 넘는다면
2-1) 시간이 23시간을 넘는가?
2-2) 시간이 23을 넘지 않는다면
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int H = scan.nextInt(); // 시간
int M = scan.nextInt(); // 분
int time = scan.nextInt(); //소요시간
scan.close();
int totalMinutes = M + time; //입력된 분과 요리 소요시간을 합친 시간
if((totalMinutes) < 60) { //입력된 분과, 요리 소요시간 분이 60분 이하인 경우
System.out.println(H + " " + totalMinutes);
}
else { // 입력된 분과, 요리하는 데 필요한 분이 60분 이상인 경우
int restCount = totalMinutes % 60; // 분 부분을 나타내기 위해
int quotient = (totalMinutes / 60); //분의 크기만큼 시간을 늘려주는 변수
//185분이 totalMinutes라면 시간 부분에 +3이 추가되어야 한다. 이 3이 quotient에 저장된다.
for (int i=1; i <= quotient; i++){ //분이 60분 이상인 경우 60분 단위로 시간이 1씩 증가하도록 한다.
H++;
}
if (H > 23){
int hCount = H - 24; //시간은 0~23까지 표시가 가능하니까, 시간이 24인 경우는 24로 빼주도록 한다.
System.out.println(hCount + " " + restCount);
}
else { //시간이 23시 이하라면
System.out.println(H + " " + restCount);
}
}
}
}
내가 위에 작성한 건
돌악서 가는 방식이었다.
찾아보니 더 쉬운 방법도 있었다.
반응형
'IT > BaekJoon' 카테고리의 다른 글
[백준/JAVA] 2739 구구단 문제 (0) | 2023.03.12 |
---|---|
[백준/JAVA] 2480 주사위 세개 (0) | 2023.03.05 |
[백준/JAVA] 14681 사분면 고르기 (0) | 2023.02.12 |
[백준/JAVA] 2753 - 윤년 : 그래서 윤년이 뭘까? (0) | 2023.01.15 |
[백준/JAVA] 9498 - 시험성적 (0) | 2023.01.14 |