Python/Python Challenge

[Python Challenge 15] 다섯살 때부터 친 피아노

Python Challenge 15의 Url은 다음과 같다

Python challenge 15 : http://www.pythonchallenge.com/pc/return/uzi.html


구성

구성으로 달력사진이 나와있다. 혹시나 저번 시간 cat까지만 움직인 사람들을 위해서 그 고양이 이름은 uzi이다. uzi.html로 냉큼 오자


해결 아이디어

모듈을 사용하자. 저거 잘 보면 다음달께 보인다. 그니까 2월에 달력을 조금 자세하게 보자

으흠; DeBlur로 복구하자 다음과 같은 툴을 사용했다.

http://yuzhikov.com/projects.html

전혀 도움은 되지 않았다. 그러나 자세하게 사진을 확인해보면 오호; 29일이 있다. 그러니까 윤년이라는 거다 연도를 보면 1XX6년임을 알 수 있다. 

1. 1000~2000사이의 일의 자리가 "6"인 년도

2. 윤년

3. 1월시작이 목요일

이 세가지를 만족하는 년도를 찾아내면 된다. 이런 문제를 위한 완벽한 모듈이 있으니 바로 Calendar 모듈이다. 

2021.05.25 - [Python/Python 모듈탐구] - [Python] - 모듈탐구 calendar - 야 오늘 며칠이냐?

* 맞다 이 문제 풀이를 위해서 모듈탐구를 올렸다.

### 15.py

import calendar


if __name__ == "__main__" :

    ans = list()
    
    ### 1000 ~ 2000 사이 일의자리가 "6"인 순서로 탐색
    for i in range(1006,2000,10) :
        cur_year = i
        
        ### isleap함수는 윤년이면 True 반환
        if(calendar.isleap(cur_year)) :
        	### weekday는 년,월,일 순서로 파라미터를 받아 요일을 반환, 목요일은 3
            if(calendar.weekday(cur_year,1,1)==3) :
                ans.append(cur_year)

    print(ans)

 

출력은 다음과 같다.

[1176, 1356, 1576, 1756, 1976]

주석을 잠깐 보고오자

1. 가장 젊은 사람이 아니라고 하니 1756년달력인가 보다

2. 내일을 위한 꽃을 사라는 것을 보니 달력에 동그라미가 되어있는 26일 다음, 즉 1월 27일을 찾는것이다.

 

그러니까 우리가 찾는 날짜는 1756년 1월 27이다. 이게 어떻게 답일까? 구글링 해보자

WOW mozart 찾았다.

Answer Url : http://www.pythonchallenge.com/pc/return/mozart.html