标签:
7 2 2 1 1 2 2 1 1
6
解题:动态规划。。。有点像01背包。。。
1 /* 2 @author: Lev 3 @date: 4 */ 5 #include <iostream> 6 #include <cstdio> 7 #include <cmath> 8 #include <cstring> 9 #include <string> 10 #include <cstdlib> 11 #include <algorithm> 12 #include <map> 13 #include <set> 14 #include <queue> 15 #include <climits> 16 #include <deque> 17 #include <sstream> 18 #include <fstream> 19 #include <bitset> 20 #include <iomanip> 21 #define LL long long 22 #define INF 0x3f3f3f3f 23 24 using namespace std; 25 const int maxn = 1010; 26 int d[maxn],dp[2][40]; 27 int main() { 28 int T,W; 29 while(~scanf("%d %d",&T,&W)) { 30 for(int i = 1; i <= T; ++i) 31 scanf("%d",d+i); 32 memset(dp,0,sizeof(dp)); 33 dp[0][W] = 1; 34 for(int i = 1; i <= T; ++i) 35 for(int j = W; j >= 0; --j) { 36 if(d[i] == 1) { 37 dp[0][j] = max(dp[0][j]+1,dp[1][j-1]+1); 38 dp[1][j] = max(dp[0][j-1],dp[1][j]); 39 }else{ 40 dp[1][j] = max(dp[1][j]+1,dp[0][j-1]+1); 41 dp[0][j] = max(dp[0][j],dp[1][j-1]); 42 } 43 } 44 printf("%d\n",max(dp[0][W],dp[1][W])); 45 } 46 return 0; 47 }
噢、。。貌似会有出界的风险。。好吧。。再偏移下。。
1 /* 2 @author: Lev 3 @date: 4 */ 5 #include <iostream> 6 #include <cstdio> 7 #include <cmath> 8 #include <cstring> 9 #include <string> 10 #include <cstdlib> 11 #include <algorithm> 12 #include <map> 13 #include <set> 14 #include <queue> 15 #include <climits> 16 #include <deque> 17 #include <sstream> 18 #include <fstream> 19 #include <bitset> 20 #include <iomanip> 21 #define LL long long 22 #define INF 0x3f3f3f3f 23 24 using namespace std; 25 const int maxn = 1010; 26 int d[maxn],dp[2][40]; 27 int main() { 28 int T,W; 29 while(~scanf("%d %d",&T,&W)) { 30 for(int i = 1; i <= T; ++i) 31 scanf("%d",d+i); 32 memset(dp,0,sizeof(dp)); 33 for(int i = 1; i <= T; ++i) 34 for(int j = W+1; j > 0; --j) { 35 if(d[i] == 1) { 36 dp[0][j] = max(dp[0][j]+1,dp[1][j-1]+1); 37 dp[1][j] = max(dp[0][j-1],dp[1][j]); 38 }else{ 39 dp[1][j] = max(dp[1][j]+1,dp[0][j-1]+1); 40 dp[0][j] = max(dp[0][j],dp[1][j-1]); 41 } 42 } 43 printf("%d\n",max(dp[0][W+1],dp[1][W+1])); 44 } 45 return 0; 46 }
标签:
原文地址:http://www.cnblogs.com/crackpotisback/p/4321651.html