题解 P1068 【分数线划定】
由于涉及到排序和对应序号
那就定义一个结构体
结合STL模板中的sort日常沉迷sort
提示:
虽然我也是蒟弱
sort是快速排序函数,有两个或三个参数,
两个参数适用于平常的数字类型,即形sort(a+1,a+n+1);其中a是数组名;
而三个参数更多适用于自己定义的结构体,使用时形如sort(a+1,a+n+1,cmp);cmp是自己定义的bool型函数,用于判断;
大体思路如下:
1.定义一个结构体,令成绩具有**两种属性**,一是**学号**,二是**分数**;
2.编辑一个cmp;用于判断,且优先级为成绩优先,其次学号;
3.进入主函数;读入n,m。定义一个cj类型的数组aa;并且读入学号和分数;
4.排序!!!使用sort一步到位(sort大法好)
5.然后计算分数线(注意一定要多读几遍题,不要像我一样理解错题意)
6.遍历一遍所有数据,定义一个计数器,累加及格人数;
7.由于sort已经令数据有序了,就直接输出吧,反正人数已经求出来了2333
#include<bits/stdc++.h>
using namespace std;
struct cj {
int xh;
int sum;
};
cj aa[20000];
bool cmp (const cj &a,const cj &b){
if(a.sum>b.sum) return 1;//注意不要等于
if(a.sum<b.sum) return 0;
if(a.xh>b.xh) return 0;
if(a.xh<b.xh) return 1; }
int main(){
int m;
int n;
cin>>n>>m;
int a,b;
double m1=m;
for(int i=1;i<=n;i++){
cin>>a>>b;
aa[i].sum=b;
aa[i].xh=a;
}
sort(aa+1,aa+n+1,cmp);
int p=floor(m1*1.5);
int mm=aa[p].sum;
cout<<mm<<" "; int cnt=0;
for(int i=1;i<=n;i++){
if(aa[i].sum>=mm) cnt++;
}
cout<<cnt<<endl;
for(int i=1;i<=cnt;i++){
cout<<aa[i].xh<<" "<<aa[i].sum<<endl;
}
return 0;
}
题解 P1068 【分数线划定】的更多相关文章
- 洛谷——P1068 分数线划定
P1068 分数线划定 题目描述 世博会志愿者的选拔工作正在 A 市如火如荼的进行.为了选拔最合适的人才,A 市对 所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试.面试分数线根 据 ...
- 洛谷 P1068 分数线划定
P1068 分数线划定 题目描述 世博会志愿者的选拔工作正在 A 市如火如荼的进行.为了选拔最合适的人才,A 市对 所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试.面试分数线根 据 ...
- luogu P1068 分数线划定 x
P1068 分数线划定 题目描述 世博会志愿者的选拔工作正在 A 市如火如荼的进行.为了选拔最合适的人才,A 市对 所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试.面试分数线根 据 ...
- c++之洛谷P1068分数线划定
这是个排序题,做题过程中对sort的理解加深了不少,记下来避免忘记. 题目来源:https://www.luogu.org/problemnew/show/P1068 题目描述 世博会志愿者的选拔工作 ...
- (sort)P1068 分数线划定 洛谷
题目描述 世博会志愿者的选拔工作正在 A 市如火如荼的进行.为了选拔最合适的人才,AA市对 所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试.面试分数线根 据计划录取人数的150\% ...
- 洛谷P1068 分数线划定:sort结构体排序+贪心
题目描述 世博会志愿者的选拔工作正在 A 市如火如荼的进行.为了选拔最合适的人才,A市对所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试. 面试分数线根据计划录取人数的150%划定, ...
- 洛谷 P1068 分数线划定【结构体排序】
题目描述 世博会志愿者的选拔工作正在 A 市如火如荼的进行.为了选拔最合适的人才,A 市对 所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试.面试分数线根 据计划录取人数的150%划 ...
- 洛谷 P1068 分数线划定【排序+模拟】
世博会志愿者的选拔工作正在 A 市如火如荼的进行.为了选拔最合适的人才,AA市对 所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试.面试分数线根 据计划录取人数的150\%150%划 ...
- 洛谷 P1059明明的随机数 & P1068分数线划定 & P1781宇宙总统
题目:https://www.luogu.org/problemnew/show/P1059 思路:STL中的set使用. //#include<bits/stdc++.h> #inclu ...
- 洛谷P1068 分数线划定
https://www.luogu.org/problem/P1068 #include<bits/stdc++.h> using namespace std; struct Can { ...
随机推荐
- win7 virtio 驱动下载
下载地址: https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/
- 修改 Cloud image 的密码的简单方法
下载工具: yum -y install libguestfs-tools.noarch 打开DEBUG: export LIBGUESTFS_DEBUG=1 LIBGUESTFS_TRACE=1 ...
- java中数组的插入
package com.hxzy.demo; import java.util.Arrays;import java.util.Scanner; public class Demo1 { public ...
- InnoDB: The innodb_system data file 'ibdata1' must be writable错误
重新安装percona5.7过程中,启动mysql服务总是报如下的错误 --10T02::.781070Z [ERROR] InnoDB: The innodb_system data file 'i ...
- Code Chef January Challenge 2019题解
传送门 \(div2\)那几道题不来做了太水了-- \(DPAIRS\) 一个显然合法的方案:\(A\)最小的和\(B\)所有连,\(A\)剩下的和\(B\)最大的连 算了咕上瘾了,咕咕咕 const ...
- combining-filters
The previous two examples showed a single filter in use. In practice, you will probably need to filt ...
- set,env和export命令显示shell变量其区别,与环境变量扫盲(一)
种类: ♦ set : 用来显示本地变量,显示当前shell的变量,包括当前用户的变量 ♦ env : 用来显示环境变量,显示当前用户的变量. ♦ export: 用来显示和设置环 ...
- 实验二 输出“Hello Word!”,测试主方法的输入参数和心得体会
实验二 一.输出“Hello World!” 1.首先打开eclipse,如下图所示. 2.选择一个工作空间,如下图所示. 3.接下来,点击[Java项目]创建一个Java项目,如下图所示. 4.然后 ...
- 线索二叉树的理解和实现(Java)
线索二叉树的基本概念 我们按某种方式对二叉树进行遍历,将二叉树中所有节点排序为一个线性序列,在该序列中,除第一个结点外每个结点有且仅有一个直接前驱结点:除最后一个结点外每一个结点有且仅有一个直接后继结 ...
- 【转载】Java 9 新特性——模块化
来自 <http://www.jianshu.com/p/053a5ca89bbb#> 前言 年,我们将迎来 Java 语言的 22 岁生日,22岁,对于一个人而言,正是开始大展鸿图的年纪 ...