😎 κ³΅λΆ€ν•˜λŠ” μ§•μ§•μ•ŒνŒŒμΉ΄λŠ” μ²˜μŒμ΄μ§€?

[BAEKJOON C++] 1408 24 λ³Έλ¬Έ

πŸ¦₯ μ½”ν…Œ/BAEKJOON

[BAEKJOON C++] 1408 24

μ§•μ§•μ•ŒνŒŒμΉ΄ 2023. 6. 29. 23:05
728x90
λ°˜μ‘ν˜•
λ„ν˜„μ΄λŠ” Counter Terror Unit (CTU)μ—μ„œ μΌν•˜λŠ” νŠΉμˆ˜μš”원
λ„ν˜„μ΄λŠ” λͺ¨λ“  μ‚¬κ±΄μ„ μ •ν™•ν•˜κ²Œ 24μ‹œκ°„μ΄ λ˜λŠ” μˆœκ°„ ν•΄κ²°
λ„ν˜„μ΄λŠ” 1μ‹œκ°„ λ§Œμ— λ²”인을 μž‘을 μˆ˜ μžˆμ–΄λ„ μž‘지 μ•ŠλŠ”λ‹€
μ •ν™•ν•˜κ²Œ 24μ‹œκ°„μ΄ λ˜λŠ” μˆœκ°„이 μ•„λ‹ˆλ©΄ μž‘지 μ•ŠλŠ” CTU νŠΉμˆ˜μš”원

2008λ…„ 3μ›” 3일 μ›”μš”μΌ, CTUλŠ” μƒˆν•™κΈ°μ— λ§žμΆ° ν•΅ν­νƒ„을 λ‚ λ¦¬κ² λ‹€λŠ” ν…ŒλŸ¬ μ •λ³΄λ₯Ό μž…μˆ˜
CTU의 ν”„λ‘œκ·Έλž˜λ¨Έ μ€€κ·œλŠ” μ΄ μ‚¬κ±΄μ˜ λ°°ν›„κ°€ κΉ€μ„ μ˜μ΄λž€ κ²ƒμ„ ν•΄ν‚Ήμ„ ν†΅ν•΄ λ°ν˜€λƒ„
λ„ν˜„μ΄λŠ” μ„ μ˜μ΄λ₯Ό μž„무λ₯Ό μ‹œμž‘ν•œμ§€ μ •ν™•ν•˜κ²Œ 24μ‹œκ°„μ΄ λ˜λŠ” μˆœκ°„에 μž‘으렀고 ν•œλ‹€

λ§Œμ•½ μ§€κΈˆ μ‹œκ°„이 13:52:30이고, μž„무λ₯Ό μ‹œμž‘ν•œ μ‹œκ°„이 14:00:00 μ΄λΌλ©΄ λ„ν˜„μ΄μ—κ²Œ λ‚¨μ€μ‹œκ°„은 00:07:30
λͺ¨λ“  μ‹œκ°„은 00:00:00 ~ 23:59:59둜 ν‘œν˜„
μž…λ ₯κ³Ό μΆœλ ₯에 μ£Όμ–΄μ§€λŠ” λͺ¨λ“  μ‹œκ°„은 XX:XX:XX ν˜•νƒœ
μˆ«μžκ°€ 2μžλ¦¬κ°€ μ•„닐 κ²½μš°μ—λŠ” 0으둜 μ±„μš΄λ‹€

λ„ν˜„μ΄κ°€ μž„무λ₯Ό μ‹œμž‘ν•œ μ‹œκ°„κ³Ό, ν˜„μž¬ μ‹œκ°„이 μ£Όμ–΄μ‘Œμ„ λ•Œ, 
λ„ν˜„μ΄μ—κ²Œ λ‚¨μ€ μ‹œκ°„을 κ΅¬ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±

μž…λ ₯
첫째 μ€„μ—λŠ” ν˜„μž¬ μ‹œκ°„이, λ‘˜μ§Έ μ€„μ—λŠ” λ„ν˜„μ΄κ°€ μž„무λ₯Ό μ‹œμž‘ν•œ μ‹œκ°„
μž„λ¬΄λ₯Ό μ‹œμž‘ν•œ μ‹œκ°„κ³Ό ν˜„μž¬ μ‹œκ°„이 κ°™μ€ κ²½μš°λŠ” μ£Όμ–΄μ§€μ§€ μ•ŠλŠ”λ‹€.

