锘??xml version="1.0" encoding="utf-8" standalone="yes"?>国产69精品久久久久9999APGF,漂亮人妻被黑人久久精品,色婷婷久久综合中文久久蜜桃avhttp://www.shnenglu.com/mtysblog/archive/2011/02/14/140051.html_椋炲瘨_椋炲瘨Mon, 14 Feb 2011 08:51:00 GMThttp://www.shnenglu.com/mtysblog/archive/2011/02/14/140051.htmlhttp://www.shnenglu.com/mtysblog/comments/140051.htmlhttp://www.shnenglu.com/mtysblog/archive/2011/02/14/140051.html#Feedback0http://www.shnenglu.com/mtysblog/comments/commentRss/140051.htmlhttp://www.shnenglu.com/mtysblog/services/trackbacks/140051.html    棰樻剰錛氫竴涓+鍏靛垪闃燂紝鍥犱負(fù)楂樺害瀵艱嚧鍙傚樊涓嶉綈錛岄暱瀹樿姹傛渶灝慿涓漢鍑哄垪錛屼嬌寰楀墿涓嬬殑浜哄湪涓嶆敼鍙樼浉瀵規(guī)搴忕殑鎯呭喌涓嬶紝淇濊瘉浠庡乏鍒板彸鐨勯珮搴︿繚璇佷弗鏍兼弧瓚?a1<a2<a3<...ai--ai+1>ai+2>ai+3>...>an銆?/p>

   涓婇潰榪欐潯琛ㄨ揪寮忓嚭鏉ヤ箣鍚庡氨寰堝鏄撴兂鍒癓IS浜?jiǎn)锛屼篃灏辨槸鏋氫妇ai鍜宎i+1鐨勪綅緗紝鐒跺悗宸﹀崐閮ㄥ垎鍜屽張鍗婇儴鍒嗗垎鍒線鐩稿弽鐨勬柟鍚戝仛LIS錛屾眰鍑哄嚭鍒楁暟鏈鐭殑涓涓腑鐐瑰嵆鍙紝鍏朵腑鍋歀IS鍙互閲囩敤浜屽垎鏌ユ壘錛屼嬌寰楄漿縐昏姳璐逛粠O(n)闄嶄負(fù)O(lg n)銆?br> 

 1#include<cstdio>
 2#include<cstring>
 3#define inf 0x7fffffff
 4#define N 1001
 5#define MAX(a,b) (a<b)?b:a
 6#define MIN(a,b) (a<b)?a:b
 7using namespace std;
 8int lis[N],lds[N];
 9double w[N];
10
11int find(double c[],int len,double k){
12    int left=0,right=len,mid=(left+right)/2;
13    while(left<=right){
14        if( k>c[mid] ) left=mid+1;
15        else if( k<c[mid] ) right=mid-1;
16            else return mid; }
17        mid=(left+right)/2;
18    }

19    return left;
20}

21
22int main(){
23    int n,i,j,res;
24    int tmpDp[N];
25    double c[N];
26    while(scanf("%d",&n)!=EOF){
27        for(i=0;i<n;i++) scanf("%lf",&w[i]);
28        
29        for(i=0;i<=n;i++) c[i]=inf;
30        c[0]=-1; c[1]=w[n-1];
31        memset(tmpDp,0,sizeof(tmpDp));
32        tmpDp[n-1]=1;
33        for(i=n-2;i>-1;--i){
34            j=find(c,n+1,w[i]);
35            c[j]=w[i]; tmpDp[i]=j;
36        }

37        for(j=-1,i=n-1;i>-1;--i){ j=MAX(j,tmpDp[i]); lds[i]=j; }
38        
39        for(i=0;i<=n;i++) c[i]=inf;
40        c[0]=-1; c[1]=w[0];
41        memset(tmpDp,0,sizeof(tmpDp));
42        tmpDp[0]=1;
43        for(i=1;i<n;++i){
44            j=find(c,n+1,w[i]);
45            c[j]=w[i]; tmpDp[i]=j;
46        }

47        for(j=-1,i=0;i<n;++i){ j=MAX(j,tmpDp[i]); lis[i]=j; }
48
49        res=inf;
50        for(i=0;i<n;++i){
51            res=MIN(res,n-(lis[i]+lds[i+1]));
52        }

53        printf("%d\n",res);
54    }

55    return 0;
56}


