请选择 进入手机版 | 继续访问电脑版
搜索
房产
装修
汽车
婚嫁
健康
理财
旅游
美食
跳蚤
二手房
租房
招聘
二手车
教育
茶座
我要买房
买东西
装修家居
交友
职场
生活
网购
亲子
情感
龙城车友
找美食
谈婚论嫁
美女
兴趣
八卦
宠物
手机

2019年华南理工大学软件学院ACM集训队选拔赛 Round1

[复制链接]
查看: 39|回复: 0

8158

主题

8158

帖子

2万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
24484
发表于 2019-12-3 07:00 | 显示全部楼层 |阅读模式
TIps: 1.全数代码中博主利用了scanf和printf作为输入输出
    2.代码中利用了define LL long long 所以在声明变量的时候 LL实在就等价于long long
盼望这两点不会成为读者看代码时候的障碍qwq 此外题目链接我会放在末端 假如需要请往下拖一拖
T1
我的关键词 2019韶华南理工大学软件学院ACM集训队提拔赛 Round1  热门消息 1823025-20191202221055521-163637470

我的关键词 2019韶华南理工大学软件学院ACM集训队提拔赛 Round1  热门消息 1823025-20191202215140758-1267534499

这道题实在就是纯真对数据举行排序,可是由于关键字不止一种(解题数m和罚时t) 而且输出的是队伍的名字(也就是序号)
而一般排序完以后我们就会发现 我们并不晓得当前各个位置的数对应的队伍名是什么了(也就是其原本的位置信息已经在排序进程中丧失了)
这个时候我们发现 一个队伍有三种信息 解题数 罚时 以及队伍名 我们需要把这三种信息作为一个团体再将这个团体依照内部的信息(解题数以及罚时)举行排序
这个时候我们就需要用到结构体了 也就是这个工具
我的关键词 2019韶华南理工大学软件学院ACM集训队提拔赛 Round1  热门消息 1823025-20191202220109927-1005199135

然后利用sort函数将结构体举行排序 可是这里我们需要自界说一个比力函数 依照自己的想法将结构体举行排序 这也就是代码中的cmp函数的感化
我的关键词 2019韶华南理工大学软件学院ACM集训队提拔赛 Round1  热门消息 1823025-20191202220232541-337014901

这里用到了三目运算符 不了解的同学可以百度一下他的用法 这里的cmp可以大白为先比力a和b的解题数,解题数多的在前,解题数一样再比力罚时,罚时多的在后
这样以后经过sort函数举行排序再顺顺序输出id便可以处理题目了! 复杂度Ο(nlogn)
贴一下代码
我的关键词 2019韶华南理工大学软件学院ACM集训队提拔赛 Round1  热门消息 ContractedBlock
我的关键词 2019韶华南理工大学软件学院ACM集训队提拔赛 Round1  热门消息 ExpandedBlockStart
[code]#include#include#include#include#include#include#define LL long longusing namespace std;const int M=1e5+7;int T,n;struct node{int id,k,w;}e[M];//k表示解题数w表示罚时id表示队伍名 bool cmp(node a,node b){return a.k==b.k?a.wb.k;}//自界说的比力函数 int main(){    scanf("%d",&T);    while(T--){        scanf("%d",&n);        for(int i=1;i

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Copyright © 2006-2014 淄博新闻网-淄博日报 淄博晚报 淄博财经新报 掌中淄博 淄博专业新闻资讯发布网站 版权所有 法律顾问:高律师 客服电话:0791-88289918
技术支持:迪恩网络科技公司  Powered by Discuz! X3.2
快速回复 返回顶部 返回列表