讓我mark一下…… 每次遞歸都要糾結很久……
這是學長的代碼,借過來領悟一下……
題目大意:給你漢諾塔中盤子的個數,然後給你一串字元,詢問在最佳移動的過程中,是否存在所給的狀態,如果是,則輸出YES,否則,NO。
如CAB,就依次對應盤子的標號,盤子標號從上到下。
bool dfs(int s,int t,int m,int n){
if(n==-1) return true;
if(s==a[n]){
rt dfs(s,m,t,n-1);
}if(t==a[n]){
rt dfs(m,t,s,n-1);
}else return false;
return true;
}
int main(){
int n;
while(sf("%d",&n)!=EO......
閱讀全文