总时间限制: 1000ms 内存限制: 65536kB
描述
军方截获的信息由n(n<=30000)个数字组成,因为是敌国的高端秘密,所以一时不能破获。最原始的想法就是对这n个数进行小到大排序,每个数都对应一个序号,然后对第i个是什么数感兴趣,现在要求编程完成。
- 输入
第一行n,接着是n个截获的数字,接着一行是数字k,接着是k行要输出数的序号。 - 输出
k行序号对应的数字
样例输入
5
121 1 126 123 7
3
2
4
3
样例输出
7
123
121
题解:
– 就是排序加输出,已经不能再简单了
代码:
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cmath>
#include<cstring>
#include<algorithm>
using namespace std;
const int MAXN=30005;
int n,k;
int a[MAXN];
int main(){
cin>>n;
for(int i=1;i<=n;i++)
scanf("%d",&a[i]);
sort(a+1,a+1+n);
cin>>k;
for(int i=1;i<=k;i++){
int x;
scanf("%d",&x);
printf("%d\n",a[x]);
}
return 0;
}