#include<bits/stdc++.h>
using namespace std;
int n,m,k;
long long a[1919810],sum;
long long vis[1919810];
int main(){
cin>>n>>k>>m;
for(int i=1;i<=n;i++){
cin>>a[i];
}for(int i=1;i<=m;i++){
int x,y;
cin>>x>>y;
vis[x]+=y;
sum+=y;
}long long l=1,r=0,mini=1e18;
while(sum && r<n){
if(vis[a[++r]]>0){
sum--;
}vis[a[r]]--;
}if(!sum)mini=min(mini,r-l+1);
while(r<n){
vis[a[++r]]--;
while(l<=r && vis[a[l]]<0){
vis[a[l++]]++;
}mini=min(mini,r-l+1);
}if(mini!=1e18)cout<<mini;
else cout<<"impossible";
return 0;
}