좜λ ₯
첫째 μ€„에 λ„ν˜„μ΄κ°€ μž„무λ₯Ό μˆ˜ν–‰ν•˜λŠ”데 λ‚¨μ€ μ‹œκ°„을 
λ¬Έμ œμ—μ„œ μ£Όμ–΄μ§€λŠ” μ‹œκ°„μ˜ ν˜•νƒœ (XX:XX:XX)에 맞좰 좜λ ₯
// [1408] 24

/*
λ„ν˜„μ΄λŠ” Counter Terror Unit (CTU)μ—μ„œ μΌν•˜λŠ” νŠΉμˆ˜μš”μ›
λ„ν˜„μ΄λŠ” λͺ¨λ“  사건을 μ •ν™•ν•˜κ²Œ 24μ‹œκ°„μ΄ λ˜λŠ” μˆœκ°„ ν•΄κ²°
λ„ν˜„μ΄λŠ” 1μ‹œκ°„ λ§Œμ— 범인을 μž‘μ„ 수 μžˆμ–΄λ„ μž‘μ§€ μ•ŠλŠ”λ‹€
μ •ν™•ν•˜κ²Œ 24μ‹œκ°„μ΄ λ˜λŠ” μˆœκ°„μ΄ μ•„λ‹ˆλ©΄ μž‘μ§€ μ•ŠλŠ” CTU νŠΉμˆ˜μš”μ›

2008λ…„ 3μ›” 3일 μ›”μš”μΌ, CTUλŠ” μƒˆν•™κΈ°μ— 맞좰 핡폭탄을 λ‚ λ¦¬κ² λ‹€λŠ” ν…ŒλŸ¬ 정보λ₯Ό μž…μˆ˜
CTU의 ν”„λ‘œκ·Έλž˜λ¨Έ μ€€κ·œλŠ” 이 μ‚¬κ±΄μ˜ λ°°ν›„κ°€ κΉ€μ„ μ˜μ΄λž€ 것을 해킹을 톡해 λ°ν˜€λƒ„
λ„ν˜„μ΄λŠ” μ„ μ˜μ΄λ₯Ό μž„λ¬΄λ₯Ό μ‹œμž‘ν•œμ§€ μ •ν™•ν•˜κ²Œ 24μ‹œκ°„μ΄ λ˜λŠ” μˆœκ°„μ— 작으렀고 ν•œλ‹€

λ§Œμ•½ μ§€κΈˆ μ‹œκ°„μ΄ 13:52:30이고, μž„λ¬΄λ₯Ό μ‹œμž‘ν•œ μ‹œκ°„μ΄ 14:00:00 이라면 λ„ν˜„μ΄μ—κ²Œ λ‚¨μ€μ‹œκ°„μ€ 00:07:30
λͺ¨λ“  μ‹œκ°„μ€ 00:00:00 ~ 23:59:59둜 ν‘œν˜„
μž…λ ₯κ³Ό 좜λ ₯에 μ£Όμ–΄μ§€λŠ” λͺ¨λ“  μ‹œκ°„μ€ XX:XX:XX ν˜•νƒœ
μˆ«μžκ°€ 2μžλ¦¬κ°€ 아닐 κ²½μš°μ—λŠ” 0으둜 μ±„μš΄λ‹€

λ„ν˜„μ΄κ°€ μž„λ¬΄λ₯Ό μ‹œμž‘ν•œ μ‹œκ°„κ³Ό, ν˜„μž¬ μ‹œκ°„μ΄ μ£Όμ–΄μ‘Œμ„ λ•Œ, 
λ„ν˜„μ΄μ—κ²Œ 남은 μ‹œκ°„μ„ κ΅¬ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±

μž…λ ₯
첫째 μ€„μ—λŠ” ν˜„μž¬ μ‹œκ°„μ΄, λ‘˜μ§Έ μ€„μ—λŠ” λ„ν˜„μ΄κ°€ μž„λ¬΄λ₯Ό μ‹œμž‘ν•œ μ‹œκ°„
μž„λ¬΄λ₯Ό μ‹œμž‘ν•œ μ‹œκ°„κ³Ό ν˜„μž¬ μ‹œκ°„μ΄ 같은 κ²½μš°λŠ” 주어지지 μ•ŠλŠ”λ‹€.

좜λ ₯
첫째 쀄에 λ„ν˜„μ΄κ°€ μž„λ¬΄λ₯Ό μˆ˜ν–‰ν•˜λŠ”λ° 남은 μ‹œκ°„μ„ 
λ¬Έμ œμ—μ„œ μ£Όμ–΄μ§€λŠ” μ‹œκ°„μ˜ ν˜•νƒœ (XX:XX:XX)에 맞좰 좜λ ₯
*/

