思路:模拟,记录每个猫吃当前鱼的起始时间
遍历时间 ,模拟每个猫吃鱼的状态
注意:最后一次 时间拿鱼准备吃还是整条鱼
#include<stdio.h>
#include<algorithm>
#include<string.h>
using namespace std;
const int MAXN=1e3+7;
int n,m,x;
int a[MAXN], p[MAXN]; //p 上一次拿到的time
int main(){
while(~scanf("%d%d%d",&m,&n,&x)){
int left=m;int now=0;
memset(p,0,sizeof(p));
for(int i=1;i<=n;++i)scanf("%d",a+i);
sort(a+1,a+n+1);
for(int i=1;i<=n;++i)if(left){p[i]=0;--left;++now;}
for(int i=1;i<=x;++i){
for(int j=1;j<=n;++j){
if(i-p[j]==a[j]) {
if(left&&i!=x){--left;p[j]=i;}
else --now;
}
}
}
printf("%d %d\n",left,now);
}
return 0;
}