3 条题解
-
-10
写题解请注意 鼓励大家写题解,但注意题解格式。
题解一定要有思路解析或代码注释,能否让别人理解你的思路
也是你的能力的检验,不要只放无意义的代码给大家复制,那就失去了做题的初心。
给代码两端加上这个会舒服一些
```cpp
你的代码
```
</span>
这个点在键盘的左上角tab上面那个键,注意切换输入法
#include<iostream> using namespace std; int main() { int n; cin>>n;//这是一个注释 return 0; }
请注意严禁抄袭题解,写题解不要只放代码,需加上你的思路或代码注释。
抄袭题解一经发现直接取消成绩。
题解被删除的可能
- 代码不符合格式规范
- 没有思路讲解或者没有注释,
- 无意义的题解
大家携手共同维护一个良好的编程环境,如果一经发现,多次作乱。可能会被管理员拉黑,请注意,一旦拉黑即失去登陆资格。
-
-10
#include<iostream> using namespace std; int n,m,ans; bool vis[10][10]; int dx[2]={1,0}; int dy[2]={0,1};//先下横坐标会加1,纵不变。下完了开始右,右的时候横不变,纵加1. void show()//输出 { cout<<ans<<":"; for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++) { if(vis[i][j]&&(i!=n||j!=m)) { cout<<i<<","<<j<<"->"; } } } cout<<n<<","<<m; cout<<endl; return ; } void dfs(int x,int y) { if(x==n&&y==m)//搜到(n,m) { ans++; show(); return ; } for(int i=0;i<2;i++) { int nx=x+dx[i]; int ny=y+dy[i]; if(nx>=1&&nx<=n&&ny>=1&&ny<=m&&!vis[nx][ny])//没访问且是矩阵范围的坐标 { vis[nx][ny]=true; dfs(nx,ny); vis[nx][ny]=false;//回溯 } } } int main() { cin>>n>>m; vis[1][1]=true;//起点自己标记一下。 dfs(1,1); return 0; }
- 1
信息
- ID
- 357
- 时间
- 1000ms
- 内存
- 16MiB
- 难度
- 1
- 标签
- 递交数
- 51
- 已通过
- 40
- 上传者