★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
]➤[マイクロチャネルパブリック番号(WeiGanTechnologies)をあえてします
➤ブログパークアドレス:サンチンウィングチー(https://www.cnblogs.com/strengthen/)
➤GitHubアドレス:https://github.com/strengthen/LeetCode
元のアドレス➤:HTTPS://www.cnblogs。 COM /強化/ P / 11521662.html
アドレスがリンクブログパーク龍シャンカイはない場合➤、それは記事の著者をクロールすることができます。
➤テキストは、更新を変更されました!元のアドレスが読むことを強く推奨クリック!サポート作者!オリジナルをサポートしています!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
整数配列を考える arr
と整数 k
、それを繰り返すことによって、配列を変更 k
回。
たとえば、 arr = [1, 2]
そして k = 3
次に修飾配列であろう [1, 2, 1, 2, 1, 2]
。
修飾された配列に最大サブアレイ和を返します。サブ配列の長さとすることができることに注意 0
し、その場合には、その和です 0
。
答えは非常に大きくなるように、回答剰余を返します 10^9 + 7
。
例1:
入力:ARR = [1,2]、K = 3 出力:9
例2:
入力:ARR = [1、-2,1]、K = 5 出力:2
例3:
入力:= 7 ARR = [-1、-2]、K 0:出力
制約:
1 <= arr.length <= 10^5
1 <= k <= 10^5
-10^4 <= arr[i] <= 10^4
あなたの整数の配列与えるために arr
と整数を k
。
まず第一に、我々は、元の配列のある配列に変更を加える必要があり arr
、繰り返し k
回数。
例えば、場合
arr = [1, 2]
とk = 3
、その配列が変更された後[1, 2, 1, 2, 1, 2]
。
その後、あなたは改定とでサブアレイの最大の配列に戻ります。
長さは、サブアレイであってもよいことに留意されたい 0
、その合計は、この場合もあります 0
。
結果として大きくなるので、必要なモード(MOD)でもよい 10^9 + 7
し、次いで戻ります。
例1:
入力:ARR = [1,2]、K = 3 出力:9
例2:
入力:ARR = [1、-2,1] 、K = 5 出力:2
例3:
入力:ARR = [-1、-2] = 7、K 0:出力
ヒント:
1 <= arr.length <= 10^5
1 <= k <= 10^5
-10^4 <= arr[i] <= 10^4