2 条题解
-
0
#include<bits/stdc++.h> using namespace std; int sum=0; int dfs(int i1,int j1,int in,int jn,int x,int y) { int n=in-i1+1; if(x==i1) return sum+(y-j1+1); if(y==j1) return sum+4*(n-1)-(x-i1+1-2); if(x==in) return sum+4*(n-1)-(n-2)-(y-j1+1-1); if(y==jn) return sum+(y-j1+1)+(x-i1+1)-1; sum+=4*(n-1); return dfs(i1+1,j1+1,in-1,jn-1,x,y); } int main() { int n,x,y;scanf("%d%d%d",&n,&x,&y); int ans=dfs(1,1,n,n,x,y); printf("%d",ans); return 0; } -
0
#include<bits/stdc++.h> using namespace std; int sum=0; int dfs(int i1,int j1,int in,int jn,int x,int y) { int n=in-i1+1; if(x==i1) return sum+(y-j1+1); if(y==j1) return sum+4*(n-1)-(x-i1+1-2); if(x==in) return sum+4*(n-1)-(n-2)-(y-j1+1-1); if(y==jn) return sum+(y-j1+1)+(x-i1+1)-1; sum+=4*(n-1); return dfs(i1+1,j1+1,in-1,jn-1,x,y); } int main() { int n,x,y;scanf("%d%d%d",&n,&x,&y); int ans=dfs(1,1,n,n,x,y); printf("%d",ans); return 0; }
- 1
信息
- ID
- 677
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 8
- 标签
- 递交数
- 12
- 已通过
- 9
- 上传者