<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      codefores刷題心得3 思維+dp(特別好玩)

      1.1438 C. Engineer Artem(思維)

      我當(dāng)時(shí)不會(huì)看的題解,很自閉,沒(méi)想到今天看dalao,他也沒(méi)想到,hhhhhh

      題目鏈接https://codeforces.com/contest/1438/problem/C

      題目大意:給你一個(gè)數(shù)字矩陣,你可以選擇任意位置+1操作(最多加一次),讓你左右相鄰和上下相鄰的數(shù)字都不相同。

      解題思路

      這題上下左右不可以相同,但是斜著的都是可以相同的。就可以把矩陣分成兩塊,只需要保證一塊為奇數(shù),另一塊為偶數(shù)即可。就一定不會(huì)相同的。

      這道題的題解太巧了呀!!!我什么時(shí)候能有這樣的好腦子

      AC代碼

      #include <iostream>
      #include <algorithm>
      using namespace std;
      const int maxn = 1e2+4;
      int mp[maxn][maxn];
      
      int main(){
      	int t;
      	cin>>t;
      	int n,m;
      	while(t--){
      		scanf("%d%d",&n,&m);
      		for(int i=0;i<n;i++){
      			for(int j=0;j<m;j++){
      				cin>>mp[i][j];
      				if((i+j)%2==0){
      					if(mp[i][j]%2!=0){
      						mp[i][j]++;
      					}	
      				}else{
      					if(mp[i][j]%2==0){
      						mp[i][j]++;
      					}
      				}
      			}
      		}
      		for(int i=0;i<n;i++){
      			for(int j=0;j<m;j++)
      				cout<<mp[i][j]<<' ';
      			cout<<endl;
      		}
      	
      	}	
      	return 0;
      }
      

      2.1389 B. Array Walk

      dalao眼中的簡(jiǎn)單dp

      題目鏈接:https://codeforces.com/contest/1389/problem/B

      題目大意:從第一個(gè)位置進(jìn)行移動(dòng),每次可向左或者向右移動(dòng),數(shù)組大小為n,移動(dòng)次數(shù)為k,最多向左移動(dòng)次數(shù)為z,讓你求移動(dòng)得到的最大的加和。

      樣例解釋:

      第一個(gè)只能向右移動(dòng): 1+5+4+3+2=15

      第二個(gè)能向左移動(dòng)一次: 1 +5+4+5+3=19

      .....

      所以可以使用dp操作,因?yàn)閦<=5所以最多一次操作有5個(gè)可能的位置。

      dp[i][j] //i代表第幾次操作,j代表當(dāng)前在哪個(gè)位置 
          
      dp[1][2]=a[1]+a[2]//經(jīng)過(guò)一次操作,不可能在1的位置
      
      dp[2][3]=dp[1][2]+a[3]
      dp[2][1]=dp[1][2]+a[1]
      
      dp[3][4]=dp[2][3]+a[4]
      dp[3][2]=dp[2][3]+a[2]
      
      dp[4][5]=dp[3][4]+a[5]
      dp[4][3]=dp[3][2]+a[3],dp[3][4]+a[3]
      dp[4][1]=dp[3][2]+a[1]
      
      dp[5][6]=dp[4][5]+a[6]
      dp[5][4]=dp[4][3]+a[4],dp[4][5]+a[4]
      dp[5][2]=dp[4][3]+a[2],dp[4][1]+a[2]
      

      但是n是1e5的數(shù)據(jù)大小,不能開(kāi)這么大,可以開(kāi)到dp maxn 10,10代表的是左移的次數(shù),一次左移,兩個(gè)位置,因?yàn)橹荒苁亲笠坪陀乙疲圆黹_(kāi)的是兩個(gè)位數(shù)。5次兩個(gè)位數(shù),第i次操作就是i,i - 2,

      i - 4 , i - 6,i - 8

      #include <iostream>
      using namespace std;
      const int maxn = 1e5+5;
      int a[maxn];
      int dp[maxn][10];//第二個(gè)是當(dāng)前向左移動(dòng)的次數(shù) 
      int main(){
      	int t,n,k,z;
      	cin>>t;
      	while(t--){
      		cin>>n>>k>>z;
      		for(int i=1;i<=n;i++) cin>>a[i];
      		for(int i=1;i<=k+1;i++){ 
      			for(int j=0;j<=z;j++){
      				if(j==0) dp[i][0]=dp[i-1][0]+a[i];
      				else{//一個(gè)j代表兩個(gè)位置。 
      					dp[i][j]=max(dp[i-1][j],dp[i-1][j-1]);
      					dp[i][j]+=a[i-j*2];
      				}
      			}
      		} 
      		int ans=0;
      		for(int i=0;i<=z;i++){
      			ans=max(ans,dp[k+1][i]);
      		}
      		cout<<ans<<endl;
      	}
      	return 0;
      }
      
      posted @ 2020-11-23 11:01  ACHanHan  閱讀(149)  評(píng)論(0)    收藏  舉報(bào)
      主站蜘蛛池模板: 大肉大捧一进一出好爽视频动漫| 芦溪县| 好吊视频一区二区三区在线| 欧洲熟妇色xxxx欧美老妇免费| 中文字幕亚洲无线码在线| 91中文字幕在线一区| 人妻系列无码专区免费| 国产精品亚洲一区二区z| 天天综合天天添夜夜添狠狠添| 青草99在线免费观看| 国产综合视频一区二区三区| 日韩精品一区二区三区不卡| 宝贝腿开大点我添添公口述视频 | 北条麻妃一区二区三区av高清| 综合激情网一区二区三区| 蛟河市| 青青青爽在线视频观看| 日本三级理论久久人妻电影| 精品国产午夜肉伦伦影院 | 欧美丰满熟妇xxxx性| 少妇办公室好紧好爽再浪一点| 熟女人妻aⅴ一区二区三区电影| 亚洲真人无码永久在线| 亚洲中文无码手机永久| 顶级欧美熟妇xx| 亚洲午夜亚洲精品国产成人 | 免费看一区无码无a片www| 国产女人看国产在线女人| 国产视频 视频一区二区| 黄浦区| 97成人碰碰久久人人超级碰oo| 高潮喷水抽搐无码免费| 精品久久久久无码| 久久人人妻人人爽人人爽| 国产在线拍揄自揄拍无码视频| 亚洲精品一区二区三天美| 国产AV福利第一精品| 人妻少妇精品久久| 亚洲国产综合一区二区精品 | 国产成人高清精品免费软件| 国产成人av免费网址|