c時間限制:3000 毫秒 | c記憶體限制:3000 kb
題目內容:
設i是乙個n位十進位制整數.如果將i劃分為k段,則可得到k個整數.這k個整數的乘積稱為i的乙個k乘積.試設計乙個演算法,對於給定
的i和k ,求出i的最大k乘積.
input
輸入的第1行中有2個正整數n和k.正整數n是序列的長度;正整數k是分割的段數.接下來的一行中是乙個n位十進位制整數.(n<=10)
output
輸出計算結果,第1行中的數是計算出的最大k乘積.
n位十進位制整數.(n<=10)
輸入描述
輸入的第1行中有2個正整數n和k.正整數n是序列的長度;正整數k是分割的段數.接下來的一行中是乙個
輸出描述
輸出計算結果,第1行中的數是計算出的最大k乘積.
輸入樣例
2 115
輸出樣例
15*/
#include
#include
#include
using namespace std;
int n,m;
string s;
int a[15];
int dp[15][15];
int cal(int s,int e)
return ans;
}int main()
for(int i=1;i<=n;i++)
for(int i=1;i<=n;i++)
} }}
cout<
return 0;
}思路:
cal(i,j)記錄的是一串數字從第i位到第j位的數,
舉例:1234
cal(2,3) 就是23 cal(2,4)就是234
列表
j\i123
41112
123123420
236492300
614440
0024再注意一下細節問題
最大k乘積問題
設i是乙個n位十進位制整數。如果將i分割為k段,則可得到k個整數。這k個整數的乘積稱為i的乙個k乘積。試設計乙個演算法,對於給定的i和k,求出i的最大k乘積。設w i j 表示從第i位到第j位的數字表示的整數,m i j 表示前i位分成j段所得到的最大乘積,則 m i 1 w 1 i m i j m...
dp 最大k乘積問題
問題描述 設i是乙個 n位十進位制整數。如果將i劃分為 k段,則可得到k個整數。這k個整數的乘積稱為i 的乙個 k乘積。試設計乙個演算法,對於給定的 i和 k,求出 i的最大 k乘積。程式設計任務 對於給定的i和k,程式設計計算i的最大k 乘積。資料輸入 由檔案input.txt提供輸入資料。檔案的...
FZU 1208 最大k乘積問題
設i是乙個n位十進位制整數。如果將i劃分為k段,則可得到k個整數。這k個整數的乘積稱為i的乙個k乘積。試設計乙個演算法,對於給定的i和k,求出i的最大k乘積。對於給定的i和k,程式設計計算i的最大k乘積。輸入檔案由多組資料組成。每組資料格式如下 第1行中有2個正整數n和k。正整數n是序列的長度 正整...