[WEEK02] DAY16 & TMI
3684 ワード
DAY16
11866ジョセフスの出力形式よりも多くのことを学びました.
*[]削除および出力
https://www.delftstack.com/ko/howto/python/list-without-brackets-python/
a = [1,2,3,4,5,6]
a_str = [str(elem) for elem in a]
print('<%s>'%(', '.join(a_str)))
→ <1, 2, 3, 4, 5, 6>
.joinの意味
[‘a’,‘b’,‘c’]とともにStringのリストを構成する場合
帯.join(String List)を使用すると、String Listをマージする際に、両者の間にJoinより前のStringが挿入されます
例「」.join(['a', 'b', 'c']) → 'ab***c'
a = "".join(str(y))
a = result[1:-1]
print('<'+a+'>')
Slicing
完了コード
10830行列二乗(分割征服)
行列の乗算を知ってこそ,一般項を求めることができる.
1629の乗法問題も、数年ぶりに見た数学です
.
.
for文の[0]*nと[0 fori in range(n)]の違い
写真はちょっと大きいけど、
忘れた単位行列
.
.
*タイムアウト
行列の二乗解が完了し,最後にタイムアウトした.
# 지수를 나누면서 부분연산을 진행하는 재귀함수
def multi(b):
if b == 1:
return numbers
# b가 짝수면 제곱
if b % 2 == 0:
# return mul_matrix(multi(b // 2), multi(b // 2)) #시간초과 이유
val = multi(b // 2)
return mul_matrix(val, val)
# b가 홀수면 지수-1 하고 입력받은 행렬 한번 곱해주기 (A^3 = A^2 * A)
else:
return mul_matrix(multi(b - 1), numbers)
これは問題のあるコード部分であり、bを配布してサイズを縮小する過程で問題は
return mul_matrix(multi(b // 2), multi(b // 2))
セクション(写真参照)だから.
val = multi(b // 2)
return mul_matrix(val, val)
b/2値をvalとして保存し,値を読み込むことで時間問題を解決した.助けてくれた元宗/鐘浩兄さんに感謝します.
未完了コード
1655説中間(優先順位Q)
hip構造に関するコメント
ヒップ部分を左heapと右heapの2つにして解決する草があります.
6549ヒストグラムで最大の長方形(分割征服)
最小高さ1に基づいてトリミングを行います.
そして高さによって半分カット...このように繰り返します.
コア問題は,3,4番目の矩形の大きさをどのように計算するかである.
この2つのサイトの文章が助かりました.
コメントの添付
今日の物語
私はどのように問題を解くかを構想し、なぜ正しい問題を解く過程でもコードで実現するのが難しいのかを考えた結果、プログラミング言語の基礎文法に空白があることが分かった.
基本的な構文の空白を記入すると、コードの実装をより熟知するはずです.
明日は今日より2回多く乗ることを目標に勉強します.
Reference
この問題について([WEEK02] DAY16 & TMI), 我々は、より多くの情報をここで見つけました https://velog.io/@yerimii11/WEEK02-DAY16テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol