当前位置: 首页 > news >正文

P1193 洛谷团队训练 VS 传统团队训练【洛谷算法习题】

P1193 洛谷团队训练 VS 传统团队训练

网页链接

P1193 洛谷团队训练 VS 传统团队训练

题目背景

“在中学的信息学教育领域,洛谷无疑是一个相当受欢迎的辅助网站。同时有百余所学校正在通过洛谷进行信息学竞赛(以后简称 OI)的教育。洛谷之所以如此受欢迎,是因为洛谷创新的将 OI 教育的几乎每一个环节都搬到了线上,无论是学校的竞赛教练还是学生,均可以仅仅使用这一个网站来进行练习,提升自己的能力。”

——摘自《厦门中小学教育科学研究》,2015 年 2 月号。

题目描述

XX 中学的两位信息组的教练正在为学校信息组是否应当将洛谷作为主要的训练工具而争论不休,最后决定采取一个量化的办法来决定是否迁移。

该中学的原来训练方法是,在机房的教师机里面用 cena 装载好测试数据,装载数据所需要T a T_aTa时间,每一道题目都要装载。学生写好代码后,可以跑到教师机上收取程序并进行评测。但由于需要往返的路程,因此每跑一次就要浪费T b T_bTb时间。所以也允许学生在自己的机子上装载好测试数据,可以根据自己的需要选择装载的题目,这需要花费和在教师机装载数据一样的时间T a T_aTa,但是每次评测花费的时间就减少为T c T_cTc。此外,该中学可能会用 Excel 记录各位同学的训练情况,如果某位同学的某道题的得分高于表格里的记录,那就会花费T d T_dTd时间将这个成绩更新,否则就不必费那个事了,如果之前没有提交过这道题视为表格记录的程序为0 00分。

而在洛谷中,只需要将题目和测试数据上传到洛谷,花费T a T_aTa时间。每次评测学生只需花费T c T_cTc时间即可。记录成绩?那是洛谷的事儿,一提交完就帮你整理好了表格根本不费时间。

看起来可以省下不少时间吧。然而,支持传统训练方法的教练认为,洛谷并非100 % 100 \%100%的稳定,在有的情况会无法提供服务,因此首先要将洛谷的耗时除以它的可用度(一个小于100 % 100\%100%的数字A % A\%A%)并去掉小数点。又因为传统观念不易纠正,总是有不信任将题目数据交给洛谷这样的想法(kkksc03:怪我咯?),因此使用洛谷的耗时还要再加上一个罚时H HH以做公平比较。

现在给出该中学的训练情况,希望你帮两位教练分析一下到底该如何选择。

输入格式

第一行,两个整数N , M N, MN,M,代表题目数量与学生数量。

第二行,N NN个整数P 1 , P 2 , … , P N P_1, P_2, \ldots, P_NP1,P2,,PN,为涉及的题目编号。

第三行,M MM个整数S 1 , S 2 , … , S M S_1, S_2, \ldots, S_MS1,S2,,SM,为学生的学号。

第四行,七个整数T a , T b , T c , T d , A , H , E T_a, T_b, T_c, T_d, A, H, ETa,Tb,Tc,Td,A,H,E,前六个数字的意义见题目描述,E EE如果是1 11那么在 Excel 中记录成绩,如果是0 00则不记录。

第五行,一个整数R RR,代表评测数量。

接下来R RR行,评测记录,每行是P r i , S r i , S c i \mathit{Pr}_i, \mathit{Sr}_i, \mathit{Sc}_iPri,Sri,Sci,分别为该次评测的题目号、学号以及成绩。

输出格式

三行。

第一行为传统方法的的耗时。

第二行为使用洛谷包括罚时在内的耗时。

第三行是结论,如果使用洛谷的时间小于传统方法的时间,那么输出Use Luogu!。否则输出Forget it...

输入输出样例 #1

输入 #1

4 4 501 502 503 504 2 3 5 7 50 30 10 5 93 50 1 10 501 2 10 501 2 80 501 2 70 502 3 0 502 3 0 504 5 100 503 7 0 503 7 0 503 7 0 503 7 10

输出 #1

480 372 Use Luogu!

输入输出样例 #2

输入 #2

2 3 101 102 1 2 3 70 60 50 1 80 100 0 6 101 1 100 101 2 100 101 3 100 102 1 100 102 2 100 102 3 100

输出 #2

500 650 Forget it...

说明/提示

【样例解释 #1】

使用传统方法的话,装载4 44道题目需要4 × 50 = 200 4 \times 50=2004×50=2002 22号同学和7 77号同学使用教师机所需要的时间分别为30 × 3 = 90 30 \times 3=9030×3=9030 × 4 = 120 30 \times 4 = 12030×4=120,但是明显自己装载 cena 只需要50 + 10 × 3 = 80 50+10 \times 3=8050+10×3=8050 + 10 × 4 = 90 50+10 \times 4=9050+10×4=90更优。而3 , 5 3,53,5同学则使用教师机就好,耗时60 , 30 60,3060,302 22号同学的前两次评测单调递增,所以额外花费2 × 5 = 10 2 \times 5=102×5=10时间记录,3 33号同学太弱了都是0 00分所以没必要记录了,5 557 77各耗费5 55时间。所以这种情况总时间耗时为200 + 80 + 90 + 60 + 30 + 10 + 5 + 5 = 480 200+80+90+60+30+10+5+5=480200+80+90+60+30+10+5+5=480

使用洛谷的话,装载题目耗费200 20020010 1010次评测共耗费10 × 10 = 100 10 \times10=10010×10=100,考虑稳定性时间为( 200 + 100 ) / 93 % = 322 (200+100) / 93\% = 322(200+100)/93%=322,所以最后总耗时为322 + 50 = 372 322+50=372322+50=372,所以决定使用洛谷。

【数据范围】

其中50 % 50\%50%数据中,不需要进行成绩的 Excel 记录。

其中50 % 50\%50%数据中,题目编号和学号均大于等于0 00,小于等于1000 10001000

(这两种情况,可能会重叠)

对于100 % 100\%100%的数据,保证1 ≤ n , m ≤ 1000 1 \le n,m \le 10001n,m10001 ≤ T a , T b , T c , T d , H ≤ 10000 1 \le T_a, T_b, T_c,T_d,H \le 100001Ta,Tb,Tc,Td,H100001 ≤ R < 100000 1 \le R < 1000001R<1000000 ≤ S c i ≤ 100 0 \le \mathit{Sc}_i \le 1000Sci1001 ≤ A ≤ 100 1 \le A \le 1001A100,学号和题目号在10 8 {10}^8108之内。

实际上,根据超级监控颁发的证书,洛谷 2015 年第一季度可靠性(SLA)为99.36 % 99.36 \%99.36%。同时观念也是可以改变的。

洛谷的优点很多都是不能量化的,其精华在于社区。和全国的 OIer 一起学习交流,不很好吗?

最后插一句,去年的【榨取 kkksc03】的布告依然有效,详情。

解题思路

本题核心是模拟计算+离散化映射+最优策略选择,精准计算两种训练模式的总耗时。由于题目号、学号数值极大,无法直接用数组存储,因此采用哈希表将其映射为连续下标,简化数据统计。洛谷训练耗时按规则计算:总基础耗时为题目装载时间加评测耗时,除以可用度后叠加罚时。传统训练耗时分为三部分:全局题目装载耗时、每个学生每题选择教师机/本地装载的最优耗时、Excel成绩更新耗时。遍历所有评测记录,统计提交次数与最高成绩,累加各项耗时,最后对比两种耗时输出结论,算法简洁高效,完全适配题目数据约束。

总结

核心逻辑:分别模拟传统训练与洛谷训练的耗时规则,传统训练选择最优评测方式,洛谷训练计算稳定性与罚时。
关键操作:哈希离散化处理超大编号、统计提交次数/最高成绩、分模块累加耗时、结果对比输出。
效率保障:离散化简化数据统计,线性遍历评测记录,高效完成全部计算逻辑。

代码内容

#include<bits/stdc++.h>usingnamespacestd;typedeflonglongll;typedefunsignedlonglongull;typedefvector<vector<ll>>vvt;typedefpair<ll,ll>pll;constll N=1e3+10;constll p=1e9+7;constll INF=1e18;constll M=1e6+10;intsc[1010][1010],cnt[1010][1010];intmain(){ios::sync_with_stdio(false);cin.tie(0);intn,m;cin>>n>>m;map<int,int>mp1,mp2;for(inti=1,x;i<=n;++i){cin>>x;mp1[x]=i;}for(inti=1,x;i<=m;++i){cin>>x;mp2[x]=i;}intta,tb,tc,td,a,h,e;cin>>ta>>tb>>tc>>td>>a>>h>>e;intr;cin>>r;intlu=(n*ta+r*tc)/(a/100.0)+h;intct=n*ta;for(inti=1;i<=r;++i){intx,y,z;cin>>x>>y>>z;intu=mp2[y],v=mp1[x];cnt[u][v]++;if(e&&sc[u][v]<z){sc[u][v]=z;ct+=td;}}for(intp=1;p<=m;++p)for(inti=1;i<=n;++i)ct+=min(cnt[p][i]*tb,ta+cnt[p][i]*tc);cout<<ct<<'\n'<<lu<<'\n';if(lu<ct)cout<<"Use Luogu!\n";elsecout<<"Forget it...\n";return0;}
http://www.jsqmd.com/news/725725/

相关文章:

  • 2026年5月帝舵中国区售后服务网络优化升级(最新电话及地址)【客观推荐落地实操真实体验】 - 亨得利官方服务中心
  • 如何轻松下载全网小说?novel-downloader 多平台小说下载终极指南
  • 教育先行破局AI落地难题 天扬智能魏徐生发布企业AI化五步方法论 - 速递信息
  • 四川佳兴鼎盛商贸:成都建筑垃圾清运处置排名 - LYL仔仔
  • 今邦成型试验机代理商查询|正规代理购买渠道推荐 - 品牌推荐大师1
  • 别再乱写NFC标签了!手把手教你读懂NTAG213/215/216的UID、容量页和静态锁
  • 国内商协会数字化平台专业服务商实力排行一览 - 奔跑123
  • 福州哪个生活美容院比较好?本地人实测推荐这3家靠谱机构 - 品牌2026
  • 2026年九州再生医疗官方服务商选型指南:正规跨境医疗服务机构实力解析 - 商业小白条
  • 如何用Sunshine搭建你的个人游戏串流服务器?终极免费方案指南
  • Android Camera2 API搞不定?试试用UVC协议直连USB摄像头(附完整代码与避坑清单)
  • 福州颈部护理好的美容机构推荐,专业护颈解锁天鹅颈 - 品牌2026
  • 天津昊力复合钢管制造:晋城水涂塑复合钢管出售找哪家 - LYL仔仔
  • Mitsuba-Blender插件:三步实现Blender物理级渲染
  • 避坑指南:用VTK在Qt界面显示STL时,如何解决界面卡顿、警告和乱码问题?
  • 2026不锈钢水箱及消防设备厂家深度横评与选购指南 - 深度智识库
  • Crossref REST API 终极指南:从零开始构建学术元数据查询系统
  • 南昌医疗纠纷代理律师委托推荐:如何找到具备医法双背景的专业人士? - 品牌2025
  • 双系统党福音:Win11+Ubuntu22.04双硬盘分区方案,保姆级避坑指南(含RTX4090驱动)
  • 2026南昌靠谱民商事代理律师推荐:专业处理合同纠纷股权及医疗损害案件 - 品牌2025
  • LangChain实现简易版-----PDF 文档问答机器人
  • BetterJoy终极指南:5分钟让你的Switch手柄变身PC游戏神器
  • 通用汽车将为400万辆车升级谷歌Gemini,可规划省油路线!
  • 2026年新疆隐形车衣市场深度横评:乌鲁木齐汽车漆面保护膜选购指南 - 企业名录优选推荐
  • 如何快速构建现代化中后台系统:RuoYi-Vue3-FastAPI终极指南
  • 闲置天猫超市卡别浪费!可可收实测指南,3步轻松回收 - 可可收
  • 2026年软床厂家推荐:深圳市慕格寝具有限公司简约软床/网红软床/轻奢软床/双人软床专业供应 - 品牌推荐官
  • Turnitin检测实战:亲测将英文论文AI率从80%降到10%的3款工具
  • 涡街流量计品牌怎么选?2026 采购必看榜单 - 陈工日常
  • 2026年武汉短视频代运营与AI搜索推广五大服务商深度横评指南 - 年度推荐企业名录