[問題] ACM UVa10160 Servicing Station

看板C_and_CPP (C/C++)作者 (薩哈拉雅)時間15年前 (2010/10/03 14:17), 編輯推噓1(101)
留言2則, 1人參與, 最新討論串1/1
※ [本文轉錄自 Prob_Solve 看板 #1Cg1_I14 ] 作者: rifiz (薩哈拉雅) 看板: Prob_Solve 標題: [問題] ACM UVa10160 Servicing Station 時間: Sun Oct 3 14:16:47 2010 小弟online judge在這題卡住了 : Problem D: Servicing stations 這題是給一群city 還有一堆city之間的connection. 然侯要找出能cover所有city的 service station的最小數目. 一個station可以服務所在地的所有immediate city. 我使用的方法是 backtracking, 也就是暴力法的一種. 這種方法的精華應該是在 剪枝 但是我沒辦法減到足夠少的狀態數目 有誰可以給個建議要如何減少才行嗎? 目前我的剪枝只有: 比上一次的數目多的話就不搜尋了 XD 請先進給我一點想法跟意見阿.......感激不盡 -------------------- 已經TLE好幾百次了 @_@ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.43.199.110 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.43.199.110

10/03 18:31, , 1F
這題要用A* search 其實就是BT加上剪枝~
10/03 18:31, 1F

10/03 18:32, , 2F
如果選了某點使之後儘管全部選擇也無法滿足條件就直接跳出
10/03 18:32, 2F
文章代碼(AID): #1Cg1_udB (C_and_CPP)
文章代碼(AID): #1Cg1_udB (C_and_CPP)