牛客网PAT练兵场-德才论
题解:用sort排序即可
题目地址:https://www.nowcoder.com/questionTerminal/97b6a49a85944650b2e3d0660b91c324
/**
* Copyright(c)
* All rights reserved.
* Author : Ycute
* Date : 2019-10-30-19.49.12
* Description : struct排序
*/
#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
using namespace std; struct stu{
int id;
int c1;
int c2;
}; bool cmp(struct stu a,struct stu b){
if((a.c1+a.c2)==(b.c1+b.c2)){
if(a.c1==b.c1){
return a.id<b.id?true:false;
}else{
return a.c1>b.c1?true:false;
}
}else{
return (a.c1+a.c2)>(b.c1+b.c2)?true:false;
}
} struct stu p1[];
struct stu p2[];
struct stu p3[];
struct stu p4[];
int main(){
int num,C1,C2;
scanf("%d %d %d",&num,&C1,&C2);
int tot=;
int l1=,l2=,l3=,l4=;
for(int i=;i<num;++i){//输入并进行分组
int a,b,c;
scanf("%d %d %d",&a,&b,&c);
if(b<C1||c<C1)continue;
if(b>=C2&&c>=C2){
p1[l1].id=a;
p1[l1].c1=b;
p1[l1++].c2=c;
} else if(b>=C2){
p2[l2].id=a;
p2[l2].c1=b;
p2[l2++].c2=c;
}else if(b>=c){
p3[l3].id=a;
p3[l3].c1=b;
p3[l3++].c2=c;
}else{
p4[l4].id=a;
p4[l4].c1=b;
p4[l4++].c2=c;
}
++tot;
}
//排序
sort(p1,p1+l1,cmp);
sort(p2,p2+l2,cmp);
sort(p3,p3+l3,cmp);
sort(p4,p4+l4,cmp);
//cout<<l1<<" "<<l2<<" "<<l3<<" "<<l4<<endl;
printf("%d\n",tot);
for(int i=;i<l1;++i){
printf("%d %d %d\n",p1[i].id,p1[i].c1,p1[i].c2);
}
for(int i=;i<l2;++i){
printf("%d %d %d\n",p2[i].id,p2[i].c1,p2[i].c2);
}
for(int i=;i<l3;++i){
printf("%d %d %d\n",p3[i].id,p3[i].c1,p3[i].c2);
}
for(int i=;i<l4;++i){
printf("%d %d %d\n",p4[i].id,p4[i].c1,p4[i].c2);
}
return ;
}
牛客网PAT练兵场-德才论的更多相关文章
- 牛客网PAT练兵场-科学计数法
题目地址:https://www.nowcoder.com/pat/6/problem/4050 题解:模拟题 /** * Copyright(c) * All rights reserved. * ...
- 牛客网PAT练兵场-旧键盘打字
题目地址:https://www.nowcoder.com/pat/6/problem/4059 题解:用数组下标标记,直接模拟 /** * *作者:Ycute *时间:2019-12-01-21.3 ...
- 牛客网PAT练兵场-人口普查
题目地址:https://www.nowcoder.com/pat/6/problem/4054 题解:结构体排序即可 /** * Copyright(c) * All rights reserved ...
- 牛客网PAT练兵场-完美数列
题目地址:https://www.nowcoder.com/pat/6/problem/4056 题解:先将a数组进行排序,第一次按题意M<=n*p;n=a[0]时,M最大为J(如下图),然后n ...
- 牛客网PAT练兵场-打印沙漏
题目地址:https://www.nowcoder.com/pat/6/problem/4053 题意:模拟题 /** * Copyright(c) * All rights reserved. * ...
- 牛客网PAT练兵场-在霍格沃茨找零钱
题目地址:https://www.nowcoder.com/pat/6/problem/4063 题意:按照题目的进制计算即可 /** * *作者:Ycute *时间:2019-11-14-21.45 ...
- 牛客网PAT练兵场-福尔摩斯的约会
题目地址:https://www.nowcoder.com/pat/6/problem/4040 题意:模拟题,循环找相同的字母,但是注意题目的坑 /** * *作者:Ycute *时间:2019-1 ...
- 牛客网PAT练兵场-A除B
题目地址:https://www.nowcoder.com/pat/6/problem/4043 题解:遍历大数,边除边输出,最后得到余数输出即可 /** * *作者:Ycute *时间:2019-1 ...
- 牛客网PAT练兵场-锤子剪刀布
题目地址:https://www.nowcoder.com/questionTerminal/79db907555c24b15a9c73f7f7d0e2471 题解:无 /** * *作者:Ycute ...
随机推荐
- 第十一章 容器类&新日期时间
11.1.Optional 容器类 11.1.1.概述 Optional 类是一个容器类,代表一个值存在或不存在, 原来用 null 表示一个值不存在,现在 Optional类 可以更好的表达这个概念 ...
- Python语言及其应用 中文pdf完整版|网盘下载内附提取码
点击此处下载提取码:7cvm <Python语言及其应用>介绍Python 语言的基础知识及其在各个领域的具体应用,基于新版本3.x.书中首先介绍了Python 语言的一些基本知识,然后介 ...
- luogu P3403 跳楼机 同余最短路
LINK:跳楼机 很早之前就想学的一个东西.发现这个东西果然神奇. 我们要找到 所有的 w满足 \(w=1+ax+by+cz\).且 \(1\leq w\leq h\) 暴力枚举是不行的. 做法是这样 ...
- Docker学习日记-安装Docker
Docker是什么: 简单理解就是基于go语言开发的开源的应用容器引擎. 对进程进行封装隔离,属于操作系统层面的虚拟化技术. Docker的优势: 1.更高效的利用系统资源 2.更快速的启动时间 3. ...
- 6月28日考试 题解(GCD约分+动态规划+树状数组二维偏序)
前言:考的一般般吧……T3暴力没打上来挺可惜的,到手的75分没了. ---------------------------------- T1 [JZOJ4745]看电影 Description 听说 ...
- swift demo1 tableview
代码如下: // // ViewController.swift // demo1_tableview // // Created by Alice_ss on 2018/2/24. // Copyr ...
- ASP.NET Core Logging Solution
Serilog.Extensions.Logging.File This package makes it a one-liner - loggerFactory.AddFile() - to con ...
- stat 命令家族(1)- 详解 vmstat
性能测试必备的 Linux 命令系列,可以看下面链接的文章哦 vmstat 介绍 Virtual Meomory Statistics,报告虚拟内存统计信息 会统计进程信息.内存.交换区.IO.磁盘. ...
- Android html5和Android之间的交互
今天补充了会昨天的问题,然后搞半天又出现莫名其妙的问题. 今天讲的是交互,先说html5在Android的调用. 上面的hello world上面的部分都是安卓里的布局 然后按这些布局自动生成代码. ...
- Android 布局控件——滚动条视图,日期,时间
今天学长讲了一些控件,比较强的那种控件. 刚开始讲了图片,但是图片我前面写过了就跳过. 滚动条牛牛们应该很熟悉,也常用哈. 这是垂直的滚动条视图哈 一起来用吧! <ScrollView andr ...