[プログラマー]2016年
1481 ワード
皆さんこんにちはMINDOLです
今日は2016年の質問に答えましょう!
Programmers一級の質問にPythonで答えました
2016年
質問リンク
実際に2016年に日付を入力したのは曜日の問題!
整理すると、
1月1日を基準として,実際の曜日を計算する
関数を使用すると、この問題をより直感的に解くことができます.また、私のように関数を使用しないこともできます.
Pythonライブラリがよくわからないので、関数はあまり使いません!
では、私が解読したコードを見てみましょう.
def solution(a, b):
answer = ''
day = b % 7 - 1
firstDay = ["FRI", "MON", "TUE", "FRI", "SUN",
"WED", "FRI", "MON", "THU", "SAT", "TUE", "THU"]
array = ["SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"]
answer = firstDay[a - 1]
for idx in range(len(array)):
if array[idx] == answer:
day = (idx + day) % 7
answer = array[day]
break
return answer
(並ぶのがおっくう)まず、1月から12月までの1日中の曜日を並べます.
そして、月曜日は7日おきに繰り返されるので、b日を7日に分けて残りの部分をdayに保存します.
array配列で曜日を検索し、場所を見つけたidxとdayを参照して値を答えに入れます.(idxとdayを加算すると7つ以上のインデックスが発生する可能性があるため、残りのインデックスに戻します.)
実行すると、良い値が表示されます!!
では、私の文章を読んでくれてありがとう.
-終了-
Reference
この問題について([プログラマー]2016年), 我々は、より多くの情報をここで見つけました
https://velog.io/@minskim2/프로그래머스-2016년
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
Reference
この問題について([プログラマー]2016年), 我々は、より多くの情報をここで見つけました https://velog.io/@minskim2/프로그래머스-2016년テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol