无聊做了下算法题,用递归方法,不知道对不对 
   
 
   int fun(int a[3][4],int n,int m,int i,int j)
 {
     int key = a[i][j];
     if(i +1 == n && j+1 == m) return key;
     int right = key;
     int down  = key;
     if(j+1<m) right += fun(a,n,m,i,j+1);
     if(i+1<n) down += fun(a,n,m,i+1,j);
 
     return right>down?right:down;
 }
 
 
 int main()
 {
     int a[3][4] = {
      {2,5,6,4},
      {5,8,7,3},
      {9,5,1,4}
     };
     cout<<fun(a,3,4,0,0);
 
     return 0;
 }