
--数学---
a1s4z5
这个作者很懒,什么都没留下…
展开
-
CodeForces #280 E Vanya and Field
这个题嘛,怎么说呢首先你要有一点同余的知识,就可以做惹 o(` • ~ • ′。)o 因为题中保证了gcd(n,dx)==1和gcd(n,dy)==1gcd(n,dx)==1 和 gcd(n,dy)==1 这保证了根据题目中的走法//从(x,y)(x,y)走到((x+dx)modn,(y+dy)modn)((x+dx)mod\; n,(y+dy)mod\; n) 在从起点开始走n步之后,一定原创 2015-12-08 15:11:15 · 373 阅读 · 0 评论 -
Codeforces 347E - Number Transformation II
给出nn个数字xix_i,两个整数AA,BB(A−B≤106)(A-B \le 10^6)每一步可以做两个操作其中一个1 将AA变成A−1A-12 将AA变成 A−A(modx1)A - A \pmod{x_1}问将AA变成BB的最小步数。每次贪心的找到能减到的最小的大于等于BB的AA即可。如果一个A−A(modxi)<BA -A\pmod{x_i} < B ,那就可以将这个xix_i删掉。#inc原创 2016-10-31 13:44:13 · 578 阅读 · 0 评论 -
Codeforces 347C - Alice and Bob
每一回合挑选集合中的两个数x,yx,y, 满足|x−y||x-y|不在集合中,然后把|x−y||x-y|加到集合里。给出集合最初的nn个数问是否先手必胜。游戏结束的时候最小的数就是这nn个数的gcdgcd,最大的数就是一开始给出的集合的最大的数。游戏结束的时候的集合的大小就是结束时最大的数最小的数\frac{最大的数}{最小的数}这样就可以得出游戏进行的步数,然后就可以得到结果了#include<b原创 2016-10-31 13:37:24 · 435 阅读 · 0 评论 -
Hackerrank Coprime Conundrum
计算小于乘积小于nn的互质二元组的个数具体的,计算\sum_\limits{i=1}^n\sum\limits_{j=i}^n[i \times j \le n][gcd(i,j)=1]\sum_\limits{i=1}^n\sum\limits_{j=i}^n[i \times j \le n][gcd(i,j)=1]其中n≤109n\le 10^9可以考虑枚举ii,计算和ii互质大于ii并且和i原创 2016-10-05 12:40:29 · 354 阅读 · 0 评论 -
Hdu 5909 Tree Cutting
n(n≤1000)n(n\le 1000)个点的树上每个点有一个权值(0≤Ci<m,m≤210)(0\le C_i < m,m\le 2^{10}),定义一个子树的权值为这个子树节点的权值的异或。分别求权值为[0,m−1][0,m-1]的子树的个数mod(109+7)mod(10^9+7)对于一个无根树的子树,如果我们钦定一个点作为无根树的根,那么对于这个树的所有子树都可以钦定出唯一的一个点作为根。原创 2016-10-02 23:20:15 · 967 阅读 · 0 评论 -
Hdu 5895 Mathematician QSC
f(0)=0,f(1)=1,f(n)=f(n−2)+2∗f(n−1)g(n)=∑i=0nf(i)2f(0) = 0, f(1) = 1, f(n) = f(n - 2) + 2 * f(n - 1) \\g(n) = \sum\limits_{i=0}^nf(i)^2, 求 xg(n∗y) mod (s+1)x^{g(n * y)}\ \mathrm{mod}\ (s + 1)首先有一个公式写作xa原创 2016-09-18 19:51:57 · 897 阅读 · 0 评论 -
Hdu 5768 Lucky7
求[x,y][x,y]这个区间内满足(mod7)=0\pmod{7} = 0 (modp1)≠a1\pmod{p_1} \neq a_1(modp2)≠a2\pmod{p_2} \neq a_2…..(modpn)≠an\pmod{p_n} \neq a_n的数的个数0≤x<y≤1018 0\le x < y \le 10^{18},∏i=1npi≤1018\prod\limits_{i=1}原创 2016-07-29 09:07:14 · 484 阅读 · 0 评论 -
Hdu 5750 Dertouzos
BC的时候听说这个题卡时限以为会FST,没想到居然过了 赛后看了一下我的时间复杂度居然是O(T×min(⌊np⌋,t))O(T \times min(\lfloor \frac{n}{p} \rfloor,t))(tt是pp的最小素因子在素数表的rankrank)感觉也是十分的神奇#include<cstdio>#include<cstring>#include<algorithm>usin原创 2016-07-25 11:03:17 · 328 阅读 · 0 评论 -
hdu 5212 Code
求∑i=1n∑j=1ngcd(ai,aj)×(gcd(ai,aj)−1)(mod10007)\sum\limits_{i=1}^n\sum\limits_{j=1}^ngcd(a_i,a_j) \times (gcd(a_i,a_j)-1) \pmod{10007}1≤n,ai≤100001\le n,a_i\le 10000几乎是反演模板题枚举gcd算贡献就好具体见代码#include<cstdi原创 2016-06-01 22:32:46 · 344 阅读 · 0 评论 -
莫比乌斯反演(入门)
细细算来,看反演已经有一两个星期了 刚开始的时候也是走了不少的弯路 和其他的算法一样,只要你懂了,就会有一种不过如此的感觉(误 感觉反演还是刚入门,不过还是先写一篇不完全的总结吧,不然过段时间就要忘记了虽说看反演看了好久才懂,但是现在回头看看,其实很多时间还是花费在弯路上,真正的输出时间不过是最近的一两天建议的前置技能:容斥的简单应用唯一分解定理欧拉函数的定义积性函数的定义然后就可以看反演啦反原创 2016-05-06 18:44:44 · 3058 阅读 · 4 评论 -
SDUT 3257 Cube Number
SDUT 3257 Cube Number和上一题类似的一个题 给出n(n≤1e6)n(n\le1e6)个数ai≤1e6a_i\le1e6,问其中有多少个数对满足这个数对的乘积是立方数对于一个数x=∏i=1npeiix = \prod\limits_{i=1}^np_i^{e_i}我们记sim(x)=∏i=1npeimod3i,sym(x)=∏i=1np3−eimod3isim(x) = \prod原创 2016-05-09 18:24:19 · 456 阅读 · 0 评论 -
SDUT 3258 Square Number
给出n,n≤1e6n,n\le1e6个数ai≤1e6a_i\le1e6,问其中有多少个数对满足这个数对的乘积是平方数对于一个数x=∏i=1npeiix = \prod\limits_{i=1}^np_i^{e_i}我们记sim(x)=∏i=1npeimod2isim(x) = \prod\limits_{i=1}^np_i^{e_i mod\;2}那么其实一个数对(x,y)(x,y)能满足他们的乘积原创 2016-05-09 17:54:56 · 573 阅读 · 0 评论 -
Zoj 3940 Modulo Query
这个题在场外做同步的时候想到了几乎标程的写法,但是因为不会证明复杂度是nlog(n)log(M)并且以为是n^2的而没写感觉略可惜(其实就是自己太弱具体这题为什么这么写以及复杂度,丢个链接就跑#includeusing namespace std;map M;vector > ask;const int mod = 1e9+7;#define LL l原创 2016-04-25 17:39:19 · 700 阅读 · 0 评论 -
CodeForces 663E - Binary Table
给出一个n(n≤20)n(n \le 20)行m(m≤105)m(m\le 10^5)列的0101矩阵。每次操作可以将某一行取反或者将某一列取反。要求操作后的矩阵中的11的个数最少,求最小个数。因为行比较少,我们考虑状压。状压每一列的状态,stasta第ii位为11表示第ii行为11,为00表示第ii行为11用一个函数F(sta)F(sta)表示状态为stasta的列的数量考虑状压我们操作了哪些行,原创 2016-11-18 20:20:22 · 1430 阅读 · 1 评论