_椋炲瘨 2011-02-14 16:51 鍙戣〃璇勮
]]>
PKU 3267 The Cow Lexicon 瀛楃涓睤Phttp://www.shnenglu.com/mtysblog/archive/2011/02/12/139951.html_椋炲瘨_椋炲瘨Sat, 12 Feb 2011 12:56:00 GMThttp://www.shnenglu.com/mtysblog/archive/2011/02/12/139951.htmlhttp://www.shnenglu.com/mtysblog/comments/139951.htmlhttp://www.shnenglu.com/mtysblog/archive/2011/02/12/139951.html#Feedback0http://www.shnenglu.com/mtysblog/comments/commentRss/139951.htmlhttp://www.shnenglu.com/mtysblog/services/trackbacks/139951.html 
    Few know that the cows have their own dictionary with W (1 ≤ W ≤ 600) words, each containing no more 25 of the characters 'a'..'z'. Their cowmunication system, based on mooing, is not very accurate; sometimes they hear words that do not make any sense. For instance, Bessie once received a message that said "browndcodw". As it turns out, the intended message was "browncow" and the two letter "d"s were noise from other parts of the barnyard.
    The cows want you to help them decipher a received message (also containing only characters in the range 'a'..'z') of length L (2 ≤ L ≤ 300) characters that is a bit garbled. In particular, they know that the message has some extra letters, and they want you to determine the smallest number of letters that must be removed to make the message a sequence of words from the dictionary.

       寮濮嬬殑鏃跺欒寰楀緢闅撅紝鍚庢潵浠旂粏鎬濊冧箣鍚庢墠鍙戠幇鍒囧叆鐐癸紝閲嶈鐨勮繕鏄湅鍑轟竴涓悎閫傜殑瀛愰棶棰橈紝鎬諱箣DP棰樼洰灝卞緱澶氱粌鎵嶈兘鍑虹溂鍏夈?br>       璁綿p[i]涓哄墠i涓瓧絎﹁漿涓哄悎娉曟墍闇鍒犻櫎鐨勫瓧姣嶄釜鏁幫紝閭d箞褰撴垜浠掓帹dp[i+1]鐨勬椂鍊欙紝瀹為檯涓婂氨鏄皾璇曞鎵句竴涓瓧鍏擱噷鐨勪覆錛屽畠涔熶互sourc[i+1]鏀跺熬(鏈夌殑鍋氭硶鏄互i瀛楁瘝鎵撳ご寰鍓嶆帹)錛岄偅涔堣繖鏃跺檇p[i+1]闇瑕佺煡閬撶殑灝辨槸 dp[i-(cnt+w[j])]澶勭殑緇撴灉錛宑nt+w[j]鏄掗鐨勯暱搴︼紝榪欎釜闀垮害鍖呭惈浜?jiǎn)鏌愪釜鍚堟硶涓查暱搴[j]鍜宑nt涓鍒犻櫎鐨勫瓧絎︼紝姝ゆ椂鎺ㄥ緱涓涓復(fù)鏃惰В錛屾墍鏈夊瓧鍏稿崟璇嶆帹鍑虹殑涓存椂瑙d腑鏈灝忕殑涓涓漿縐諱箣銆?br>      杞Щ鏂圭▼錛欴P[i]=Min{ DP[i] ,DP[i-(cnt+w[k])]+cnt ,DP[i-1]+1 }

 1#include<iostream>
 2#include<cstring>
 3using namespace std;
 4#define MIN(a,b) (a<b)?a:b
 5#define L 301
 6#define W 601
 7int dp[L];
 8int lenArr[W];
 9char sourc[L+1];
10char dic[W][27];
11int main(){
12    int i,j,k;
13    int l,w;
14    int souPoi,dicPoi,cnt;
15    while(cin>>w>>l){
16        cin>>sourc;
17        for(i=0;i<w;i++){ cin>>dic[i]; lenArr[i]=strlen(dic[i])-1; }
18
19        for(i=0;i<=l;i++) dp[i]=0x7fffffff;
20        dp[0]=0;
21        for(i=1;i<=l;i++){
22            for(j=0;j<w;j++){
23                dicPoi=lenArr[j];
24                souPoi=i-1;
25                cnt=0;
26                /* 鍊掗鍖歸厤錛岃嫢褰撳墠涓嶅尮閰嶏紝鍒欏皾璇曞垹鍘諱竴涓瓧絎?nbsp;*/
27                while( souPoi>-1 && dicPoi>-1 ){
28                    if( sourc[souPoi] == dic[j][dicPoi] )--souPoi; --dicPoi; }
29                    else++cnt; --souPoi; }
30                }

31                if( dicPoi<0 ){ dp[i]=MIN(dp[i],dp[i-(cnt+lenArr[j]+1)]+cnt); }
32                else{ dp[i]=MIN(dp[i],dp[i-1]+1); }   /* 鍖歸厤澶辮觸 */
33            }

34        }

35
36        printf("%d\n",dp[l]);
37    }

38    return 0;
39}


_椋炲瘨 2011-02-12 20:56 鍙戣〃璇勮
]]>
PKU 1882 Stamps 鑳屽寘鍙樺艦http://www.shnenglu.com/mtysblog/archive/2011/02/11/139916.html_椋炲瘨_椋炲瘨Fri, 11 Feb 2011 12:20:00 GMThttp://www.shnenglu.com/mtysblog/archive/2011/02/11/139916.htmlhttp://www.shnenglu.com/mtysblog/comments/139916.htmlhttp://www.shnenglu.com/mtysblog/archive/2011/02/11/139916.html#Feedback1http://www.shnenglu.com/mtysblog/comments/commentRss/139916.htmlhttp://www.shnenglu.com/mtysblog/services/trackbacks/139916.html闃呰鍏ㄦ枃

