【洛谷】P1068 分数线划定 (题解)

P1068 分数线划定


题解:

#include<bits/stdc++.h>
using namespace std;
long long n,m,f=0,x=0,r=0;
long long k[100000],s[100000];
int main() {
	cin>>n>>m;
	f=1.5*m+0.5;
	f=f-1;
	for(int i=0; i<n; i++) {
		cin>>k[i]>>s[i];
	}
	for(int i=0; i<n; i++) {
		for(int j=i; j<n; j++) {
			if(s[i]<s[j]) {
				swap(s[i],s[j]);
				swap(k[i],k[j]);

			}
			if(s[i]==s[j]) {
				if(k[i]>k[j]) {
					swap(s[i],s[j]);
					swap(k[i],k[j]);
				}
			}
		}
	}
	x=s[f-1];
	for(int i=0; i<n; i++) {
		if(s[i]>=x) {
			r++;
		}
	}
	cout<<x<<" "<<r<<endl;
	for(int i=0; i<n; i++) {
		if(s[i]>=x) {
			cout<<k[i]<<" "<<s[i]<<endl;
		}
	}
	return 0;
}
发布了21 篇原创文章 · 获赞 0 · 访问量 178

猜你喜欢

转载自blog.csdn.net/zhaoweiming2019/article/details/104265402
今日推荐