第七点没过
#include<bits/stdc++.h>
using namespace std;
int n,m,i,j,ii,jj;
long long ans;
int main(){
cin>>n>>i>>j;
m=min(min(n-i,n-j),min(i-1,j-1));
for(int o=1;o<=m;o++){
ans+=4*(n+1-2*o);
}
ii=i-m;
jj=j-m;
if(i==1) {
ans=ans+jj;
}else if(jj==n-2*m){
ans=ans+n-m*2+ii-1;
}else if(jj==1){
ans=ans+(n-m*2-1)*4-ii+1+1;
}else{
ans=ans+(n-m*2-1)*3-jj+1+1;
}
cout<<ans;
return 0;
}
用了逐层拆开最后根据所处边来解题