_椋炲瘨 2011-02-11 20:20 鍙戣〃璇勮
]]>
璐烘柊鏄?銇?PKU 2011 Primary X-Subfactor Series 璁板繂鍖?浣嶈繍綆?/title><link>http://www.shnenglu.com/mtysblog/archive/2011/02/03/139707.html</link><dc:creator>_椋炲瘨</dc:creator><author>_椋炲瘨</author><pubDate>Thu, 03 Feb 2011 04:11:00 GMT</pubDate><guid>http://www.shnenglu.com/mtysblog/archive/2011/02/03/139707.html</guid><wfw:comment>http://www.shnenglu.com/mtysblog/comments/139707.html</wfw:comment><comments>http://www.shnenglu.com/mtysblog/archive/2011/02/03/139707.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/mtysblog/comments/commentRss/139707.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/mtysblog/services/trackbacks/139707.html</trackback:ping><description><![CDATA[     鎽樿:       鍝ヤ負(fù)浜?jiǎn)鏉ヲq翠氦榪囧ソ榪愶紝澶у勾涓夊崄鐗瑰湴涓婃潵鍒瘋繖棰橈紝緇撴灉灝辮泲鐤煎埌浜?1錛?0鎵嶅啓瀹岋紝涓嶈繃寰堥珮鍏磋兘澶?A錛屽笇鏈涗粖騫翠簨浜嬮『鍒╋紒      棰樼洰瑕佹眰瀵逛竴涓粰瀹氱殑鑷劧鏁幫紝姹傚嚭涓涓鍚堣瀹氱殑鐨勯檷搴忓垪錛岃繖涓鍒欏氨鏄瘡嬈′粠鏁板垪鍓嶄竴欏瑰噺鍘誨嚑涓暟浣嶏紝鑰岃繖鍑犱釜鏁頒綅鏋勬垚鐨?#8220;鍚堟硶鑷劧鏁?...  <a href='http://www.shnenglu.com/mtysblog/archive/2011/02/03/139707.html'>闃呰鍏ㄦ枃</a><img src ="http://www.shnenglu.com/mtysblog/aggbug/139707.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/mtysblog/" target="_blank">_椋炲瘨</a> 2011-02-03 12:11 <a href="http://www.shnenglu.com/mtysblog/archive/2011/02/03/139707.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>PKU 1014 Dividing | 1276 Cash Machine 澶氶噸鑳屽寘http://www.shnenglu.com/mtysblog/archive/2010/12/25/137410.html_椋炲瘨_椋炲瘨Sat, 25 Dec 2010 03:04:00 GMThttp://www.shnenglu.com/mtysblog/archive/2010/12/25/137410.htmlhttp://www.shnenglu.com/mtysblog/comments/137410.htmlhttp://www.shnenglu.com/mtysblog/archive/2010/12/25/137410.html#Feedback0http://www.shnenglu.com/mtysblog/comments/commentRss/137410.htmlhttp://www.shnenglu.com/mtysblog/services/trackbacks/137410.html      1014 棰樼洰澶ф剰錛?br>            涓や釜濞冨瓙鍒嗗脊鐝狅紝鏈夊叚縐嶅彲鑳斤紙1-6錛夌殑濂藉潖紼嬪害鐨勫脊鐝狅紝緇欏畾姣忕濂藉潖寮圭彔鐨勬暟閲忥紝姹傛槸鍚﹀瓨鍦ㄤ嬌濂藉潖搴︽誨拰鍧囧垎鐨勫垎閰嶆柟妗堛?br>      1026 棰樼洰澶ф剰錛?br>            涓鍙板嚭綰蟲(chóng)満錛屾牴鎹笉鍚岀殑閲戦璇鋒眰“灝介噺”鍚愬嚭鏇村鐨勯噾棰濅唬鍒革紝鏈楂樼瓑鍊箋傞棶緇欏畾涓涓噾棰濇暟閲忥紝鍜屾満鍣ㄥ唴涓嶅悓闈㈤浠e埜鐨勫瓨錛?br>  閲忥紝闂満鍣ㄨ兘鍚愬嚭閫艱繎璇鋒眰鐨勬渶楂橀潰鍊兼誨拰鏄灝戙?br>
      棰樼洰妯″瀷寰堟槑鏄撅紝寰堝鏄撹仈緋誨埌澶氶噸鑳屽寘銆傚浜庣涓棰橈紝棣栧厛灝嗗脊鐝犱環(huán)鍊兼誨拰鍑忓崐琛ㄧず涓簐錛岀劧鍚庢瀯閫犱竴涓獀瀹歸噺鑳屽寘錛岄鐩瓑浠蜂簬璇㈤棶
