首页 > 其他分享 >洛谷题单指南-排序-P1068 [NOIP2009 普及组] 分数线划定

洛谷题单指南-排序-P1068 [NOIP2009 普及组] 分数线划定

时间:2024-01-30 12:12:08浏览次数:33  
标签:p1 int 洛谷题 NOIP2009 leveln P1068 score 分数线 id

原题链接:https://www.luogu.com.cn/problem/P1068

题意解读:根据题意,用模拟法,求出分数线所在位置,然后计算分数线,最后输出结果即可。

解题思路:

1、分数线是按从大到小排名来设定,因此数据因为按照分数从大到小排序,如果分数相同,需要安装报名号从小到大排序

2、计算分数线位置,主要是下取整,直接m * 3 / 2即可

3、由于存在相同分数,因此分数线的位置需要不断向后移动,把分数相同的人都纳入范围

4、输出结果

100分代码:

#include <bits/stdc++.h>
using namespace std;

const int N = 5005;

struct Person
{
    int id;  //报名号
    int score; //分数
} p[N];

bool cmp(Person p1, Person p2)
{
    if(p1.score != p2.score) return p1.score > p2.score;
    return p1.id < p2.id;
}

int n, m;

int main()
{
    cin >> n >> m;
    for(int i = 1; i <= n; i++) cin >> p[i].id >> p[i].score;
    
    sort(p + 1, p + n + 1, cmp);

    int leveln = m * 3 / 2; //分数线的位置
    int level = p[leveln].score; //分数线

    while(leveln < n && p[leveln].score == p[leveln + 1].score) leveln++; //找到分数线相同的第一个人的位置

    cout << level << " " << leveln << endl;

    for(int i = 1; i <= leveln; i++) cout << p[i].id << " " << p[i].score << endl; //从分数最高者开始输出

    return 0;
}

 

标签:p1,int,洛谷题,NOIP2009,leveln,P1068,score,分数线,id
From: https://www.cnblogs.com/jcwy/p/17996822

相关文章

  • 洛谷题单指南-排序-P1152 欢乐的跳
    原题链接:https://www.luogu.com.cn/problem/P1152题意解读:要判断相邻数差的绝对值是否覆盖1~n-1,只需遍历相邻两数之差,借助数组标记差的绝对值是否存在,然后遍历数组即可。解题思路:此题有两个注意点:1、数值要用longlong2、计算差值绝对值后,标记桶数组时,有可能导致越界,因为每个......
  • 洛谷题单指南-排序-P2676 [USACO07DEC] Bookshelf B
    原题链接:https://www.luogu.com.cn/problem/P2676题意解读:要使能够到书架顶的牛数量最少,优先选高的牛即可,直到总身高超过书架高度,简单的排序+贪心,下面给出代码。100分代码:#include<bits/stdc++.h>usingnamespacestd;constintN=20005;inth[N];intn,b;intmain......
  • 洛谷题单指南-排序-P1781 宇宙总统
    原题链接:https://www.luogu.com.cn/problem/P1781题意解读:题目思路非常简单,在n个投票数中选最大的,并记录其编号即可,由于投票数很大,无法直接用整形,需要通过string来进行数字比较。解题思路:本题的关键在于如何比较string数字的大小?在高精度减法时,需要判断两个数的大小,用大数减小......
  • 洛谷题解-[ABC286E] Souvenir
    https://www.luogu.com.cn/problem/AT_abc286_e题目描述NNN個の都市があり、いくつかの相異なる都市の間は一方通行の直行便によって移動することができます。どの直行便が存在するかはNNN個の長さNNNの文字列S1,S2,…,SNS_1,S_2,\ldots,S_NS1​,S2​,…,SN​......
  • 洛谷题解-[ABC325E] Our clients, please wait a moment
    https://www.luogu.com.cn/problem/AT_abc325_e题目描述ある国には都市がNNN個あります。あなたは、都市111にある営業所から000個以上の都市を経由して都市NNNにある訪問先へ移動しようとしています。移動手段は社用車と電車の222種類があります。都市......
  • 洛谷题单指南-排序-P1093 [NOIP2007 普及组] 奖学金
    原题链接:https://www.luogu.com.cn/problem/P1093题意解读:本题考察排序,根据题意,先按总分从大到小排,再按语文从大到小排,以上都相同则按学号从小到大排。100分代码:#include<bits/stdc++.h>usingnamespacestd;constintN=305;structstudent{intid;intyuw......
  • 洛谷题单指南-排序-P1059 [NOIP2006 普及组] 明明的随机数
    原题链接:https://www.luogu.com.cn/problem/P1059题意解读:此题主要做两件事:排序+去重,用计数排序即可解决,直接给出代码。100分代码:#include<bits/stdc++.h>usingnamespacestd;constintN=1005;inta[N];intn;intmain(){cin>>n;intx;intcnt......
  • 洛谷题解-[ARC001B] リモコン
    https://www.luogu.com.cn/problem/AT_arc001_2题目描述 输入格式无输出格式无题意翻译题目描述:高桥君要调整空调的设定温度。现在的设定温度是A度,而他想调到B度。空调遥控器按一次可以:上调或下调1度上调或下调5度上调或下调10度高桥君想求出从A调到B度的最小......
  • 洛谷题解-P1938 [USACO09NOV] Job Hunt S
    https://www.luogu.com.cn/problem/P1938题目描述Bessieisrunningoutofmoneyandissearchingforjobs.FarmerJohnknowsthisandwantsthecowstotravelaroundsohehasimposedarulethathiscowscanonlymakeD(1<=D<=1,000)dollarsinac......
  • 洛谷题解-P2888 [USACO07NOV] Cow Hurdles S (Floyd)
    https://www.luogu.com.cn/problem/P2888题目描述FarmerJohnwantsthecowstoprepareforthecountyjumpingcompetition,soBessieandthegangarepracticingjumpingoverhurdles.Theyaregettingtired,though,sotheywanttobeabletouseaslittleene......