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

 

2884번: 알람 시계

상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해보았지만,

www.acmicpc.net

코드설명

구현 문제입니다.

 

M(분)이 45분 미만이라면,

시간이 바뀌기에 H = ((H-1) + 24) % 24 를 통해 시간을 처리합니다.

M분에서 45분을 뺀다면  음수가 됩니다. 그러기에 60을 더해서 양수로 바꿔줍니다.

 

만약 M이 45 이상이라면, 시간이 바뀌지 않으므로 M에서 45분만 뺴줍니다.

코드

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {
	public static int H, M;
	public static int answer = 0;
	public static void main(String[] args) throws IOException{
    	BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    	StringTokenizer st = new StringTokenizer(br.readLine());
    	
    	H = Integer.parseInt(st.nextToken());
    	M = Integer.parseInt(st.nextToken());
    	
    	if(M < 45) {
    		H = ((H - 1) + 24 )% 24;
        	M = M - 45;
        	M = (M + 60) % 60;
    	}else {
    		M = M - 45;
    	}
    	System.out.println(H +" "+ M);
	}

}

+ Recent posts