FJUT寒假作业第二周C题解(位运算)

题目来源:http://210.34.193.66:8080/vj/Contest.jsp?cid=161#P2

题意比较好理解。如果直接按题目要求一步一解。一定超时。作为一个懒人也不会这么暴力一个肯定超时的方法。就需要优化,结合位运算特点。

首先要理解:比如案例一,第一行和第三行的第一个数字都是1,就直接决定A*B=1,即A,B有关系。

然后有个小技巧:来自集训队群文件某PPT

 

 

 比如1000001当做二进制,转为十进制储存。方便处理。如图i为行,处理每行二进制存到数组VIS[]。那么A*B==1相当于A&B==1

 

最后根据组合原理不重复的遍历所有三条边的组合。

 

 

 

 

posted @ 2017-01-24 20:28  Q1143316492  阅读(324)  评论(0编辑  收藏  举报