
数论
文章平均质量分 50
hhuhao
这个作者很懒,什么都没留下…
展开
-
Luogu P1876开灯[数论]
先给出一个结论: 对于每个输出的答案,都是完全平方数。 证明: 除了平方数,其它每个数的任意因子都有另一因子与之对应。原创 2017-03-18 10:25:24 · 615 阅读 · 0 评论 -
LuoguP3938斐波那契
这是一道好题。首先,我们先将兔子分组。⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪1234,56,7,89,10,11,12,13\begin{cases}1 \\ 2 \\ 3 \\ 4,5 \\ 6,7,8 \\ 9,10,11,12,13\end{cases}就是按出生时间分组,记ri,jr_{i,j}表示第ii月第jj只出生的兔子,fkf_k表示第kk只兔子的父亲,febi={1febi−1+febi原创 2017-11-04 16:32:47 · 337 阅读 · 0 评论 -
Luogu3927
就是一个十分简单的数论题。来自LuoguNOIP模拟赛TG首先,我们设pp为质数,q,kq,k为正整数,fi,jf_{i,j}表示i!(j)i!_{(j)}末尾的00的个数(a(b)a_{(b)}表示aa转为bb进制后的数)可以推知fq,p=∑logq,pi=1(qpi−qpi+1)×i=∑logq,pi=1qpif_{q,p}=\sum_{i=1}^{log_{q,p}}(\dfrac{q}{p^原创 2017-11-04 14:54:32 · 246 阅读 · 0 评论 -
LuoguP1820 寻找AP数
设p1,p2,p3⋯p_1,p_2,p_3\cdots为从小到大的素数集合,k1,k2,k3⋯k_1,k_2,k_3\cdots为它们的指数,APAP数有:∀i,ki>ki+1\forall i,k_i>k_{i+1}所以根据这个性质枚举,还有就是找在指数一样多(计算公式为∏(ki+1)\prod (k_i+1))的情况下,要求最小的!!!long long z[20]={2,3,5,7,11,13原创 2017-08-21 15:40:42 · 513 阅读 · 0 评论 -
LuoguP1338 末日的传说
这应该是比较容易的一道数论题了。 枚举一些: 发现一个大事情:[1,6]+1=[7,12][1,6]+1=[7,12] 还有更多:[1,2]+1=[3,4]=[5,6]−1⋯[1,2]+1=[3,4]=[5,6]-1\cdots 于是发现:aka_k的贡献为:k−1−∑ki=1[ai<ak]k-1-\sum_{i=1}^k[a_i<a_k] 于是,稍微变以下再模拟一下。。long lo原创 2017-08-19 14:50:58 · 398 阅读 · 0 评论 -
NOIP2014 解方程
30’0<n≤2,|ai|≤100,an≠0,m<1000<n \le 2,|ai| \le 100,an \not=0,m<100 显然n∈{1,2}n\in\{1,2\} 直接求根+判断:n=1n=1:a0+a1x=0a_0+a_1x=0 x=−a0a1x=- \dfrac{a_0}{a_1}n=2n=2 :a0+a1x+a2x2=0a_0+a_1x+a_2x^2=0 x=−a1±a21原创 2017-07-31 15:44:45 · 283 阅读 · 0 评论 -
LuoguP2397 yyy loves Maths VI
这题真的水比赛结束后将所有c/c++的程序的内存调为2.2mb后重测。 歧视c/c++有木有 说一下: sort可以过 不过正解比sort更简单: 说几个思路: 我们假设总个数为nn,众数个数为mm,概率为PP1.随机输出P=mn>m2m=12P=\dfrac m n>\dfrac m{2m}=\dfrac12 P>12P>\dfrac122.选点找众数2.2MB≈2306827B2.原创 2017-07-13 14:14:26 · 223 阅读 · 0 评论 -
LuoguP2759奇怪的函数
先来推一下: ∵log10xx>n−2∵log_{10}x^x>n-2 ∴x∗log10x>n−2∴x*log_{10}x>n-2 ∵x,log10x∵x,log_{10}x都是单调递增的 ∴x∗log10x∴x*log_{10}x是单调递增的原创 2017-05-06 10:02:34 · 369 阅读 · 0 评论 -
Luogu P2755 洗牌问题[数论]
这道题,坑太大。。。 首先,说一下思路。 对于任意位置x 那么: 2x (x<=n) 2(x-n)-1=2x-2n-1=2x%(2n-1) (x>n)自己手推一下即可得出。 那么直接套思路,得出2ansmod(2n+1)=12^{ans} mod (2n+1)=1 注意用do-while,不能用while原创 2017-03-18 14:20:42 · 492 阅读 · 0 评论 -
LuoguP3908
求1 xor 2 xor… xor n1\ xor\ 2\ xor\dots\ xor\ n按位计算:第一位特别点计算方法:(n&1) xor ((n>>1)&1)(n\&1)\ xor\ ((n>>1)\&1)每四个数异或和末尾为00然后就可以得出末二位值相等时才得出一后面的位数从高到低算我们可以发现xor_sum1..2k−1=0xor\_sum_{1..2^k-1}=0然后我们就根据这个原创 2017-11-05 11:58:37 · 224 阅读 · 0 评论