Description
最近loy看了盗墓笔记,对古墓中的各种机关结构产生了极大的好奇心。这不,她不知道在哪百度了一串古墓群的某种参数,并坚信这些参数之间有着某种联系。被她研究了不知道有多久,还真被找出了某些关联:每个参数经过一种奇特的运算都能得到一种优先级,当删除了部分优先级低的参数,巨大的秘密就会展现在我们的面前。。。。。。当然,她忙着激动了,就把算出来的数据扔给你,让你来帮她揭开这个巨大的秘密。
Input
第一行为一个正整数n(10<n<=100),其后有n行,每一行有两个数,前面是古墓的参数(可能会带前导0),后面是古墓的优先级(保证了优先级不会重复出现)。
Output
去掉优先级最低的前10个参数,将剩下的参数按原出现顺序输出,以空格分隔(行末不得出现多余空格)。
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
struct Tomb {
string param;
int priority;
};
bool cmp(int a, int b) {
return a < b;
}
int main() {
int n;
cin >> n;
vector<Tomb> tombs(n);
int num[n];
for (int i = 0; i < n; i++) {
cin >> tombs[i].param >> tombs[i].priority;
num[i]=tombs[i].priority;
}
sort(num, num+n, cmp);
for(int i=0;i<10;i++){
for(int j=0;j<n;j++){
if(num[i]==tombs[j].priority){
tombs.erase(tombs.begin()+j);
n--;//数组变短了
}
}
}
for (int i = 0; i < tombs.size(); i++) {
cout << tombs[i].param;
if (i != tombs.size() - 1) {
cout << " ";
}
}
cout<<endl;
return 0;
}
C的链表太烦了(bushi