백준 단계별로 풀어보기(C++)/2)조건문

백준 2525) 오븐 시계 (C++)

코테 2023. 3. 9. 01:42

전체 코드

#include <iostream>

int main()
{
	int A, B, C;

	std::cin >> A >> B >> C;
	
	A += C / 60;
	B += C % 60;
	
	if (B >= 60)
	{
		A += 1;
		B -= 60;
	}

	A %= 24;
	std::cout << A << " " << B;
}

 

풀이

  • A(시간)에 C/60한값 더하기 -> 1시간당 60분이므로 60나눈값을 더함, int끼리 나누면 나머지는 버리기 때문에 나머지 걱정은 안해도 됨
  • B(분)에 C%60한값 더하기 -> C%60을 하면 60으로 나눈 뒤 나머지가 남음->시간에 더한 뒤 남은 분 더함
A += C / 60;
B += C % 60;
  • B(분)가 60보다 같거나 클 경우 A(시간)에 1더함
  • A에 60만큼 주었으므로 B에 60만큼 뺌
  • 분 단위는 0부터 59까지 표시하므로 위의 작업을 함
if (B >= 60)
{
	A += 1;
	B -= 60;
}
  • A(시간)은 0부터 23까지 표시됨-> 24로 나눈 나머지값을 A로 설정
  • 다 한뒤 출력
A %= 24;
std::cout << A << " " << B;