上一页 1 ··· 54 55 56 57 58 59 60 61 62 ··· 109 下一页

2019年7月7日

dfs版容斥原理+剪枝——bzoj1853

摘要: 学了一种爆搜版+剪枝的容斥方法,即类似数位dp时按位进行容斥,同时需要在搜索过程中进行剪枝 阅读全文

posted @ 2019-07-07 13:20 zsben 阅读(266) 评论(1) 推荐(0) 编辑

2019年7月6日

莫比乌斯反演+二维前缀和——hdu4746二刷

摘要: 第二次做这题,求前缀和的时候还是卡住了 fg函数的反演是可以直接用莫比乌斯基本代换式来代换的 阅读全文

posted @ 2019-07-06 19:34 zsben 阅读(191) 评论(0) 推荐(0) 编辑

2019年7月4日

取对数求阶乘位数——lightoj1045

摘要: /* 求 n! 在base进制下的位数 取对数,用换底公式,预处理对数前缀和 b^x = n! x = log_b(n!) = log_10(n!)/log_10(b) 对x向上取整即可 */ #include using namespace std; #define maxn 1000005 double sum[maxn]; void init(){ for(int i=... 阅读全文

posted @ 2019-07-04 11:43 zsben 阅读(549) 评论(0) 推荐(0) 编辑

阶乘质因子分解——lightoj1035

摘要: #include using namespace std; #define ll long long #define maxn 200 int primes[maxn],m; bool vis[maxn]; void init(){ for(int i=2;i=maxn)break; vis[i*primes[j]]=1; if(i%p... 阅读全文

posted @ 2019-07-04 10:37 zsben 阅读(219) 评论(0) 推荐(0) 编辑

基本算数定理快速求约数个数——lightoj1208

摘要: #include using namespace std; #define ll long long #define maxn 1000005 bool vis[maxn]; int m,primes[maxn]; void init(){ for(int i=2;i=maxn)break; vis[primes[j]*i]=1; if(... 阅读全文

posted @ 2019-07-04 10:00 zsben 阅读(469) 评论(0) 推荐(0) 编辑

JAVA大数——lightoj1024

摘要: 要用 System.gc() 清理内存 类必须命名成Main,一些大整数的操作 阅读全文

posted @ 2019-07-04 09:33 zsben 阅读(171) 评论(0) 推荐(0) 编辑

2019年7月3日

容斥原理解一般不定方程——cf451E经典题

摘要: /* 给定n个盒子,第i个盒子有ai朵花,现在从中选取m朵花,问选取方案数 用容斥定理解决 m=x1+x2+..+xn C(m+n-1,n-1)+sum{ (-1)^p * C(m+n-1-(1+n1)-(1+np),n-1) } */ #include using namespace std; #define ll long long #define mod 1000000007... 阅读全文

posted @ 2019-07-03 23:30 zsben 阅读(345) 评论(0) 推荐(0) 编辑

2019年7月1日

树上莫比乌斯反演+分层图并查集——cf990G

摘要: /* 树上莫比乌斯反演 求树上 满足 d|gcd(au,av) gcd(au,av)的对数f(d) 如何求: 建立200000层新图,即对于每个数建立一个新图 在加边时,给gcd(au,av)的约数层的图的uv加边 f[i]表示第i层的满足条件 i | gcd(a[u],a[v]) 的对数,那么求一遍并查集,在合并过程中更新f[i]即可, 同时要注... 阅读全文

posted @ 2019-07-01 22:55 zsben 阅读(328) 评论(0) 推荐(0) 编辑

构造流量图+乱搞——cf990F

摘要: /* 结论1:有解的充要条件是所有点权之和为0 结论2:删掉环上的一条边,只要将这个环上的其余边都减去这条边的边权,那么这个图仍是等价的 从原图网络中构造出一棵带权值的树即可,其他边权都设置为0 通过dfs建立一棵搜索树 要注意处理边的方向 */ #include using namespace std; #define maxn 200005 struct Edge{int to,nxt,w... 阅读全文

posted @ 2019-07-01 19:15 zsben 阅读(268) 评论(0) 推荐(0) 编辑

树形dp经典换根法——cf1187E

摘要: 假设以u为根时结果是tot,现在转换到了以u的儿子v为根,那么结果变成了tot-size[v]+(sizetot-size[v]) 根据这个转移方程,先求出以1为根的tot,然后dfs一次转移即可 阅读全文

posted @ 2019-07-01 16:50 zsben 阅读(402) 评论(0) 推荐(0) 编辑

上一页 1 ··· 54 55 56 57 58 59 60 61 62 ··· 109 下一页

导航