qaq
話說這個題目跟那個乘號的比較像啊,,,,,,,
用f[i][j]表示前i個字母劃分為j段的單詞最大數
那麼我們很容易就得到乙個狀態轉移方程
f[i][j]=max(f[i][j],f[l-1][j]+w)//w為l-i區間裡單詞的數目
現在的問題是w咋求
之前我做的乙個題是劃分乘號的
那個我們處理了乙個sum[i][j]陣列,表示的是i-j組成的數字
這個題目可以這樣處理,但是還有個跟巧妙的方法
處理乙個d[i]陣列,表示以i為首位置的單詞的終點,這個距離肯定越小越好
這樣我們再倒著列舉,就可以達到乙個很好地效果
#include
#include
#include
#include
using
namespace
std;
char s[99999];
char sn[8][999],len[8];
int d[9999];//以i為首位置的單詞的終點
int dp[999][999];//前i個字母劃分為j段的單詞最大數
int p,m;
int t;
int screen()
if(flag) continue;
d[i]=min(d[i],i+len[j]-1);
} for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
}return dp[n][m];
}int main()
統計單詞個數
輸入 檔名稱 sum123.cpp 作 者 林海雲 完成日期 2014年12月16日 版 本 號 v2.0 問題描述 統計各陣列中單詞的個數 程式輸入 程式輸出 統計結果 include includeusing namespace std int pwordnum char str int mai...
統計單詞個數
從鍵盤輸入一句話,按回車鍵結束,由計數器統計輸入的單字個數。定義乙個計數器類,要求用建構函式把計數器的初值設定為0 用乙個成員函式 countword 用於統計單詞個數,用 display 函式將結果輸出到螢幕上。分析 這個很簡單,具體的思路有很多種,可以直接統計單詞的個數 while不等於空格 或...
統計單詞個數
編乙個程式,讀入使用者輸入的,以 結尾的一行文字,統計一共有多少個單詞,並分別輸出每個單詞含有多少個字元。凡是以乙個或多個空格隔開的部分就為乙個單詞 輸入包括1行字串,以 結束,字串中包含多個單詞,單詞之間以乙個或多個空格隔開。可能有多組測試資料,對於每組資料,輸出字串中每個單詞包含的字母的個數。c...