Rambling Jim
Saturday, September 24, 2011
Party Lamps 题解
Labels:
USACO
很容易知道:
如果一个按钮被按下两次,就相当于一次都不按,按下按钮2+3就相当于按钮1。
按钮的先后顺序不会影响最终结果。
因此,可以缩小C的大小。
if(C > 4)
{
if(C % 2) C = 3;
else C = 4;
}
这样DFS就可以通过所有数据了。
进一步优化:
观察发现,灯泡的情况每6个循环一次(2x3=6),因此,只要计算前6个灯泡的情况就可以了。
这样,就可以用位运算提高速度了。
No comments:
Post a Comment
Newer Post
Older Post
Home
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment