https://vjudge.net/problem/UVA-11991
#include<iostream>
#include<algorithm>
#include<string>
#include<cstring>
#include<vector>
using namespace std;
const int maxx=1e6+10;
vector<int> v[maxx];
int main(){
int n,m;
while(scanf("%d%d",&n,&m)!=EOF){
for(int i=0;i<maxx;i++)
v[i].clear();
for(int i=1;i<=n;i++){
int x;
scanf("%d",&x);
v[x].push_back(i);
}
for(int i=1;i<=m;i++){
int k,x;
scanf("%d%d",&k,&x);
int ans=0;
if(v[x].size()<k)ans=0;
else ans=v[x][k-1];
printf("%d\n",ans);
}
}
return 0;
}