Re: [閒聊] 每日leetcode

看板Marginalman作者 (早瀬ユウカの体操服 )時間1年前 (2024/08/04 14:46), 編輯推噓3(301)
留言4則, 4人參與, 1年前最新討論串634/1550 (看更多)
※ 引述《eden6197 (:))》之銘言: : 題目: : 問你subarray的和sort之後 : left到right加起來是多少 : 思路: : 照做 : 把subarray 通通弄出來之後 : sort加起來 思路: 用所有子陣列產生新陣列之後排序 我看他數字範圍是1~100 就算有1000個也沒多大 計數排序很好做 java code ----------------------------------------- class Solution { public int rangeSum(int[] nums, int n, int left, int right) { int[] cnt = new int[100001]; int MOD = 1000000007; for (int i = 0; i < n; i++) { int sum = 0; for (int j = i; j < n; j++) { sum += nums[j]; cnt[sum]++; } } int res = 0; int i = 0; int idx = 1; while (idx <= right) { if (cnt[i]-- <= 0) { i++; continue; } if (idx++ >= left) { res = (res + i) % MOD; } } return res; } } ----------------------------------------- -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.100.73.13 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1722754007.A.5B5.html

08/04 14:48, 1年前 , 1F
大師
08/04 14:48, 1F

08/04 14:48, 1年前 , 2F
大師
08/04 14:48, 2F

08/04 14:53, 1年前 , 3F
大師
08/04 14:53, 3F

08/04 15:00, 1年前 , 4F
大師
08/04 15:00, 4F
文章代碼(AID): #1choFNMr (Marginalman)
討論串 (同標題文章)
文章代碼(AID): #1choFNMr (Marginalman)