本文最后更新于 1170 天前,其中的信息可能已经有所发展或是发生改变。
#include<iostream>
using namespace std;
int arr[10][10][2];
int dg(int x,int y){
cout<<"arr[x][y][1]"<<arr[x][y][1]<<endl;
if(arr[x][y][1]==1){
//return 0;
}
arr[x][y][1]=1;
cout<<"arr[x][y][0]"<<arr[x][y][0]<<endl;
if(x==0&&y==0){
cout<<"---1 "<<x<<" "<<y<<endl;
return arr[x][y][0];
}
if(x==0&&y>0){
cout<<"---2 "<<x<<" "<<y<<endl;
return dg(0,y-1)+arr[x][y][0];
}
if(x>0&&y==0){
cout<<"---3 "<<x<<" "<<y<<endl;
return dg(x-1,0)+arr[x][y][0];
}
if(dg(x-1,y)>dg(x,y-1)){
cout<<"---4 "<<x<<" "<<y<<endl;
return dg(x-1,y)+arr[x][y][0];
}else{
cout<<"---5 "<<x<<" "<<y<<endl;
return dg(x,y-1)+arr[x][y][0];
}
//return dg(x-1,y)+dg(x,y-1)+arr[x][y][0];
}
int main(){
int x,y;
for(int i=0;i<10;i++){
for(int j=0;j<10;j++){
cin>>arr[i][j][0];
arr[i][j][1]=0;
}
}
cout<<"input x y"<<endl;
cin>>x>>y;
cout<<dg(x,y);
return 0;
}
Post Views: 251