반응형
[ 문제 ]
2018 SCAL-MOOKJA에 출전하기로 한 무근이와 인서는 대회 준비를 위해 같이 모여 문제를 풀기로 했다.
그런데 어느 날, 일어나서 날짜를 확인해 보니 무근이와 인서의 시계가 서로 다른 날짜를 가리키고 있었다. 두 사람이 정확한 날짜에 모일 수 있도록 문제를 푸는 지금 시각이 UTC+0(세계 표준시)을 기준으로 무슨 날짜인지 출력해 주는 프로그램을 작성하자.
만약 서울에서 확인한 시각이 2018년 9월 29일 오후 2시 정각이라면 UTC+0 기준의 시각은 2018년 9월 29일 오전 5시 정각이다.
[ 코드 ]
using System.Globalization;
DateTime currentUtc0Time = DateTime.UtcNow;
//string times = currentUtc0Time.ToString("ddd MMM dd HH:mm:ss UTC yyyy", CultureInfo.InvariantCulture);
string year = currentUtc0Time.ToString("yyyy");
string month = currentUtc0Time.ToString("MM");
string day = currentUtc0Time.ToString("dd");
Console.WriteLine($"{year}\n{month}\n{day}");
[ 코드 ] - 추가로 우리나라 날짜도 출력해보는 코드
using System.Globalization;
DateTime currentUtc0Time = DateTime.UtcNow; //협정 세계시
DateTime currentKoreaTime = DateTime.Now; //한국 표준시
string times1 = currentUtc0Time.ToString("yyyy MM dd ddd HH:mm:ss", CultureInfo.InvariantCulture); //2024 01 24 Wed 09:27:29
string times2 = currentUtc0Time.ToString("yyyy MMM dd ddd HH:mm:ss", CultureInfo.InvariantCulture); //2024 Jan 24 Wed 09:28:39
string times3 = currentUtc0Time.ToString("yyyy MMM dd ddd HH:mm:ss"); //2024 1월 24 수 09:29:09
string year = currentUtc0Time.ToString("yyyy", CultureInfo.InvariantCulture); //2024
string month = currentUtc0Time.ToString("MM", CultureInfo.InvariantCulture); //01
string day = currentUtc0Time.ToString("dd", CultureInfo.InvariantCulture); //24
Console.WriteLine($"->UTC+0: {currentUtc0Time}\n->UTC+9: {currentKoreaTime}");
Console.WriteLine("________________________________");
Console.WriteLine($"->{times1}\n->{times2}\n->{times3}\n->{year}\n->{month}\n->{day}");
[ 실행화면 ]
[ 추가 ]
CultureInfo.InvariantCulture를 넣으면 영어로 출력된다.
문제링크: https://www.acmicpc.net/problem/16170
날짜 코드 자꾸 검색해서 찾아야하길래 올려본당.
반응형
'Language > C#' 카테고리의 다른 글
[C#] 백준 2530번 인공지능 시계 (3) | 2024.01.28 |
---|---|
[C#] 백준 15873번 공백 없는 A+B (0) | 2024.01.27 |
[C#] 백준 2745번 진법 변환 (0) | 2024.01.23 |
[C#] 백준 1316번 그룹 단어 체커 (0) | 2024.01.22 |
[C#] 백준 2941번 크로아티아 알파벳 (0) | 2024.01.21 |