题目描述
数学竞赛结束后,各个班主任老师都很迫切地想知道自己班级在全年段前N名的人数。于是,教务主任就请来信息学兴趣小组的同学来帮忙,要求编写一程序,只要告诉计算机要查的班级K班和名次前N 名,然后再输入M个学生的成绩,计算机就统计出K班在年段前N名中的人数。(假设每个学生的总分各不相同)
输入
共M+1行
第一行三个整数依次为M,K,N,分别表示全年段共有M个学生,要统计的是K班在全年段前N名的人数。(M≤1000,K≤20,N≤M)
接下来M行是M个学生的班级和成绩,中间用一个空格隔开。
输出
共一行,表示K 班在年段前N名中的人数。
样例输入
7 2 5 2 65 3 90 9 100 8 64 2 66 2 80 4 84
样例输出
2
解题思路
定义两个数组,分别输入班级和成绩,利用交换法将成绩数组排序,记录数组下标,将班级数组跟随成绩数组排序,利用循环寻找符合条件的结果。
#include<iostream>
using namespace std;
int main()
{
int m,k,n,x=0,