#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... |