#include <bits/stdc++.h>
#define int long long
using namespace std;
int n,x,y,sl;
int pme[407];
vector<int> zpme;
int out[30][30];
inline void spme(int a){
pme[0]=pme[1]=1;
for(int i=2;a;i++){
if(pme[i]==1) continue;
--a;
zpme.push_back(i);
for(int j=i+i;j<=400;j+=i){
pme[j]=1;
}
}
}
inline void dfs(int x,int y,int k,char u){
if(x>=1&&x<=n&&y>=1&&y<=n&&out[x][y]==0){
out[x][y]=zpme[k-1];
if(u=='y'){
dfs(x,y+1,k+1,'y');
dfs(x+1,y,k+1,'x');
dfs(x,y-1,k+1,'z');
dfs(x-1,y,k+1,'s');
}
else if(u=='x'){
dfs(x+1,y,k+1,'x');
dfs(x,y+1,k+1,'y');
dfs(x,y-1,k+1,'z');
dfs(x-1,y,k+1,'s');
}
else if(u=='z'){
dfs(x,y-1,k+1,'z');
dfs(x,y+1,k+1,'y');
dfs(x+1,y,k+1,'x');
dfs(x-1,y,k+1,'s');
}
else if(u=='s'){
dfs(x-1,y,k+1,'s');
dfs(x,y+1,k+1,'y');
dfs(x+1,y,k+1,'x');
dfs(x,y-1,k+1,'z');
}
}
}
signed main(){
ios::sync_with_stdio(0);
cin.tie(0);
cin>>n>>x>>y;
sl=n*n;
spme(sl);
dfs(1,1,1,'y');
cout<<out[x][y];
return 0;
}