璇ヨ儗鍖呯殑鏈澶у瓨鍏ユ柟妗堟槸鍚﹁兘浣垮瓨鍏ユ婚噸閲忔伆濂界瓑浜巚錛熻漿縐繪柟紼嬶細(xì) dp[i][v]=Max( dp[i-1][v], dp[i-1][v-k*w[j]]+k*c[i] | w[i] = c[i], 0<=k<=maxK  )銆?br>鍚岀悊絎簩棰樼殑杞Щ鏂圭▼涓?014鍩烘湰涓鏍鳳紝鐗╁搧鏀剁泭鍗充負(fù)鐗╅噸錛宒p緇撴灉鍗充負(fù)v瀹硅儗鍖呮渶澶х疆鍏ラ噺銆?br>
      棰樼洰鏁版嵁寰堝急錛屾嵁璇寸‖鎼滆兘榪囥傘傘?涓嶈繃榪樻槸鎸夌収澶氶噸鑳屽寘鐨勪紭鍖栨妧宸ф潵鍋氾紝鍗崇敤浜岃繘鍒舵媶鍒嗙墿鍝佹暟錛屽鏄撹瘉鏄庤繖鏍風(fēng)殑鎷嗗垎鑳戒繚璇佹渶浼樻?br>鍜屾紜с傛椂闂村鏉傚害O(C*V*logN)銆?瀵逛簬O(C*V)綆楁硶錛屽彲浠ュ弬鑰?nbsp;銆婂浗瀹墮泦璁槦2009璁烘枃闆嗘祬璋堝嚑綾昏儗鍖呴 銆嬩腑鍗曡皟闃熷垪浼樺寲DP鐨勬妧宸с?br>
 1014錛?br>
 1#include<cstdio>
 2#include<cstdlib>
 3#include<cstring>
 4#define max(a,b) (a>b)?a:b;
 5#define MAXV 20000*6+1
 6int dp[MAXV];
 7int nk[6];
 8
 9int main(){
10    int i,k,min,v;
11    int cnt,sum;
12    int _case=0;
13    while(1){
14        for(sum=i=0;i<6;i++{
15            scanf("%d",&nk[i]);
16            sum+=nk[i]*(i+1);
17        }

18        if!nk[0& !nk[1& !nk[2& !nk[3& !nk[4& !nk[5] ) break;
19        _case++;
20        if( _case!=1 ) printf("\n");
21        if( sum%2 ){
22            printf("Collection #%d:\n",_case);
23            printf("Can't be divided.\n");
24        }

25        else{
26            sum/=2;
27            memset(dp,0,sizeof(int)*(sum+1));
28            for(i=0;i<6;i++){
29                cnt=1;
30                k=(sum/(i+1)>=nk[i])?nk[i]:sum/(i+1);
31                while(k){
32                    if( cnt>k ) cnt=k;
33                    k-=cnt;
34                    min=cnt*(i+1);
35                    for(v=sum;v>=min;v--)
36                        /* 瀵規(guī)瘡涓涓媶鍒嗘暟 cnt錛屽崟鐙仛 0/1鑳屽寘 */
37                       dp[v]=max(dp[v],dp[v-cnt*(i+1)]+cnt*(i+1));
38                    cnt<<=1;
39                }

40            }

41            if( sum == p[sum] ) {
42                printf("Collection #%d:\n",_case);
43                printf("Can be divided.\n");
44            }

45            else {
46                printf("Collection #%d:\n",_case);
47                printf("Can't be divided.\n");
48            }

49        }

50    }

51    return 0;
52}

53


_椋炲瘨 2010-12-25 11:04 鍙戣〃璇勮
]]>
PKU 1837 - Balance 鏃犻檺鑳屽寘鍙樺艦http://www.shnenglu.com/mtysblog/archive/2010/12/20/137058.html_椋炲瘨_椋炲瘨Mon, 20 Dec 2010 14:08:00 GMThttp://www.shnenglu.com/mtysblog/archive/2010/12/20/137058.htmlhttp://www.shnenglu.com/mtysblog/comments/137058.htmlhttp://www.shnenglu.com/mtysblog/archive/2010/12/20/137058.html#Feedback0http://www.shnenglu.com/mtysblog/comments/commentRss/137058.htmlhttp://www.shnenglu.com/mtysblog/services/trackbacks/137058.html  棰樼洰澶ф剰錛?/p>

     緇欏畾涓涓艦寮忕殑澶╂灠錛屽ぉ鏋頒笂榪滅涓偣鐨勪笉鍚岃窛紱繪嫢鏈夐挬瀛愩傜粰瀹氬悇縐嶉噸閲忕牆鐮侊紝闂繀欏繪偓鎸傛墍鏈夌牆鐮佺殑鍓嶆彁涓嬶紝緇存寔澶╂灠騫寵 鐨勬寕娉曟暟涓哄灝戯紵

     鏆村姏灝濊瘯鐨勬灇涓鵑噺鎯婁漢錛屾樉鐒跺嵆浣垮ぉ鏋板綋鍓嶄笉騫寵 錛屼絾瀹冪殑“涓嶅鉤琛″害”鏄彲浠ュ埄鐢ㄧ殑銆傚叧閿槸濡備綍璁捐DP鐘舵併傛櫘閬嶇殑鍋氭硶鏄互i涓墿鍝佷負(fù)闃舵錛岃綆楁?zhèn)寕鍒敖W琲涓墿鍝佹椂錛屽綋鍓嶅鉤琛″害杈懼埌v鐨勬柟娉曟繪暟銆傛槗寰?-7500<=v<=7500錛?dp[i][v]=鈭慸p[i-1][v-hoox[j]*w[i]] → dp[i][v+inf]=鈭慸p[i-1][v-hoox[j]*w[i]+inf]銆傚父鏁?inf 浠呬負(fù)淇濊瘉鏁扮粍涓嬫爣涓嶄負(fù)璐熴傛垜浠槑鏄懼彂鐜板畠鍦ㄥ艦寮忎笂綾諱技浜庤儗鍖呴棶棰橈紝絳変環(huán)浜庡湪v瀹硅儗鍖呬腑錛屽皾璇曟斁鍏ラ噸閲忎負(fù)hoox[j]*w[i]鐨勭墿鍝侊紝鎹㈠彇鏀剁泭涓縐嶆柟娉曘?/p>

     瀹規(guī)槗鐞嗚В錛屽垵濮嬭В dp[0][0+inf]=1錛岀洰鏍囪В dp[m][0+inf] 銆?br>

     綾繪瘮:

       http://acm.ustc.edu.cn/ustcoj/problem.php?id=1116 

       DD鐗?<< 鑳屽寘涔?jié)璁?nbsp;>>

 1#include<cstdio>
 2#include<cstring>
 3#define G 21
 4#define N 21
 5#define inf 7500
 6
 7int dp[G][inf+inf+1];
 8int w[G],h[N];
 9
10int main(){
11    int n,m,i,j,v;
12    while(scanf("%d%d",&n,&m)!=EOF){
13        for(i=0;i<n;i++) scanf("%d",&h[i]);
14        for(i=1;i<=m;i++) scanf("%d",&w[i]);
15        
16        memset(dp,0,sizeof(dp));
17        dp[0][0+inf]=1;
18        
19        for(i=1;i<=m;i++)
20            for(v=-1*inf;v<=inf;v++)
21                for(j=0;j<n;j++)
22                    if( v-h[j]*w[i]+inf+1 )
23                        dp[i][v+inf]+=dp[i-1][v-h[j]*w[i]+inf];
24                    
25        printf("%d\n",dp[m][0+inf]);
26    }

27    return 0;
28}

29


_椋炲瘨 2010-12-20 22:08 鍙戣〃璇勮
]]>
NOIP2005 闈掕洐榪囨渤 鐘舵佸帇緙〥Phttp://www.shnenglu.com/mtysblog/archive/2010/12/20/137049.html_椋炲瘨_椋炲瘨Mon, 20 Dec 2010 13:52:00 GMThttp://www.shnenglu.com/mtysblog/archive/2010/12/20/137049.htmlhttp://www.shnenglu.com/mtysblog/comments/137049.htmlhttp://www.shnenglu.com/mtysblog/archive/2010/12/20/137049.html#Feedback0http://www.shnenglu.com/mtysblog/comments/commentRss/137049.htmlhttp://www.shnenglu.com/mtysblog/services/trackbacks/137049.html   榪欓亾NOIP2005鐨勯鐩槸閬撳ソ棰橈紝鎬濊礬澶氬錛岀紪鐮佹妧宸у澶氥傛嵁璇碞OI澶忎護(hù)钀ョ殑鏃跺欒檸鐖?br>榪樹(shù)笓闂ㄦ嬁鍑烘潵媧ユ觸涔愰亾錛堟睏~錛夈?閴翠簬濂戒箙娌″仛NOI鐨勯?shù)簡(jiǎn)锛屾彘y鏈変漢闂亾錛屽氨鍐欎釜瑙i鎶?br>鍛婂惂銆?/p>


