摘要:
思路:由于最多只有一个是奇数,所以二分枚举这个点,每次判断这个点的左边区间段所有点的和作为二分的依据。代码如下: 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #define ll long long 9 #define M 20000510 #define inf 1e2011 #define mod 100000000712 using namespace std;13 struct inter14 {15 ll a,b,c;16 }p[M];17 bool cal(in... 阅读全文
摘要:
思路:矩阵快速幂+中国剩余定理!!查资料得到2个公式: 1) B[n+p] = B[n] + B[n+1] mod p ; 2) B[p^m+n] = m*B[n] + B[n+1] mod p .用这两个都可以解决这个问题,第二个可以在0ms解决。质因数分解95041567=31*37*41*43*47,用矩阵快速幂分别求出B[n]%p (p是95041567的质因子)的结果。这样就得到5个同余等式,在用中国剩余定理求解既可。代码如下: 1 #include 2 #include 3 #include 4 #define M 51 5 #define mod 95041567 6 #d... 阅读全文
摘要:
思路:主要是二进制的运用。为了方便从0开始,首先看下右移一下,高位异或1的规律:(可以从右往左一列一列看)000(0) -> 100(4) -> 110(6) -> 111(7) -> 011(3) -> 001(1) -> 000(0)001(1) -> 000(0) -> 100(4) -> 110(6) -> 111(7) -> 011(3) -> 001(1)010(2) -> 101(5) -> 010(2) -> 101(5) -> 010(2) -> 101(5) -> 0 阅读全文