SW Expert Academy #2056. 年月日カレンダー
11367 ワード
[Difficulty 1]
質問する
年月日順からなる8桁の日付を入力します.
日付の有効性を決定した後、日付が有効であれば、
2220228 --> 2222/02/28
「YYYYY/MM/DD」形式で出力します.
日付が無効な場合は、出力-1のプログラムを作成します.
(年月日からなる入力については、月は1~12の間でなければなりません.
日付は、毎月の該当する日付より前に値を持つことができます.)
--2月28日のみを考慮--
入力
5
22220228
20150002
01010101
20140230
11111111
(最初の行のテストケースの合計数、次の行の各テストケースの提供開始)
しゅつりょく
#1 2222/02/28
#2 -1
#3 0101/01/01
#4 -1
#5 1111/11/11
(試験例tの結果は「#t」、スペース、答え出力)
code
質問する
年月日順からなる8桁の日付を入力します.
日付の有効性を決定した後、日付が有効であれば、
2220228 --> 2222/02/28
「YYYYY/MM/DD」形式で出力します.
日付が無効な場合は、出力-1のプログラムを作成します.
(年月日からなる入力については、月は1~12の間でなければなりません.
日付は、毎月の該当する日付より前に値を持つことができます.)
--2月28日のみを考慮--
入力
5
22220228
20150002
01010101
20140230
11111111
(最初の行のテストケースの合計数、次の行の各テストケースの提供開始)
しゅつりょく
#1 2222/02/28
#2 -1
#3 0101/01/01
#4 -1
#5 1111/11/11
(試験例tの結果は「#t」、スペース、答え出力)
code
T = int(input())
for test_case in range(1, T+1):
T = input()
if int(T[4:6]) >= 1 and int(T[4:6]) <= 12:
if int(T[4:6]) == 2:
if int(T[6:]) <= 28:
print(f'#{test_case} ' + T[:4]+'/'+T[4:6]+'/'+T[6:])
else: print(f'#{test_case} -1')
elif int(T[4:6]) == 4 or int(T[4:6]) == 6 or int(T[4:6]) == 9 or int(T[4:6]) == 11:
if int(T[6:]) <= 31:
print(f'#{test_case} ' + T[:4]+'/'+T[4:6]+'/'+T[6:])
else: print(f'#{test_case} -1')
else:
if int(T[6:]) <= 30:
print(f'#{test_case} ' + T[:4]+'/'+T[4:6]+'/'+T[6:])
else: print(f'#{test_case} -1')
else: print(f'#{test_case} -1')
Reference
この問題について(SW Expert Academy #2056. 年月日カレンダー), 我々は、より多くの情報をここで見つけました https://velog.io/@dlth508/SW-Expert-Academy-2056.-연월일-달력テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol