记录编号 |
294589 |
评测结果 |
AAAAAAAAAA |
题目名称 |
[HZOI 2016]2333 |
最终得分 |
100 |
用户昵称 |
Twist Fate |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.296 s |
提交时间 |
2016-08-12 15:08:24 |
内存使用 |
1.45 MiB |
显示代码纯文本
//这是一道排序加搜索题
//先开一个结构体记录原来的位置以及所存的数
//然后进行查找
#include<cstdio>
#include<algorithm>
#include<vector>
using namespace std;
//int num[100005];
vector<int>x[100005];
/*void qsort(int l,int r){
int i=l;
int j=r;
int mid=a[(l+r)/2].num;
zhen p;
while(i<=j){
while(a[i].num<mid)i++;
while(a[j].num>mid)j--;
if(i<=j){
p=a[i]; a[i]=a[j]; a[j]=p;
i++; j--;
}
}
if(l<j)qsort(l,j);
if(i<r)qsort(i,r);
}*/
int main(){
freopen("2333_.in","r",stdin);
freopen("2333_.out","w",stdout);
int n,m;
scanf("%d%d",&n,&m);
int k;
for(int i=1;i<=n;i++){
scanf("%d",&k);
//num[k]++;
x[k].push_back(i);
}
//for(int i=1;i<=n;+)
// printf("%d %d\n",a[i].num,a[i].x);
int aa,bb;
for(int i=1;i<=m;i++){
scanf("%d%d",&aa,&bb);
if(x[bb].size()<aa)
printf("0\n");
else printf("%d\n",x[bb][aa-1]);
}
return 0;
}