#define _CRT_SECURE_NO_WARNINGS
// ν‘œμ€€ μŠ€νŠΈλ¦Όμ—μ„œ 읽기 및 μ“°κΈ°λ₯Ό μ œμ–΄ν•˜λŠ” 개체λ₯Ό μ„ μ–Έ
#include <iostream>
// 두 개체λ₯Ό ν•˜λ‚˜μΈ κ²ƒμ²˜λŸΌ μ²˜λ¦¬ν•΄μ•Ό ν•  λ•Œ 개체 μŒμ„ 생성 및 관리
#include <utility>
// μ•Œκ³ λ¦¬μ¦˜μ„ μˆ˜ν–‰ν•˜λŠ” C++ ν‘œμ€€ 라이브러리 μ»¨ν…Œμ΄λ„ˆ ν…œν”Œλ¦Ώ ν•¨μˆ˜λ₯Ό μ •μ˜
#include <algorithm>
// λ‹€μ–‘ν•œ ν˜•μ‹μ˜ κ°œμ²΄κ°€ ν¬ν•¨λœ tuple ν…œν”Œλ¦Ώμ„ μ •μ˜
#include <tuple>
// vectorλŠ” μ„ ν˜• μ‹œν€€μŠ€μ—μ„œ μ§€μ •λœ μœ ν˜•μ˜ μš”μ†Œλ₯Ό κ΅¬μ„±ν•˜λŠ” μ»¨ν…Œμ΄λ„ˆ
#include <vector>
// μ—°κ²°λœ 이름을 λ„€μž„μŠ€νŽ˜μ΄μŠ€μ— std μΆ”κ°€
#include <string>
// ν• λ‹Ήλœ λ°°μ—΄ κ°œμ²΄μ— μ €μž₯된 μ‹œν€€μŠ€μ— λŒ€ν•œ iostreams μž‘μ—…μ„ μ§€μ›ν•˜λŠ” μ—¬λŸ¬ 클래슀 ν…œν”Œλ¦Ώ μ •μ˜
#include <sstream>
using namespace std;

int main()
{
	ios::sync_with_stdio(false);
	cin.tie(NULL);
	cout.tie(NULL);

	int h, m, s;
	int h2, m2, s2;

	// μ£Όμ–΄μ§€λŠ” μ‹œκ°„μ˜ ν˜•νƒœ (XX:XX:XX)
	scanf("%d:%d:%d", &h, &m, &s);		// ν˜„μž¬μ‹œκ°„
	scanf("%d:%d:%d", &h2, &m2, &s2);	// μž„λ¬΄μ‹œμž‘μ‹œκ°„

	h2 -= h;
	m2 -= m;
	s2 -= s;

	if (s2 < 0) {
		s2 += 60;
		m2 -= 1;
	}
	if (m2 < 0) {
		m2 += 60;
		h2 -= 1;
	}
	if (h2 < 0) {
		h2 += 24;
	}
	
	//%02d : 2μžλ¦¬λ³΄λ‹€ μž‘μ„λ•Œ λΉˆμžλ¦¬μ— 0을 μΆ”κ°€
	printf("%02d:%02d:%02d", h2, m2, s2);
	return 0;
}

 

728x90
λ°˜μ‘ν˜•
Comments