棰樼洰鎻忚堪
銆銆鍦ㄦ渤涓婃湁涓搴х嫭鏈ㄦˉ錛屼竴鍙潚铔欐兂娌跨潃鐙湪妗ヤ粠娌崇殑涓渚ц煩鍒板彟涓渚с傚湪妗ヤ笂鏈変竴浜涚煶
瀛愶紝闈掕洐寰堣鍘岃俯鍦ㄨ繖浜涚煶瀛愪笂銆傜敱浜庢ˉ鐨勯暱搴﹀拰闈掕洐涓嬈¤煩榪囩殑璺濈閮芥槸姝f暣鏁幫紝鎴戜滑鍙?br>浠ユ妸鐙湪妗ヤ笂闈掕洐鍙兘鍒拌揪鐨勭偣鐪嬫垚鏁拌醬涓婄殑涓涓叉暣鐐癸細(xì)0錛?錛?#8230;…錛孡錛堝叾涓璍鏄ˉ鐨勯暱搴︼級(jí)銆?br>鍧愭爣涓?鐨勭偣琛ㄧず妗ョ殑璧風(fēng)偣錛屽潗鏍囦負(fù)L鐨勭偣琛ㄧず妗ョ殑緇堢偣銆傞潚铔欎粠妗ョ殑璧風(fēng)偣寮濮嬶紝涓嶅仠鐨勫悜緇堢偣
鏂瑰悜璺寵穬銆備竴嬈¤煩璺冪殑璺濈鏄疭鍒癟涔嬮棿鐨勪換鎰忔鏁存暟錛堝寘鎷琒,T錛夈傚綋闈掕洐璺沖埌鎴栬煩榪囧潗鏍囦負(fù)L
鐨勭偣鏃訛紝灝辯畻闈掕洐宸茬粡璺沖嚭浜?jiǎn)鐙湪妗ャ?/p>

銆銆棰樼洰緇欏嚭鐙湪妗ョ殑闀垮害L錛岄潚铔欒煩璺冪殑璺濈鑼冨洿S,T錛屾ˉ涓婄煶瀛愮殑浣嶇疆銆備綘鐨勪換鍔℃槸紜畾
闈掕洐瑕佹兂榪囨渤錛屾渶灝戦渶瑕佽俯鍒扮殑鐭沖瓙鏁般?/p>

