#include<bits/stdc++.h> using namespace std; int n,m; int fx[2]={1,0}; int fy[2]={0,1}; int vx[1000],vy[1000],k=1; void dfs(int x,int y,int step){ if(x==n&&y==m){ printf("%d:",k++); for(int i=1;i<=step;i++){ printf("%d,%d",vx[i],vy[i]); if(i<step) printf("->"); } printf("\n"); return; } for(int i=0;i<=1;i++){ int tx=x+fx[i]; int ty=y+fy[i]; if(tx>=1&&tx<=n&&ty>=1&&ty<=m){ vx[step+1]=tx; vy[step+1]=ty; dfs(tx,ty,step+1); } } } int main(){ scanf("%d%d",&n,&m); vx[1]=1; vy[1]=1; dfs(1,1,1); } /************************************************************** Problem: 1360 User: admin Language: C++ Result: Accepted Time:9 ms Memory:2084 kb ****************************************************************/