※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※

 

이번에 볼 문제는 백준 13223번 문제인 소금 폭탄이다.
문제는 아래 링크를 확인하자.

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

 

13223번: 소금 폭탄

첫째 줄에는 현재 시각이 hh:mm:ss로 주어진다. 시간의 경우 0≤h≤23 이며, 분과 초는 각각 0≤m≤59, 0≤s≤59 이다. 두 번째 줄에는 소금 투하의 시간이 hh:mm:ss로 주어진다.

www.acmicpc.net

주어진 각 시각들을 0시0분0초 기준으로 몇 초가 경과된 시각인지로 표현하면 현재 시각에서 목표 시각까지 몇 초 남았는지를 계산해낼 수 있다.

 

위에서 계산한 시간을 출력형식에 맞춰 출력해 문제를 해결하자.

 

아래는 제출한 소스코드이다.

#include <iostream>
#include <string>
using namespace std;

int main() {
	ios::sync_with_stdio(0);
	cin.tie(0);

	string t1, t2; cin >> t1 >> t2;
	int T1 = stoi(t1.substr(0, 2)) * 3600 + stoi(t1.substr(3, 2)) * 60 + stoi(t1.substr(6, 2));
	int T2 = stoi(t2.substr(0, 2)) * 3600 + stoi(t2.substr(3, 2)) * 60 + stoi(t2.substr(6, 2));

	int ans = T2 - T1;
	if (ans <= 0) ans += 24 * 3600;
	int H = ans / 3600; ans %= 3600;
	int M = ans / 60; ans %= 60;
	int S = ans;
	if (H < 10) cout << 0;
	cout << H << ':';
	if (M < 10) cout << 0;
	cout << M << ':';
	if (S < 10) cout << 0;
	cout << S;
}
728x90

'BOJ' 카테고리의 다른 글

[BOJ 25757 // C++] 임스와 함께하는 미니게임  (0) 2022.11.25
[BOJ 13222 // C++] Matches  (0) 2022.11.25
[BOJ 13224 // C++] Chop Cup  (0) 2022.11.25
[BOJ 16175 // C++] General Election  (0) 2022.11.24
[BOJ 15239 // C++] Password check  (0) 2022.11.24

+ Recent posts