銆銆瀵逛簬鍏ㄩ儴鐨勬暟鎹紝L <= 10^9銆?/p>

杈撳叆鏍煎紡
銆銆杈撳叆鐨勭涓琛屾湁涓涓鏁存暟L錛? <= L <= 10^9錛夛紝琛ㄧず鐙湪妗ョ殑闀垮害銆傜浜岃鏈変笁涓?br>姝f暣鏁癝錛孴錛孧錛屽垎鍒〃紺洪潚铔欎竴嬈¤煩璺冪殑鏈灝忚窛紱伙紝鏈澶ц窛紱伙紝鍙?qiáng)妗ヤ笂鐭冲瓙鐨勪釜鏁板Q屽叾涓?br>1 <= S <= T <= 10錛? <= M <= 100銆傜涓夎鏈塎涓笉鍚岀殑姝f暣鏁板垎鍒〃紺鴻繖M涓煶瀛愬湪鏁?br>杞翠笂鐨勪綅緗紙鏁版嵁淇濊瘉妗ョ殑璧風(fēng)偣鍜岀粓鐐瑰娌℃湁鐭沖瓙錛夈傛墍鏈夌浉閭?cè)潥勬暣鏁颁箣闂寸敤涓涓┖鏍奸殧寮銆?/p>

杈撳嚭鏍煎紡
銆銆杈撳嚭鍙寘鎷竴涓暣鏁幫紝琛ㄧず闈掕洐榪囨渤鏈灝戦渶瑕佽俯鍒扮殑鐭沖瓙鏁般?/p>

鏍蜂緥杈撳叆
10
2 3 5
2 3 5 6 7
鏍蜂緥杈撳嚭
2

鍒嗘瀽錛?/p>

   棣栧厛娉ㄦ剰涓嬫暟鎹噺錛宮axL=10^9錛岃繖鏄竴涓嵆浣挎槸綰挎х畻娉曚篃宸茬粡閫艱繎榪愯鏃墮檺鐨勮妯°?br>鎵浠ヨ鍑嗗濂借繘琛屾瀬闄愪紭鍖栥?br>   鏄捐屾槗瑙侊紝鏈綰湸鐨勬兂娉曟槸灝濊瘯鎼滅儲(chǔ)錛屼粠涓涓偣鎵╁睍鍑烘墍鏈夊彲鑳借煩鍒扮殑鐐癸紝渚濇綾繪帹錛?br>鏈鍚嶥FS瀵繪壘鐢遍《鑷充笅緇忚繃鐭沖瓙鏈灝戠殑璺緞鍗沖彲銆備絾娉ㄦ剰鍒版爲(wèi)鐨勫搴︽湁鍙兘杈懼埌maxJump=10錛?br>娣卞害涔熷拰L鎴愭姣旓紝鏁呰洰鍔涙悳绱笉鐜板疄銆?br>   鍙笉鍙互榪涜浼樺寲鍛紵鎴戜滑娉ㄦ剰鍒幫紝DFS鏁堢巼浣庝笅鐨勪竴涓緢閲嶈鍘熷洜鏄紝閫掑綊閬嶅巻鐨勮礬
寰勬湁璁稿嬈″叾瀹炴槸鍚屼竴鏉¤礬寰勶紝榪欎簺閲嶅宸ヤ綔娑堣椾簡(jiǎn)澶鏃墮棿銆備簬鏄垜浠嚜鐒惰岀劧鎯沖埌瑕佸
鎵捐蹇嗗寲鐨勭畻娉曘?br>   鎴戜滑鍙戠幇錛岃繖涓棶棰樺疄闄呬笂鍖呭惈鏈浼樺瓙緇撴瀯錛屽彧瑕侀潚铔欒兘绔欏湪鏌愪竴涓綅緗紝浠ュ畠鐨勬櫤鍟?br>緇濆浼?xì)浠庡墠闈涓彲鑳界殑浣嶇疆涓紝瀵繪壘榪欎箞涓涓綅緗紝榪欎釜浣嶇疆鎵澶勫湪鐨勮煩璺冭礬寰勪笂鎵緇忚繃鐨?br>鐭沖瓙鏄渶灝戠殑錛屼粠榪欎釜浣嶇疆璺寵穬鑰屾潵銆傛樉鐒?dòng)灱寴q欎釜鎬ц川鏄掑綊瀹氫箟鐨勩?棰濆鐨勶紝鎴戜滑鐪嬪埌錛?br>褰撻潚铔欑珯鍦ㄦ煇鏉¤礬寰勪笂鐨勬煇涓綅緗紝閭d箞瀹冩鍚庤煩璺冪殑璺緞錛堝綋鐒舵槸鍙兘鐨勮礬寰勶級(jí)鐨勯夋嫨騫?br>涓嶅彈涔嬪墠鐨勭粨鏋滄墍騫叉秹錛屽洜姝ら棶棰樺叿澶囨棤鍚庢晥鎬с?br> 
   鍙互鍔ㄨ浜?jiǎn)锛屼笅闈㈢洿鎺ゾl欏嚭杞Щ鏂圭▼銆?nbsp;
   
   DP[n]=min{DP[k]|n-maxJump<=k<=n-minJump}+t
   t=0||t=1
  
   鍗籌紝璁句竴涓綅緗彲浠ュ埌杈撅紝閭d箞蹇呬粠鍓嶉潰鍙兘鐨勪綅緗夋嫨涓涓紝璇ヤ綅緗墍澶勭殑璺緞涓婄粡
