2018年3月5日

UVa291 The House Of Santa Claus

祝我18歲生日快樂

今天發一篇backtracking

題目:

  這是聖誕老人的房子,現在我們要用一筆畫把他畫出來
  而我們規定由左下角(編號1)開始畫,請寫個程式列出所有畫法

一組路徑的輸出方式為依序輸出每個經過的數字:123153452,最後列出的各解法需依數字大小

做法:

一筆畫畫完8條邊,加上起點共有9個數字

把房子存成圖後開始backtracking,嘗試所有走法,走過的記得記錄下來
窮途末路時走回上一步,清除走過的紀錄,當集滿9個數字時就把這組解推入vector

這裡的解是用string存,(char)(數字+'0')轉成字元,最後sort會依照字典序(剛好就是數字大小)排序

輸出,完成,去上學囉!

沒有留言:

張貼留言