·今天蒟蒻再次脑抽。。。这题竟然调了一个多小时!!!!???(开玩笑逗我)。。。不是这错就是那错。。。粗心到爆表。。。绝望的蒟蒻。。。
·蒟蒻的我说实话——我真是不想放这道垃圾题——但为了记录我的脑抽——还是放了。。。
·洛谷入口:P1478
·题目:
又是一年秋季时,陶陶家的苹果树结了n个果子。陶陶又跑去摘苹果,这次她有一个a公分的椅子。当他手够不着时,他会站到椅子上再试试。
这次与NOIp2005普及组第一题不同的是:陶陶之前搬凳子,力气只剩下s了。当然,每次摘苹果时都要用一定的力气。陶陶想知道在s<0之前最多能摘到多少个苹果。
现在已知n个苹果到达地上的高度xi,椅子的高度a,陶陶手伸直的最大长度b,陶陶所剩的力气s,陶陶摘一个苹果需要的力气yi,求陶陶最多能摘到多少个苹果。
·代码内容:
#include<iostream> #include<algorithm> using namespace std; const int maxn=5005; int n,s,a,b; struct node { int c; int z; }x[maxn]; int main() { cin>>n>>s; cin>>a>>b; for(int i=1;i<=n;i++) { cin>>x[i].c; cin>>x[i].z; } int h;h=a+b; int ans;ans=0; //核心!!! for(int i=n-1;i>=1;i--) for(int j=1;j<=i;j++) { if(x[j].z>x[j+1].z) { swap(x[j].c,x[j+1].c); swap(x[j].z,x[j+1].z); } } //结构体排序!!! for(int i=1;i<=n;i++) { if(x[i].c<=h) { s-=x[i].z; if(s<0)break; else ans++; } } cout<<ans<<endl; return 0; }