题目链接:CF1042A Benches - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
题目大意:
原本有n张椅子,上面做的都有人;将再来m个人,输出人数最多的椅子和人数最少的椅子
思路:
可以先排序找到原本人数最多和最少的椅子,最多就是这m个人全在一张椅子上,最少就是m个人平均分布在n张椅子上
坑点:
注意人没有半个,如遇小数应加1
代码:
#include<stdio.h>
#include<iostream>
#include<algorithm>
using namespace std;
const int maxn=110;
int a[maxn];
int n,m;
int main()
{
cin>>n>>m;
for(int i=1;i<=n;++i)
{
cin>>a[i];
}
sort(a+1,a+n+1);//找出人数最多和最少的椅子
int x=m;
for(int i=1;i<=n;++i)
{
x-=a[n]-a[i];//首先坐人最少的椅子,做下的人数就是要和做下的人数最多的椅子一样
}
if(x<=0)//