榪囩煶瀛愭渶灝戙傝嫢褰撳墠浣嶇疆鏈夌煶瀛愶紝dp緇撴灉鍐嶅姞涓銆?br>   榪欐槸涓涓狾(n)鐨勯『鎺紝浣嗘槸錛屽鏋渕inJump-maxJump=1-10錛屽父鏁癈灝變細(xì)澶ぇ閫犳垚瓚呮椂銆傝兘
涓嶈兘鍐嶄紭鍖栧憿錛熶粩緇嗚瀵燂紝鍙戠幇鐭沖瓙鏈澶氭湁100綺掞紝鍦ㄦ暣涓?0^9闀垮害涓垎甯冪浉褰撶█鐤忥紝榪欐槸涓
涓緢閲嶈鐨勭壒鐐癸紒鍋囪 minJuump!=maxJump錛岄偅涔堣嫢絀虹櫧浣嶇疆瓚沖闀匡紝dp鐨勭粨鏋滄渶緇堥兘浼?xì)瓒?br>鍚戜簬涓涓ǔ瀹氬鹼紝榪欎釜鍊兼槸鍓嶉潰鎵鏈夊彲鑳界殑dp緇撴灉涓渶灝忕殑閭d釜(璇瘋鑰呰嚜宸辨兂璞★紝鑻ヨ煩璺冪殑
姝ラ暱鍙互閫夋嫨錛屽嵆璺沖埌鏌愪釜浣嶇疆鐨勮搗璺崇偣鍙互閫夋嫨鐨勮瘽錛屽湪瓚沖榪滅殑鏈潵錛屼竴涓仾鏄庣殑闈掕洐
鑲畾浼?xì)鍦ㄤ竴鏉℃渶浼樼殑璺緞涓婂眮棰犵潃~ 姹?銆?/p>

  渚嬪鍦ㄨ繖涓鏁版嵁
   25
   4 5 5
   2 3 5 6 7

  0~4浣嶇疆鐨勫垵濮媎p鎸囦緷嬈′負(fù) [0,0,1,1,0]錛屽畠?yōu)畣鏈夊涓嬪彉鍖栧Q屽茍涓旇秼浜庣ǔ瀹氬?錛?/p>

 (0~5)=[0,0,1,1,0,1]
 (1~6)=[0,1,1,0,1,1]
 (2~7)=[1,1,0,1,1,1]
 (3~8)=[1,0,1,1,1,0]
 (4~9)=[0,1,1,1,0,0]
 (5~10)=[1,1,1,0,0,2]
 (6~11)=[1,1,0,0,2,2]
 (7~12)=[1,0,0,2,2,0]
 (8~13)=[0,0,2,2,0,0]
 (9~14)=[0,2,2,0,0,0]
 (10~15)=[2,2,0,0,0,2]
 (11~16)=[2,0,0,0,2,0]
 (12~17)=[0,0,0,2,0,0]
 (13~18)=[0,0,2,0,0,0]
 (14~19)=[0,2,0,0,0,0]
 (15~20)=[2,0,0,0,0,0]
 ......
 
    涓轟簡(jiǎn)鍒╃敤榪欎釜鎬ц川錛屾垜浠厛紜畾瑕佷嬌鐢ㄧ殑鏁版嵁緇撴瀯銆傛樉鑰屾槗瑙佺殑錛屽絎琲涓綅緗殑璁$畻錛?br>鍙緷璧栦簬璺濈i涓瀹氳窛紱葷殑鏁頒釜宸茬煡緇撴灉銆傚洜姝わ紝鎴戜滑鍙渶鍏沖績(jī)鐩稿鍧愭爣鍗沖彲錛屼簬鏄嬌鐢ㄩ槦鍒?br>淇濆瓨i涔嬪墠涓瀹氳窛紱誨唴鐨刣p緇撴灉錛岃綆楀畬姣曞悗 dp[i-maxJump] 鍑洪槦錛宒p[i]鍏ラ槦錛屽啀鍒╃敤璇ラ槦
鍒楄綆梔p[i+1]錛屽姝ゅ線澶嶅驚鐜?br> 鐜板湪鍥炲埌涔嬪墠鐨勮璁猴紝褰撲竴涓槦鍒椾腑鐨勭粨鏋滃凡緇忚揪鍒扮ǔ鎬侊紝閭d箞瀵逛笅涓嬈¤綆楋紝瀹冨彧鑳戒駭
鐢熶袱縐嶇粨鏋滐細(xì)濡傛灉璁$畻浣嶇疆娌℃湁鐭沖瓙錛岄偅涔堥槦鍒椾粛鐒朵繚鎸佺ǔ瀹氾紱濡傛灉鏈夌煶瀛愶紝閭d箞鍔犱竴鐨勭粨鏋?br>灝嗕嬌寰楅槦鍒楀啀嬈″嚭鐜頒笉紼沖畾銆?澶氫箞浠や漢鎸鐨勭粨璁猴紒
   榪欐剰鍛崇潃浠涔堝憿錛熻繖鎰忓懗鐫褰撲綘鍙戠幇闃熷垪宸茬粡榪涘叆紼沖畾鐨勬椂鍊欙紝鍚庨潰鎵鏈夊涓嶅瓨鍦ㄧ煶瀛愮殑
