Language: C++

#include<iostream>
#include<vector>
#include<sstream>
#include<string>
#include<numeric>
#include <algorithm>
#include<math.h>
#include<cstdio>
#include<string.h>
#include<unistd.h>
#include <array>
#include <map> 
#define ALL(a)  (a).begin(),(a).end()



using namespace std;
typedef long long ll;
struct point{
  int x;
  int y;

};
int gcd(int a, int b)
{
	return a == 0 ? b : gcd(b % a, a);
}
int lcm( int m, int n )
{
	// 引数に０がある場合は０を返す
	if ( ( 0 == m ) || ( 0 == n ) )
		return 0;
	
	return ((m / gcd(m, n)) * n); // lcm = m * n / gcd(m,n)
}//lcm
int input(){
  int x;
  cin>>x;
  return x;
}

int moji(char in)
{
    int ans = (int)in-(int)'a';
    if((ans < 0) || (ans > 25)){
        ans = 26;
    }
    return ans;
}
const int VV=10;//場合に応じてVVの値のみ変更する必要あり
//dijkstra(s)sがスタート地点でそこからの最短距離を配列dで表す。正の重みのみ使用可能
int cost[VV][VV];
int d[VV];
bool used[VV];
void dijkstra(int s){
  fill(d,d+VV,100000);
  fill(used,used+VV,false);
  d[s]=0;
  while(true){
    int v=-1;
    for(int u=0;u<VV;u++){
      if(!used[u]&&(v==-1||d[u]<d[v]))v=u;
    }
    if(v==-1)break;
    used[v]=true;
    for(int u=0;u<VV;u++){
      d[u]=min(d[u],d[v]+cost[v][u]);
    }
  }

}

int compare_int(const void *a, const void *b)//qsort(quick sort利用時に使用)
{
    return *(int*)a - *(int*)b;
}

int binary_searchh(long long x,long long k[],int n){
  int l=0;
  int r=n;
  while(r-l>=1){
    int i=(l+r)/2;
    if(k[i]==x)return i;
    else if(k[i]<x)l=i+1;
    else r=i;
  }
  return -1;
}

struct File {
    int aa;
    int bb;

    File(const int& aa, const int& bb)
        : aa(aa), bb(bb) {}
};

bool operator<(const File& a, const File& b)
{
    // ファイル種別、ファイル名の順番で優先順位を付けて比較
    return std::tie(a.aa, a.bb) < std::tie(b.aa, b.bb);
}

long long kaijo(long long x){
  long long l=10*10*10*10*10*10*10*10*10+7;
  long long sum=1;
  for(int i=x;i>0;i--){
    sum*=i;
    if(sum>l){
      sum%=l;
    }
  }
  return sum;
}






int main(){
  int A,B,Q;
  cin>>A>>B>>Q;
  vector<long long>s;
  vector<long long>t;
  vector<long long>q;
  for(int i=0;i<A;i++){
    long long x;
    cin>>x;
    s.push_back(x);
  }
  for(int i=0;i<B;i++){
    long long x;
    cin>>x;
    t.push_back(x);
  }
  for(int i=0;i<Q;i++){
    long long x;
    cin>>x;
    q.push_back(x);
  }
  for(int i=0;i<Q;i++){
    auto jin1=lower_bound(ALL(s),q.at(i));
    auto jin2=jin1-1;
    auto tera1=lower_bound(ALL(t),q.at(i));
    auto tera2=tera1-1;
    long long jinn=*jin1;
    
    if(jinn==0){
      jinn=s.at(A-1);
    }
    long long jinnn=*jin2;
    if(jinnn==0){
      jinnn=s.at(A-1);
    }
    long long teraa=*tera1;
    if(teraa==0){
      teraa=t.at(B-1);
    }
    long long teraaa=*tera2;
    if(teraaa==0){
      teraaa=t.at(B-1);
    }
    
    long long tera1tojin1=1000000;
    long long tera2tojin1=1000000;
    long long tera1tojin2=1000000;
    long long tera2tojin2=1000000;

    if((jinn>=q.at(i)&&teraa>=q.at(i))||(jinn<=q.at(i)&&teraa<=q.at(i))){
       long long sum=abs(jinn-teraa)+min(abs(jinn-q.at(i)),abs(teraa-q.at(i)));
      
      
        tera1tojin1=sum;
      

    }else{
      tera1tojin1=abs(abs(q.at(i)-jinn)+abs(q.at(i)-teraa));
    }
    if((jinnn>=q.at(i)&&teraa>=q.at(i))||(jinnn<=q.at(i)&&teraa<=q.at(i))){
      sum=abs(jinnn-teraa)+min(abs(jinnn-q.at(i)),abs(teraa-q.at(i)));
      
        tera1tojin2=sum;
      

    }else{
      tera1tojin2=abs(abs(q.at(i)-jinnn)+abs(q.at(i)-teraa));
    }
    if((jinnn>=q.at(i)&&teraaa>=q.at(i))||(jinnn<=q.at(i)&&teraaa<=q.at(i))){
      sum=abs(jinnn-teraaa)+min(abs(jinnn-q.at(i)),abs(teraaa-q.at(i)));
      
      
        tera2tojin2=sum;
      

    }else{
      tera2tojin2=abs(abs(q.at(i)-jinnn)+abs(q.at(i)-teraaa));
    }
    if((jinn>=q.at(i)&&teraaa>=q.at(i))||(jinn<=q.at(i)&&teraaa<=q.at(i))){
      sum=abs(jinn-teraaa)+min(abs(jinn-q.at(i)),abs(teraaa-q.at(i)));
      
      
        tera2tojin1=sum;
      

    }else{
      tera2tojin1=abs(abs(q.at(i)-jinn)+abs(q.at(i)-teraaa));
    }
    cout<<min(min(tera1tojin1,tera1tojin2),(tera2tojin1,tera2tojin2))<<endl;
    

    

  }
  


  
}




Compiler output:
a.cc: In function 'int main()':
a.cc:181:7: error: 'sum' was not declared in this scope
  181 |       sum=abs(jinnn-teraa)+min(abs(jinnn-q.at(i)),abs(teraa-q.at(i)));
      |       ^~~
a.cc:190:7: error: 'sum' was not declared in this scope
  190 |       sum=abs(jinnn-teraaa)+min(abs(jinnn-q.at(i)),abs(teraaa-q.at(i)));
      |       ^~~
a.cc:200:7: error: 'sum' was not declared in this scope
  200 |       sum=abs(jinn-teraaa)+min(abs(jinn-q.at(i)),abs(teraaa-q.at(i)));
      |       ^~~