【CF1257D】Yet Another Monster Killing Problem【贪心】
题意:给定一些怪物,每天可以选一个勇士进去打怪,每个勇士每天只能打不超过si个怪物,每个勇士只能打能力值≤pi的怪物,问最少多少天打完所有怪物 题解:贪心,每天尽可能多的去打怪,那么存一个对于长度为i的怪物可以用的最大的能力值是多少,每天枚举长度,尽可能长的去打怪即可 代码: #include<iostream> #include<cstdio> #include<cstdlib> #include<cstring> #include<string> #include<algorithm> #include<cmath> #define ll long long using namespace std; int T,n,m,ans; int a[200001],mx[200001]; struct node { int p,s; }b[200001]; bool cmp(const node &T1,const node &T2){return T1.s>T2.s;} int main() { scanf("%d",&T); while(T--) { for(int i=1;i<=n;i++)mx[i]=0; scanf("%d",&n); for(int i=1;i<=n;i++)scanf("%d",&a[i]); scanf("%d",&m); for(int i=1;i<