題目描述
人生就像乙個n*n的矩陣,矩陣每個元素都跟上下左右四個方向的元素聯通,起始在左上角,終止在右下角,從起點開始,每次乙個向右或向下移動一格。
每個元素上面都有乙個人生成就值,表示你如果經歷這個元素時候能增加的人生成就。
初始時候你的人生成就值為0,你當然想到達終點時候能獲得最大的人生成就。那麼問題來了:(你一定會以為我會要你求出到達終點時的最大人生成就值,但是你錯了),問題就是,一共有多少條不同的路到終點時能達到最大的人生成就。
輸入約200個樣例
每個樣例的第一行為乙個整數n(2 ≤ n ≤ 500),表示矩陣大小。以後的n行,每行n個整數cij表示這個矩陣, 0 ≤ cij ≤ 100。
輸出每行輸出乙個整數,最終的結果可能很大,請把結果對123456取模。
樣例輸入
3 0 4 0
2 3 0
4 2 3
4 3 3 3 2
2 0 0 0
2 2 0 0
2 4 4 3
3 3 3 3
3 4 4
4 4 3
樣例輸出
1 2 5提示
大量的輸入輸出,請使用c風格的輸入輸出
#include
#include
#include
#include
#include
#include
using
namespace
std ;
int dp[510][510],ans[510][510];
int main()
}for(i=1;i<=t;i++)
else
if(dp[i-1][j]1])
else
ans[i][j]%=123456;}}
printf("%d\n",ans[t][t]%123456);
}return
0;}
XTU 迴圈3 素數
對於大於1的自然數,如果n為素數,那麼所有大於1且不大於n的平方根的自然數都不能整除n,反之亦然。所以我們可以通過測試來確定n是否為素數。現在給出n,要你求是否為素數,是輸出yes,否則輸出no 每行乙個正整數n,n 2 32 1,如果n為0,則輸入結束。判斷n是否為素數 每行輸出乙個用例的結果,如...
XTU1256 湘潭大學
題目描述 湘潭大學簡稱 xtu 作為即將成為湘大的乙份子,怎麼不能為湘大添磚加瓦了?現在給你乙個字串,請你計算一下,從中選取字元,最多能組成多少個 xtu 輸入 第一行是乙個整數k,表示樣例的個數。以後每行乙個字串,字串只包含英文大寫字母,長度不會超過1000。輸出 每行輸出乙個樣例的結果。樣例輸入...
XTU1262 優先佇列
使用優先佇列模擬一下就可以了,但是需要注意進行優化,題目有b 0的情況,也就是說無論如何撈魚都不會變,這種情況需要直接優化掉,不能進行模擬,否則會超時。include define ll long long define up i,l,h for int i l i define down i,h,...