#include <bits/stdc++.h>
using namespace std;
const int N=6e5;
int n,m,q;
int k[N];
int path(int u,int v){
if(u>v){
swap(u,v);
}
return min(v-u,u+2*n-v);
}
int main()
{
cin>>n>>m>>q;
for(int i=1;i<=m;++i){
cin>>k[i];
}
while(q--){
int u,v;
cin>>u>>v;
int answ=path(u,v);
for(int i=1;i<=m;++i){
answ=min(answ,path(u,k[i])+path(k[i]+n,v)+1);
answ=min(answ,path(u,k[i]+n)+path(k[i],v)+1);
}
cout<<answ<<'\n';
}
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |