专栏文章
题解:P14575 坤班
P14575题解参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @min245oi
- 此快照首次捕获于
- 2025/12/01 19:19 3 个月前
- 此快照最后确认于
- 2025/12/01 19:19 3 个月前
考虑二分班级数量,设二分到的答案为 ,则需要满足两个条件:
-
当班主任的人数 。
-
设 表示学科 能教到 个班级,则 。
设 表示教学科 的老师有多少愿意当班主任,则对于每个学科,已知二分班级 ,可以得到这个学科最多能有 个老师当班主任。
代码
CPPint n,m,a,b,c,cnt[N],sum,num[N];
bool check(int x){
rep(i,1,m) if(cnt[i]<x) return 0;
int res=0;
rep(i,1,m) res+=min(num[i],cnt[i]-x);
return res>=x;
}
signed main(){
read(n,m);
rep(i,1,n){
read(a,b,c);
if(c) num[a]++;
sum+=b;
cnt[a]+=b;
}
int l=0,r=sum;
while(l<=r){
int mid=(l+r)>>1;
if(check(mid)) l=mid+1;
else r=mid-1;
}
cout<<l-1;
return 0;
}
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...