数论
文章平均质量分 58
鬼沐冢
总会突然想起喵喵
展开
-
HDU - 5969(位运算)
题目链接:HDU - 5969题意:找出区间[L, R]中的两个数x、y,使x|y(位或)最大。题解:位或是二进制运算,二进制中只有0和1,要使位或最大,就要使R位或后的1尽可能的多。因为位或的性质,不可能位或后使数的最高位大于R。所以其中一个数必须是R。首先要知道,在剩下的数中能使R增加的1的位数是有限的。那么能增加多少呢?能使L与R出现的L的最高不同位之后的低位全部变成1。...原创 2017-08-04 21:06:08 · 875 阅读 · 4 评论 -
51Nod - 1119(组合数+逆元)
链接:51Nod - 1119题意:M * N的方格,一个机器人从左上走到右下,只能向右或向下走。有多少种不同的走法?由于方法数量可能很大,只需要输出Mod 10^9 + 7的结果。Input第1行,2个数M,N,中间用空格隔开。(2 Output输出走法的数量 Mod 10^9 + 7。Input示例2 3Outpu原创 2018-01-29 11:22:08 · 239 阅读 · 0 评论 -
CodeForces - 964C(等比数列求和+逆元)
链接:CodeForces - 964C题意:求 n∑i=0sian−ibi∑i=0nsian−ibi by 109+9109+9 值。s[i]为+1或-1。题解:可证:每k项的和相差(b/a)^k。等比数列求和加逆元。逆元不一定要最后一步用的,而是每步都可以用。#include <bits/stdc++.h>using namespace std;const double EP...原创 2018-04-26 20:45:54 · 388 阅读 · 0 评论