x 國王有乙個地宮寶庫,是 n×m個格仔的矩陣,每個格仔放一件寶貝,每個寶貝貼著價值標籤。
地宮的入口在左上角,出口在右下角。
小明被帶到地宮的入口,國王要求他只能向右或向下行走。
走過某個格仔時,如果那個格仔中的寶貝價值比小明手中任意寶貝價值都大,小明就可以拿起它(當然,也可以不拿)。
當小明走到出口時,如果他手中的寶貝恰好是 k件,則這些寶貝就可以送給小明。
請你幫小明算一算,在給定的局面下,他有多少種不同的行動方案能獲得這 k件寶貝。
輸入格式
第一行 3個整數,n,m,k,含義見題目描述。
接下來 n行,每行有 m 個整數 ci用來描述寶庫矩陣每個格仔的寶貝價值。
輸出格式
輸出乙個整數,表示正好取 k個寶貝的行動方案數。
該數字可能很大,輸出它對 1000000007取模的結果。
資料範圍
1≤n,m≤50,1≤k≤12,0≤ci≤12
輸入樣例1:
2 2 2
1 22 1
輸出樣例1:
2輸入樣例2:
2 3 2
1 2 3
2 1 5
輸出樣例2:
14ac**:
#include
const
int mod=
1000000007
;int n,m,k;
int w[51]
[51];
int f[51]
[51][
13][14
];//(i,j,k,c)
//從起點走到(i,j)選了k個物品,
//最後一件物品價值為c的方案總數
intmain()
//在原點一件物品都沒選的方案數
f[1]
[1][
0][0
]=1;
//在原點選當前物品的方案數
f[1]
[1][
1][w[1][
1]]=
1;for(
int i=
1;i<=n;
++i)
for(
int j=
1;j<=m;
++j)}}
}int ans=0;
//統計答案
for(
int c=
0;c<=13;
++c) ans=
(ans+f[n]
[m][k]
[c])
%mod;
printf
("%d"
,ans)
;return0;
}
藍橋杯 地宮取寶(動態規劃)
題面如下 x 國王有乙個地宮寶庫,是 n m n m 個格仔的矩陣,每個格仔放一件寶貝,每個寶貝貼著價值標籤。地宮的入口在左上角,出口在右下角。小明被帶到地宮的入口,國王要求他只能向右或向下行走。走過某個格仔時,如果那個格仔中的寶貝價值比小明手中任意寶貝價值都大,小明就可以拿起它 當然,也可以不拿 ...
歷屆試題 地宮取寶
歷屆試題 地宮取寶 時間限制 1.0s 記憶體限制 256.0mb 提交此題 問題描述 x 國王有乙個地宮寶庫。是 n x m 個格仔的矩陣。每個格仔放一件寶貝。每個寶貝貼著價值標籤。地宮的入口在左上角,出口在右下角。小明被帶到地宮的入口,國王要求他只能向右或向下行走。走過某個格仔時,如果那個格仔中...
歷屆試題 地宮取寶
題目鏈結 問題描述 x 國王有乙個地宮寶庫。是 n x m 個格仔的矩陣。每個格仔放一件寶貝。每個寶貝貼著價值標籤。地宮的入口在左上角,出口在右下角。小明被帶到地宮的入口,國王要求他只能向右或向下行走。走過某個格仔時,如果那個格仔中的寶貝價值比小明手中任意寶貝價值都大,小明就可以拿起它 當然,也可以...