[ACM-ICPC] Backtracking
Transcript of [ACM-ICPC] Backtracking
![Page 2: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/2.jpg)
Rights to CopyAttribution-ShareAlike 3.0
You are free:
– to Share — to copy, distribute and transmit the work
– to Remix — to adapt the work
– to make commercial use of the work
● Under the following conditions:
– Attribution — You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work).
– Share Alike — If you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.
– License text: http://creativecommons.org/licenses/by-sa/3.0/legalcode
![Page 3: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/3.jpg)
Backtracking● 概念
– 枚舉所有可能性
● 排列、組合
![Page 4: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/4.jpg)
Example● 1, 2, 3 的所有排列
![Page 5: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/5.jpg)
Example● 第一格目前可以選 : 1, 2, 3
![Page 6: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/6.jpg)
Example● 第二格目前可以選 : 2, 3
1
1
![Page 7: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/7.jpg)
Example● 第三格目前可以選 : 3
1
1 2
1 2
![Page 8: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/8.jpg)
Example● 找到第一個組合 :1-2-3
1
1 2
1 2 3
![Page 9: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/9.jpg)
Example● 往回走,第三格可以選 : 3
1
1 2
1 2 3
![Page 10: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/10.jpg)
Example● 3 已經選過,再往回,第二格可以選 :2, 3
1
1 2
1 2 3
![Page 11: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/11.jpg)
Example● 3 已經選過,再往回,第二格可以選 :2, 3
1
1 2
1 2 3
![Page 12: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/12.jpg)
Example● 2 已經選過,選 3
1
1 2
1 2 3
1 3
![Page 13: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/13.jpg)
Example● 後略 ...
1
1 2
1 2 3
1 3
1 3 2
![Page 14: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/14.jpg)
Example
1
1 2
1 2 3
1 3
1 3 2
![Page 15: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/15.jpg)
Example● 1, 2, 3 的所有組合
1 2 3
![Page 16: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/16.jpg)
Example
1 2 3
1 2 3
1 2 3
![Page 17: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/17.jpg)
Example
1 2 3
1 2 3
1 2 3 1 2 3
![Page 18: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/18.jpg)
Example
1 2 3
1 2 3
1 2 3 1 2 3
1 2 3
1 2 3 1 2 3
![Page 19: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/19.jpg)
Practice
UVa - 441
![Page 20: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/20.jpg)
8 Queen Problem● 問題:在 8x8 的西洋棋棋盤上擺放八隻皇后,
讓他們恰好無法互相攻擊對方。● 組合
● Uva - 750
![Page 21: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/21.jpg)
Sudoku● 數獨:行、列、方格內不可重復● 排列
● UVa - 989
![Page 22: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/22.jpg)
剪支● 在完成遞迴條件前檢查是否可能為答案
– Ex. 組合遞增數列
![Page 23: [ACM-ICPC] Backtracking](https://reader034.fdocuments.net/reader034/viewer/2022042502/55513e4db4c905bd1c8b49aa/html5/thumbnails/23.jpg)
102/3/27 23
Thank You for Your Listening.