[プログラマー]2016年python
質問リンク
https://programmers.co.kr/learn/courses/30/lessons/12901
問題の説明
2016年1月1日は金曜日です.2016年a月b日は何曜日ですか?
例えば、a=5、b=24の場合は「TUE」を返さなければならない.
*2016年は閏年(2月29日まで!)
初めての試み
2016年各月の日数をリストとして定義します.
毎月からa月までの日数を加え、b人までの日数を加える.そしてそれを曜日7に分けて1を抜きました.計算された数値を日リストのインデックスとして使用します.
△これは何の説明ですか.
説明が下手です.例えば、
a=5,b=24の場合、4(a-1)月までの日数を加え、b人24を加える.
次に、曜日を計算するために、7の残りの部分を計算し、インデックス特性に基づいて-1を行う.
必要な値は、この数値を1日のインデックスとして取得できます.
https://programmers.co.kr/learn/courses/30/lessons/12901
問題の説明
2016年1月1日は金曜日です.2016年a月b日は何曜日ですか?
例えば、a=5、b=24の場合は「TUE」を返さなければならない.
*2016年は閏年(2月29日まで!)
初めての試み
def solution(a, b):
day = ["FRI","SAT","SUN","MON","TUE","WED","THU"]
last = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
return day[(sum(last[0:a-1])+b)%7-1]
1月1日が金曜日なので、金曜日から曜日をリストとして定義し、2016年各月の日数をリストとして定義します.
毎月からa月までの日数を加え、b人までの日数を加える.そしてそれを曜日7に分けて1を抜きました.計算された数値を日リストのインデックスとして使用します.
△これは何の説明ですか.
説明が下手です.例えば、
a=5,b=24の場合、4(a-1)月までの日数を加え、b人24を加える.
次に、曜日を計算するために、7の残りの部分を計算し、インデックス特性に基づいて-1を行う.
必要な値は、この数値を1日のインデックスとして取得できます.
Reference
この問題について([プログラマー]2016年python), 我々は、より多くの情報をここで見つけました https://velog.io/@jerry_bak/프로그래머스-2016년-pythonテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol