對你的進步沒什麼幫助的廢話: 今天學習了字首和與差分及類似物在一天的結束之時做了這麼一道題給我wa哭了 作文以祭之
據說有乙個n*m
的二維陣列,你需要在這陣列中找乙個c*c
的正方形使得正方形中的數的和最大,輸出這個正方形左上角的點的座標
使用技能二維字首和來解此題
設tab[i][j]
為以i,j為右下角,1,1為左上角的矩形中數的和
那麼我們畫個圖分析一波得:
tab[i]
[j]=tab[i]
[j]+tab[i-1]
[j]+tab[i]
[j-1
]-tab[i-1]
[j-1
];
有了這個我們就可以切掉此題了 哇(wa)好簡單啊(我卡我自己)
不在水題上出點問題我還配做蒟蒻嗎
直接看**吧
#include
#define ll long long
#define nn 1005
using
namespace std;
ll n,m,c,sum=
-99999999999
,xx,yy;
ll tab[nn]
[nn]
;int
main()
for(ll i=
1;i<=n;i++)}
} cout<" "
}
Daily C C 選擇題題解(1)
題目 於julyedu.com 1 有如下程式 執行後的輸出結果應該是 include using namespace std class base class derived public base int main a base b derived c basederived d derived...
題解 P2285 HNOI2004 打鼴鼠
現在知道在一段時間內,鼴鼠出現的時間和地點,請編寫乙個程式使機械人在這一段時間內打死盡可能多的鼴鼠。首先,座標為 x,y 到座標為 a,b 的網格需要的時間為 x a y b 由於題目已經自動幫我們按時間排好序了,所以,我們可以直接 dp 考慮揹包 include using namespace s...
題解 P2292 HNOI2004 L語言
這到題一眼看去,似乎就是個ac自動機,然後迅速的打出了ac自動機的板子。最開始我想的是,不就判斷一下長度就行了嗎,把每乙個單詞的長度求出來,在ac自動機的時候每次用當前位置的下標減去單詞長度,如果小於等於目前的字首長度,就更新答案,然後迅速地打出 發現只有70分,仔細思考了一下,發現是因為我沒有讀清...