1. 程式人生 > >bzoj3174: [Tjoi2013]拯救小矮人

bzoj3174: [Tjoi2013]拯救小矮人

include names \n memset += tdi mat int ios

被歐老師DDDDDDDDDDDDDDDDDDD飛飛飛飛飛飛飛飛飛飛飛了了了了了了了了了了了了

心態爆炸打打水。。。。

貪心啊,玄學啊

就是每次把最挫的挑出來D飛。。。

#include<cstdio>
#include<iostream>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#include<cmath>
using namespace std;

struct node
{
    int x,y;
}a[
2100]; bool cmp(node n1,node n2){return (n1.x+n1.y)<(n2.x+n2.y);} int f[2100]; int main() { int n; scanf("%d",&n); memset(f,-1,sizeof(f));f[0]=0; for(int i=1;i<=n;i++) scanf("%d%d",&a[i].x,&a[i].y),f[0]+=a[i].x; sort(a+1,a+1+n,cmp); int H,tot=0
; scanf("%d",&H); for(int i=1;i<=n;i++) { for(int j=tot;j>=0;j--) { if(f[j]+a[i].y>=H)f[j+1]=max(f[j+1],f[j]-a[i].x); if(f[tot+1]!=-1)tot++; } } printf("%d\n",tot); return 0; }

bzoj3174: [Tjoi2013]拯救小矮人