题目1:分班
5478. 分班 - AcWing题库
解题

#include<iostream>
#include<algorithm>
using namespace std;
const int N=100010;
int n,k,l;
int a[N];
int main()
{
scanf("%d%d%d",&n,&k,&l);
int m=n*k;
for(int i=1;i<=m;i++) scanf("%d",&a[i]);
sort(a+1,a+1+m);
long long res=0;
if(a[n]>a[1]+l)
{
printf("0");
return 0;
}
else
{
int i=n;
while(a[i+1]<=a[1]+l&&i<=m) i++;
int right=m-i;
for(int j=1;j<=n;j++)
{
int can=min(right,k-1);
right-=can;
int left=k-can;
i-=left;
res+=a[i+1];
}
printf("%lld",res);
}
}






![[项目设计] 从零实现的高并发内存池(一)](https://img-blog.csdnimg.cn/c446ebae288e480d84f5d14d494c88bb.gif)
![P9905 [COCI 2023/2024 #1] AN2DL 【矩阵区间最大值】](https://img-blog.csdnimg.cn/direct/4f73e4d86e754d29833b227c5da0e9fa.png#pic_center)











