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

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

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

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

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

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

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

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

 

 

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

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

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

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

 

 

 

 

    原文作者:Q1143316492
    原文地址: http://www.cnblogs.com/Q1143316492/p/6347772.html
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