50分:
#include <bits/stdc++.h>
using namespace std;
int a[3010][3010];
int main()
{
int n,I,J;
cin >> n >> I >> J;
int num = 0;
int nowi = 1,nowj = 0;
for(int i = 1;i <= (n + 1) / 2;i++)
{
nowi++;
for(int j = i;j <= n - i;j++)
{
a[i][j] = ++num;
}
for(int j = i;j <= n - i;j++)
{
a[j][n - i + 1] = ++num;
}
for(int j = n - i + 1;j >= i + 1;j--)
{
a[n - i + 1][j] = ++num;
}
for(int j = n - i + 1;j >= i + 1;j--)
{
a[j][i] = ++num;
}
}
if(n & 1)
{
a[n / 2 + 1][n / 2 + 1] = ++num;
}
cout << a[I][J] << endl;
return 0;
}
100分:
#include <bits/stdc++.h>
using namespace std;
int work(int n,int i,int j)
{
if (i == 1)
return j;
if (j == n)
return n + i - 1;
if (i == n)
return 3 * n - 2 - j + 1;
if (j == 1)
return 4 * n - 4 - i + 2;
return work(n - 2,i - 1,j - 1) + 4 * (n - 1);
}
int main()
{
int n,i,j;
cin >> n >> i >> j;
cout << work(n,i,j) << endl;
return 0;
}