标签:print fine color code set isp include typedef ++
1 #include <algorithm> 2 #include <cstring> 3 #include <cstdio> 4 5 #define fore(i, a, b) for (int i = a; i <= b; i++) 6 #define fir first 7 #define sec second 8 9 std::pair<int, int> p[505]; 10 long long dp[5005]; 11 12 int main() { 13 int t; 14 scanf("%d",&t); 15 while (t--) { 16 memset(dp, 0x3f, sizeof(dp)); 17 int n, B; 18 scanf("%d%d",&n,&B); 19 int sum = 0; 20 fore(i, 1, n) { 21 scanf("%d%d",&p[i].fir,&p[i].sec); 22 sum += p[i].sec; 23 } 24 dp[0] = 0; 25 fore(i, 1, n) { 26 for(int j=sum;j>=p[i].second;j--) 27 dp[j] = std::min(dp[j], dp[j - p[i].second] + p[i].first); 28 } 29 int ans = 0; 30 for(int i=sum;i>=0;i--) 31 if (dp[i] <= B) { 32 ans = i; 33 break; 34 } 35 printf("%d\n",ans); 36 } 37 }
1 #include <cstdio> 2 #include <cstring> 3 #include <algorithm> 4 5 #define fore(i,a,b) for(int i=a;i<=b;i++) 6 typedef long long ll; 7 8 int point[100005][15]; 9 10 int main(){ 11 int n; 12 while(scanf("%d",&n),n){ 13 memset(point,0,sizeof(point)); 14 int maxt=0; 15 fore(i,1,n){ 16 int pos,t; 17 scanf("%d%d",&pos,&t); 18 point[t][pos+1]++; 19 maxt=std::max(maxt,t); 20 } 21 for(int i=maxt-1;i>=0;i--){ 22 fore(j,1,11){ 23 point[i][j]+=std::max(point[i+1][j+1],std::max(point[i+1][j],point[i+1][j-1])); 24 } 25 } 26 printf("%d\n",point[0][6]); 27 } 28 return 0; 29 }
标签:print fine color code set isp include typedef ++
原文地址:https://www.cnblogs.com/rign/p/10804266.html