1 条题解
-
-8
#include<bits/stdc++.h> #define int long long #define N 100000+5 using namespace std; struct node{ int atk,hp; int htk; }; bool cmp(node a,node b){ return a.htk>b.htk; } node a[N]; int s[N],c[N]; main(){ int n,atk,hp; cin>>n; cin>>atk>>hp; for(int i=1;i<=n;i++){ cin>>a[i].atk>>a[i].hp; } sort(a+1,a+n+1,cmp); for(int i=1;i<=n;i++){ if(a[i].hp%atk==0)a[i].htk=a[i].hp/atk*a[i].atk; else a[i].htk=(a[i].hp/atk+1)*a[i].atk; s[i]=s[i-1]+a[i].htk; c[i]=c[i-1]+s[i]; //cout<<c[i]<<endl; if(c[i]>=hp){ cout<<i<<endl; return 0; } } cout<<"Fail"; return 0; }
- 1
信息
- ID
- 449
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 3
- 标签
- 递交数
- 203
- 已通过
- 29
- 上传者