尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

贪心 [CSP-S 2025] 社团招新

贪心 [CSP-S 2025] 社团招新
📅 发布时间:2026/6/19 9:44:39

[CSP-S 2025] 社团招新

CSP/NOIP 正在 ACM 化. 前几年 T1 送分往往都是写个模拟即可, 但现在变成考思维题了.

显然我们不妨先不管 \(\dfrac{n}{2}\) 的限制, 一股脑直接去把人扔到对应的社团里, 在从人数最多的社团里把多余的人给换到其它社团.
因为我们的限制是 \(\dfrac{n}{2}\), 所以当一个社团人达到 \(\dfarc{n}{2}\) 时, 另外两个社团人数分别均不超过 \(\dfrac{n}{2}\), 显然可行. 下一个问题就是将哪些人给换走.
显然换走人会产生使满意度下降, 我们的目的是要让满意度下降最少, 即最大值减去次大值要尽可能的小. 优先把这种人换到其它社团.

代码:

#include<iostream>
#include<algorithm>
#include<vector>
#define P(A) A=-~A
#define NUMBER1 100000
typedef long long LL;
struct Satify{int a[3],rank_place[3],max,mid,min;inline void inint(){int res=0;res=max=min=a[0],rank_place[0]=rank_place[2]=rank_place[1]=0;for(int j=1;j<3;P(j)){if(a[j]>max)max=a[j],rank_place[0]=j;else if(a[j]<min)min=a[j],rank_place[2]=j;res+=a[j];}rank_place[1]=3-rank_place[0]-rank_place[2],mid=res-max-min;}bool operator<(const Satify &A)const{return max-mid<A.max-A.mid;}
}student[NUMBER1+5];
int cnt[3],ans;
inline void solve(){ans=cnt[0]=cnt[1]=cnt[2]=0;int n,half_n,need_remove(0);std::cin>>n;half_n=n>>1;for(int i=1;i<=n;P(i)){for(int j=0;j<3;P(j))std::cin>>student[i].a[j];student[i].inint();}for(int i=1;i<=n;P(i))P(cnt[student[i].rank_place[0]]),ans+=student[i].a[student[i].rank_place[0]];for(int j=0;j<3;P(j))if(cnt[j]>half_n){need_remove=j;break;}std::sort(student+1,student+1+n);for(int i=1;i<=n&&cnt[need_remove]>half_n;P(i)){if(student[i].rank_place[0]^need_remove)continue;--cnt[need_remove],ans=ans-student[i].a[need_remove]+student[i].a[student[i].rank_place[1]],P(cnt[student[i].rank_place[1]]);}std::cout<<ans<<'\n';
}
signed main(){std::cin.tie(nullptr)->std::ios::sync_with_stdio(false);std::cout.tie(nullptr);int T;std::cin>>T;while(T--)solve();return 0;
}

相关新闻

  • 12月7日总结 - 作业----
  • pdf图片处理
  • 2025年大众帕萨特更换轮胎推荐:玲珑、米其林、马牌哪个是全面优选?

最新新闻

  • 嵌入式MCU电气特性与FLASH操作深度解析:从数据手册到稳定设计
  • 2026 郑州八大装修公司综合实力排行榜 - GrowthUME
  • 爱回收到店估价和到手价差多少?iPhone 15 Pro实测报告 - 新闻快传
  • 2026沈阳非急救转运救护车TOP5盘点|辽中同城、浑河跨桥、棋盘山山地、院区转诊首选康跃转运 - 吉修匠
  • 2026长沙防水补漏权威指南:卫生间/屋面/外墙/地下室正规施工+透明报价+避坑全攻略 - 苏易修缮
  • 爱回收靠谱吗?一个测评博主的深度复盘 - 新闻快传

日新闻

  • 5分钟掌握Python进化算法:Geatpy高性能优化工具完全指南
  • Microchip 24AA044 EEPROM选型与应用全指南:从参数解析到实战编程
  • 华为的鸿蒙到底有多牛?为什么称作遥遥领先?

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号