본문 바로가기

알고리즘 (Python)/코드업 기초 100제

[CodeUp] 코드업 기초 100제 1019번 풀이 - 파이썬(python)

728x90
반응형

1019 : [기초-입출력] 연월일 입력받아 그대로 출력하기

시간 제한 : 1초 메모리 제한 : 128 MB

 


 

문제 설명

 

년, 월, 일을 입력받아 지정된 형식으로 출력하는 연습을 해보자.

입력

 

연, 월, 일이 ".(닷)"으로 구분되어 입력된다.

출력

 

입력받은 연, 월, 일을 yyyy.mm.dd 형식으로 출력한다.
(%02d를 사용하면 2칸을 사용해 출력하는데, 한 자리 수인 경우 앞에 0을 붙여 출력한다.)

입력 예시

 

2013.8.5

출력 예시

 

2013.08.05

내 풀이

 

a = input() 

sp = a.split(".") 

year=int(sp[0]) 
month=int(sp[1]) 
day=int(sp[2]) 

print("%04d.%02d.%02d" % (year,month,day))

모범 답안

 

a,b,c=input().split('.') 
print('%04d' % int(a), end='.') 
print('%02d' % int(b), end='.')
print('%02d' % int(c))

해설

 

입력받은 날짜를 '.'을 기준으로 나눠서 0을 붙인 형식으로 출력하는 문제입니다.
모범 답안을 보니 저는 번거롭게 여러 번으로 나누어서 진행하였는데, split('.')을 할 때 각각 변수에 담는 방법이 더 깔끔해 보입니다.
%02d는 %d(decimal형)의 왼쪽 2자리까지 채워지지 않았다면 0을 붙인다는 의미입니다.
더 공부해보고 싶으시면 "파이썬 포맷 코드와 숫자 함께 사용하기"로 검색해 보시길 바랍니다.
728x90
반응형