浣嶇疆榪涜鐨勮綆楅兘鏄彲浠ュ拷鐣ョ殑錛屼綘涓嶅Θ鐩存帴璁$畻鍒頒笅涓涓湭璁塊棶鐨勪笖鏈夌煶瀛愮殑浣嶇疆鍗沖彲銆?br>   寰堝浜哄凡緇忕湅鍒頒簡(jiǎn)錛岃繖鏄竴涓姸鎬佸帇緙?DP鐨勫仛娉曘?br>  
   綆楁硶緇堟: 1.dp宸茶綆楀畬鎵鏈夌煶瀛愬茍涓旂粨鏋滆繘鍏ョǔ瀹氭?br>             2. 闃熷垪宸茬粡紼沖畾騫朵笖涓嬩竴涓惤鍦扮殑浣嶇疆鎵鏈夊彲鑳界殑璧風(fēng)偣閮藉湪妗ョ殑緇堢偣鎴栦箣澶?br>            
   璇昏呭彲浠ヨ嚜琛屽垎鏋愪腑姝㈢殑鏉′歡錛屽墿涓嬬殑鍙渶瑕佽冭檻緇嗚妭闂灝卞彲浠ヤ簡(jiǎn)錛屽彧瑕佹濊礬娓呮櫚鏈?br>棰樺氨涓嶄細(xì)澶毦榪囥傜畻娉曠殑瀹為檯榪愯鏁堢巼娌℃湁闂錛屽崟涓瀬闄愭暟鎹彧娑堣椾簡(jiǎn)45ms銆?/p>

   鏈鎹榪樻湁鍏朵粬瑙f硶錛屼緥濡傛暟瀛﹁鐐廣佹渶鐭礬瑙傜偣絳夛紝鎰熷叴瓚g殑鍙互google涓嬨?br>   涓嬮潰緇欏嚭綆楁硶鐨刴ain鍑芥暟妗嗘灦.


int main(){

       scanf("%d%d%d%d",&l,&s,&t,&m);

       for(step=0;step<m;step++)
          scanf("%d",&stone[step]);   
       qsort(stone,m,sizeof(stone[0]),cmp);
        
       _que=(Queue)CreatNewQueue;
       for(step=0;step<t;step++) Enqueue(_que,0);  //鍒濆鍖朌P闃熷垪

       result=0;
       stepTotal=0;
       stepStone=-1;
       if(s!=t){
          while(1){
              if(IsStran(_que)){
                 if(stepTotal-t>=l||stepStone==m-1) break;  
                    stepStone++;  
                    stepTotal=stone[stepStone];
                 }             
                 else
                    stepTotal++;

                 DPCompute(_que,stepTotal,stone);
           }
           result=_que->head->dpS;
       }
       else{                         
       // 褰搒=t 鏃跺叾瀹炰粛鐒剁鍚堣漿縐繪柟紼嬬殑瀹氫箟錛屼絾綆鍗曡搗瑙佸啓鎴愪簡(jiǎn)濡備笅褰㈠紡
            for(step=0;step<m;step++)
               if(stone[step]%s==0) result++;
       }
       printf("%d\n",result);
       return 0;
}



_椋炲瘨 2010-12-20 21:52 鍙戣〃璇勮
]]>
久久久久亚洲av无码专区喷水| 久久国产精品国产自线拍免费| 国产精品久久久久久久久免费| 久久精品一区二区三区中文字幕| 人妻精品久久久久中文字幕一冢本| 久久99精品久久久久久不卡| 五月丁香综合激情六月久久 | 色婷婷综合久久久久中文一区二区| 99久久精品免费观看国产| 久久久久久亚洲精品成人| 久久夜色精品国产| 久久国产精品一区二区| 婷婷五月深深久久精品| 久久精品国产久精国产果冻传媒 | 久久国产精品久久| 色综合久久中文字幕无码| 亚洲精品视频久久久| 一本久久a久久精品综合夜夜| 国产情侣久久久久aⅴ免费| 中文字幕无码免费久久| 情人伊人久久综合亚洲| 波多野结衣中文字幕久久 | 久久免费看黄a级毛片| 天天影视色香欲综合久久| 国产精品无码久久久久| 一级做a爰片久久毛片16| 久久se精品一区二区| 韩国无遮挡三级久久| 久久99精品国产一区二区三区 | 久久A级毛片免费观看| 久久综合香蕉国产蜜臀AV| 亚洲精品美女久久久久99| 亚洲精品乱码久久久久久| 久久精品国产久精国产果冻传媒 | 狠狠色综合久久久久尤物| 国产—久久香蕉国产线看观看 | 亚洲欧美国产精品专区久久| 亚洲国产成人乱码精品女人久久久不卡 | 久久亚洲精品中文字幕| 久久久久亚洲精品无码蜜桃| 国内精品久久久久久久97牛牛|