摘要: 题意:有一个N*M的像素图,现在问最少能用几块1*k的木条覆盖所有的 * 点,k为>=1的任意值。 分析:和小行星那题很像。小行星那题是将一整行(列)看作一个点,但本题一行或一列内可能有多个连通块。所以先根据像素图统计出总的行列连通块的个数。 将行连通块视作X部;列连通块视作Y部;连接一对行列连通块 阅读全文
posted @ 2018-08-20 21:17 xiuwenL 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 题意:求区间1<=i<=b与区间1<=j<=d之间满足gcd(i,j) = k 的数对 (i,j) 个数。(i,j)与(j,i) 算一个。 分析:gcd(i,j)=k可以转化为gcd(i/k,j/k)=1。枚举每个1<=i<=b/k 的 i,用容斥原理统计区间[1,d]中与其互素的个数。需要预处理筛 阅读全文
posted @ 2018-08-20 20:57 xiuwenL 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 题意:求[1,N-1]中有多少能被集合M中的任意一个数整除。 分析:运用容斥原理解决。二进制枚举N-1中能被1个,2个...M个数整除的个数,奇加偶减。 每次N-1除以若干个数的lcm得到区间[1,N-1]中能被这若干个数整除的个数。 注意M中有可能出现0,0是不能整除任何数的,跳过即可。 阅读全文
posted @ 2018-08-20 10:28 xiuwenL 阅读(118) 评论(0) 推荐(0) 编辑