Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
思路分享(63ms未优化)【任务一 重建棋盘】dfs,重点是优化: 每格有三个状态,未确定?/棋子1/空白0 dfs中每次都选取*自由度*最低的一组(group),分两种情况 - 本组没有待定的格点,直接填上相应状态(分为棋子和空白两种子情况) - 本组有待定格点,遍历尝试填比较少的那种状态(例如本组共5个,应有2棋子3空白,那么就填棋子) *自由度* 表示每组当中剩余棋子或空白数量较少的那个, 即 min(num0ToFillInGroup[g], num1ToFillInGroup[g]) 另外在选定某组后持续选该组,直到全部填完再选下一组(不确定是优化还是负优化) 代码不是很好看,毕竟不是专业OIer: https://gist.github.com/JimmyZJX/88d272232d3980b2536aa44f484d5b72 Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator