2012-0056
从 Trac 迁移的文章
这是从旧校内 Wiki 迁移的文章,可能存在一些样式问题,您可以向 memset0 反馈。
原文章内容如下:
占 by nash142857.
这道题目精髓在于位运算,用个sum[90001]预处理出每个数各出现过几次,枚举n行,在一行上枚举任意2个点,然后关键是处理两个点共同出现的行数,这就利用位运算,开个p[90001][12],因为一个int 可以表示30位的状态,所以一个数组10个数就可以表示300行,所以只要把两个点的状态&操作,再求有多少个1就行了,这样做速度就快多了。
占 by nash142857.
这道题目精髓在于位运算,用个sum[90001]预处理出每个数各出现过几次,枚举n行,在一行上枚举任意2个点,然后关键是处理两个点共同出现的行数,这就利用位运算,开个p[90001][12],因为一个int 可以表示30位的状态,所以一个数组10个数就可以表示300行,所以只要把两个点的状态&操作,再求有多少个1就行了,这样做速度就快多了。