08 2019 档案
摘要:P2290 [HNOI2004]树的计数prufer序列模板题
阅读全文
摘要:P1404 平均数二分答案,问题在于怎么O(n)check,把每个数都-mid,然后求前缀和,有点像最大子段和,精度问题的话就都乘1000
阅读全文
摘要:P1627 [CQOI2009]中位数对于只考虑相对大小的情况,考虑离散化,或者转化成1,0,-1,1表示比它打,0表示相等,-1表示比它小这个题就是前缀和统计一下答案
阅读全文
摘要:https://www.luogu.org/problem/P3806
阅读全文
摘要:#include #include #include #include #include #include #define inf 2147483647 #define N 10100 #define p(a) putchar(a) #define For(i,a,b) for(register long long i=a;i'9'){if(c=='-')y=-1;c=getchar...
阅读全文
摘要:#include <iostream> #include <cstdio> #include <queue> #include <algorithm> #include <cmath> #include <cstring> #define inf 2147483647 #define N 2000010 #define mod 1000000007 #define p(a) putchar(a)
阅读全文
摘要:http://codeforces.com/problemset/problem/803/F
阅读全文
摘要:P2261 [CQOI2007]余数求和 做法就是分块k%i=k-(k/i)*i;对(k/i)分块,一个细节问题就是n,k谁大谁小的问题
阅读全文
摘要:#include <iostream> #include <cstdio> #include <queue> #include <algorithm> #include <cmath> #include <cstring> #define inf 2147483647 #define N 1000010 #define p(a) putchar(a) #define For(i,a,b) for(
阅读全文
摘要:a^a^a^a是从前向后算,也就是a^(a^3)
阅读全文
摘要:C(n,m)的奇偶性判断奇数:当且仅当(n&m)==m偶数:否则为偶数证明:根据卢卡斯定理,c(n,m)%2=c(n%2,m%2)*c((n>>1),(m>>1))%2;c(0,0)=1c(0,1)=0c(1,0)=1c(1,1)=1也就是只有m当前位为1的时候,n的当前位也必须为1
阅读全文
摘要:P1820 寻找AP数两个性质,分解质因数后,连续,且指数递减,dfs就完了
阅读全文
摘要:P5390 [Cnoi2019]数学作业求子集异或和的和拆成2进制,假设有x个数这一位为1,剩下n-x个数对答案没有贡献,对于这一位而言,对答案的贡献就是,x个数选奇数个数的方案数*2^(n-x).由二项式定理,(1-1)^x=sigema(0,x) (-1)^i*(x,i)=0选奇数个和选偶数个方
阅读全文
摘要:Swimming Balls https://vjudge.net/contest/318752#problem/J如果直接算,各种球的情况都不清楚,因为放一个球之后,水位的变化也会影响之前放入的球,不如,二分最终的水位高度,这样每个球的贡献就有了
阅读全文
摘要:贪心+二分答案 二分最终答案长度 主要问题在check上 ~~我代码写得巨丑,大家还是不要看我的代码了~~ 1:当mid大于1的时候,贪心策略是这样的: 当前连续的长度大于mid时,我不反转最后一个,我也不管它具体反转哪一个,我直接跳过这mid+1个,也就是开始处理i+1。举个例子,mid=3,k=
阅读全文
摘要:sort的cmp函数只能写return a>b;或者return a<b;
阅读全文
摘要:P3879 [TJOI2010]阅读理解做法1:map+vector(直接看代码,不解释)做法2:trie树,在每个单词的末尾标记上是属于哪个文章的就可以了
阅读全文
摘要:P3480 [POI2009]KAM-Pebbles比如第一个样例 原:0 2 2差: 2 0 0如果把中间的2拿掉一个,就会变成原:0 1 2差: 1 1 0就可以把差看成阶梯nim细节:最终要移到的那个地方是0号阶梯
阅读全文
摘要:P2575 高手过招把每一行看成一个阶梯nim,每一个空格或者连续的一块算一个阶梯,这个划分模拟一下就会发现确实满足阶梯nim的条件
阅读全文
摘要:阶梯nim游戏有n个阶梯,0~n-1,每个阶梯上有一堆石子,编号为i的阶梯上的石子只能移动到i-1上去,每次至少移动一个,最后所有的石子都移动到0号阶梯上了。结论:奇数阶梯上的石子异或起来,要是0,就先手必败,否则先手必胜
阅读全文
摘要:4的倍数不行,之间的数都可以到4的倍数,而6的倍数不能到4的倍数
阅读全文
摘要:6的倍数不行,之间的数都可以到6的倍数,而6的倍数不能到6的倍数
阅读全文
摘要:P1488 肥猫的游戏https://www.luogu.org/problem/P1488 博弈论一个三角形,只有三种情况:1邻接,2邻接,3邻接主要是2邻接的情况比较麻烦边<0,n-1>需要特判一下
阅读全文
摘要:#include <iostream> #include <cstdio> #include <queue> #include <algorithm> #include <cmath> #include <cstring> #define inf 2147483647 #define N 10010 #define p(a) putchar(a) #define For(i,a,b) for(in
阅读全文
摘要:https://www.luogu.org/problem/P4777
阅读全文
摘要:中国剩余定理模数不互质的情况主要有一个ax+by==k*gcd(a,b),注意一下倍数情况和最小 https://vjudge.net/problem/POJ-2891
阅读全文
摘要:http://poj.org/problem?id=1006
阅读全文
摘要:P4071 [SDOI2016]排列计数C(n,m)*f[n-m],f函数为错排数,特判n==m的时候,ans=1
阅读全文
摘要:#include #include #include #include #include #include #define inf 2147483647 #define N 1000010 #define p(a) putchar(a) #define For(i,a,b) for(long long i=a;i'9'){if(c=='-')y=-1;c=getchar();} ...
阅读全文
摘要:P2054 [AHOI2005]洗牌https://www.luogu.org/problem/P2054手推一下小数据,会发现,当前编号是x的拍,再进行m次洗牌之后的位置为(2^m)*x%(n+1);所以我们要解这个方程组--> (2^m)*x%(n+1)==lx=l*((2^m)^-1)%(n+
阅读全文
摘要:贝祖定理贝祖定理可以推广到n个,n>=2ax+by+cz+...=kif(k%gcd(a,b,c,...)==0) 该式子有整数解else 没有整数解
阅读全文
摘要:https://vjudge.net/problem/CodeForces-510D题目可以转化为花最小代价选一些数,然后这些数可以经过加减运算得到1或-1,不然1你就凑不出来,一旦凑出来1,其他的都有了。由贝祖定理,ax+by=gcd(a,b)=1,贝祖定理能推广到n个,ax+by+cz+…=gc
阅读全文
摘要:#include #include #include #include #include #include #include #define inf 2147483647 #define N 1000010 #define p(a) putchar(a) #define For(i,a,b) for(int i=a;im; void in(int &x){ int y=1;...
阅读全文
摘要:Gym - 100941G https://vjudge.net/problem/Gym-100941G比赛的时候真的是不会啊,那就没办法了。结论:每x周减一次头发,第k次剪发时的头发长度为x^k。x^k=L,x=L^(1/k)ans=kx=k*L^(1/k)
阅读全文
摘要:https://vjudge.net/contest/317000#problem/F #include <iostream> #include <cstdio> #include <queue> #include <algorithm> #include <cmath> #include <cst
阅读全文
摘要:主函数由int main()改成signed main() 好处:把int改成long long 的时候不用单独把它改成int了,懂的人都懂(滑稽
阅读全文
摘要:#include <iostream> #include <cstdio> #include <queue> #include <algorithm> #include <cmath> #include <cstring> #define inf 2147483647 #define P 99824
阅读全文
摘要:UVA - 11327https://vjudge.net/problem/28358/origin求欧拉函数的前缀和,二分查找到那个位置,再从它开始暴力gcd找
阅读全文
摘要:#include #include #include #include #include #include #define inf 2147483647 #define N 1000010 #define p(a) putchar(a) #define For(i,a,b) for(long long i=a;i'9'){if(c=='-')y=-1;c=getchar();} ...
阅读全文
摘要:https://www.luogu.org/problem/P1082
阅读全文
摘要:ZOJ2562https://vjudge.net/problem/11781/origin<=n的且因子数最多的那个数做法:同因子数取最小,dfs更新答案
阅读全文
摘要:https://vjudge.net/problem/UVALive-3722
阅读全文
摘要:https://vjudge.net/problem/CodeForces-27E 求因子个数为n的最小的数dfs枚举质因子的幂
阅读全文
摘要:SPOJ - LOCKERhttps://vjudge.net/problem/45908/origin暴力枚举2~102 23 34 2 25 2 36 3 37 2 2 38 2 3 39 3 3 3发现是在没有1的情况下,3尽可能的多,其他用2补。大于等于10的,可以由10以内的凑出来,就可以
阅读全文
摘要:https://vjudge.net/problem/SPOJ-LASTDIG 求最后一位,%10就完了 这个题居然要求代码小于等于700B
阅读全文
摘要:http://codeforces.com/problemset/problem/630/I 简单的排列组合,推式子技巧:举一个小样例,看着推,别抽象着推,容易错
阅读全文
摘要:http://codeforces.com/problemset/problem/630/I 简单的排列组合,推式子技巧:举一个小样例,看着推,别抽象着推,容易错
阅读全文
摘要:UVA - 11029难点是求前3位你看,一个数可以拆成,比如123456,可以拆成100000*1.23456,那我把小数部分求出来,再*100.0,再下取整就可以了。设x=log10(n^k),令整数部分为a,小数部分为b,比如log10(123456)=5.09151,那么a=5,b=0.09
阅读全文
摘要:https://vjudge.net/problem/19685/origin 费马小定理优化快速幂 因为加了费马小定理优化,小心2 2 2这种情况,会出现0 0 2,也就是0的0次方,实际答案为0
阅读全文
摘要:https://vjudge.net/problem/UVA-1230 费马小定理优化快速幂
阅读全文
摘要:n=int(input()) ans=0 for i in range(1,n+1): t=1 for j in range(1,i+1): t*=j; ans+=t; print(ans)
阅读全文
摘要:https://www.luogu.org/problem/P1080
阅读全文