Pagini recente » Cod sursa (job #2025355) | Cod sursa (job #76966) | Cod sursa (job #3227624) | Cod sursa (job #2625372) | Cod sursa (job #1351883)
#include <iostream>
#include <vector>
#include <fstream>
#include <queue>
using namespace std;
ifstream f("stramosi.in");
ofstream g("stramosi.out");
vector <int> stiva;
vector <int> s[250005];
vector <int> G[250005];
int main()
{
int n,m,i,j,nod,x,q,p;
f>>n>>m;
for(i=1;i<=n;i++)
{
f>>x;
G[x].push_back(i);
}
stiva.push_back(0);
while(stiva.empty()!=1)
{
nod=stiva.back();
if(G[nod].empty()==0)
{
stiva.push_back(G[nod].back());
G[nod].pop_back();
}
else
{
s[nod]=stiva;
stiva.pop_back();
}
}
for(i=1;i<=m;i++)
{
f>>q>>p;
if(p>s[q].size())
g<<'0'<<endl;
else
{
x=s[q].size()-p;
g<<s[q][x-1]<<endl;
}
}
return 0;
}