題目鏈結
可以看出是差分和字首和(差分的話自己並不熟練),這題主要是對前面知識進行回顧了差分和字首和的知識。
解題思路:
這裡需要注意的是:(注意形式)
二維字首和:
a[i]
[j]= a[i]
[j]+ a[i -1]
[j]+ a[i]
[j -1]
- a[i -1]
[j -1]
;
求出結果:
a[x2]
[y2]
- a[x1 -1]
[y2]
- a[x2]
[y1 -1]
+ a[x1 -1]
[y1 -1]
;
**:
#include
#include
#include
using
namespace std;
long
long a[
2010][
2010];
intmain()
// 差分完每一塊的值
for(
int i =
1; i <= n; i++)}
// 字首和
for(
int i =
1; i <= n; i++)}
for(
int i =
0; i < q; i ++
)return0;
}
每日一題 1
題目詳情 peter喜歡玩數字遊戲,但數獨這樣的遊戲對他來說太簡單了,於是他準備玩乙個難的遊戲。遊戲規則是在乙個n n的 裡填數,規則 對於每個輸入的n,從左上角開始,總是以對角線為起點,先橫著填,再豎著填。這裡給了一些樣例,請在樣例中找到規律並把這個n n的 列印出來吧。輸入描述 多組測試資料 資...
每日一題2018 3 21
leetcode 2 模擬十進位制運算考察單鏈表基本操作。題無難點,個人基礎需要提高。definition for singly linked list.struct listnode class solution while p while q if shi val s next null ret...
每日一題2018 3 22
leetcode 03 最長不重複子串 第一反應就是動態規劃。看到了網上的方法一。直接把問題簡化為找兩個重複字元間的最長距離,太巧妙了!class solution if i idx max locs s i i return max ling老師的方法二 仍舊轉化為動態規劃,但是為節省空間不再開個...