洛古 P2568 莫比乌斯+暴力】的更多相关文章

#include<bits/stdc++.h> #define LL long long using namespace std; ; bool vis[maxn]; int prime[maxn]; int mu[maxn]; int sum[maxn]; ; void get_mu()// mo bi su si han shu { mu[]=; vis[]=; ;i<maxn;i++) { ;} ;j<=cnt&& prime[j]*i<maxn;j++…
P2568 GCD 题目描述 给定整数N,求1<=x,y<=N且Gcd(x,y)为素数的数对(x,y)有多少对. 输入输出格式 输入格式: 一个整数N 输出格式: 答案 输入输出样例 输入样例#1: 4 输出样例#1: 4 说明 对于样例\((2,2),(2,4),(3,3),(4,2)\) \(1<=N<=10^7\) 来源:bzoj2818 本题数据为洛谷自造数据,使用CYaRon耗时5分钟完成数据制作. Solution 方法1:莫比乌斯反演,方法和yy的gcd一样 方法2:…
题意:$\sum_{i=1}^{n}\sum_{j=1}^{n}[gcd(i,j)\epsilon prime]$. 对于这类题一般就是枚举gcd,可得: =$\sum_{d\epsilon prime}\sum_{i=1}^{n}\sum_{j=1}^{n}[gcd(i,j)==d]$ =$\sum_{d\epsilon prime}\sum_{i=1}^{{\lfloor \frac{n}{d}\rfloor}}\mu(i){\lfloor \frac{n}{id}\rfloor}{\lfl…
传送门 这题和p2257一样……不过是n和m相同而已…… 所以虽然正解是欧拉函数然而直接改改就行了所以懒得再码一遍了2333 不过这题卡空间,记得mu开short,vis开bool //minamoto #include<cstdio> #define ll long long ; ],n,m;short mu[N];bool vis[N];ll sum[N],ans; void init(int n){ mu[]=; ;i<=n;++i){ ,p[++m]=i; ;j<=m&am…
https://www.luogu.org/problemnew/show/P2398 $原式=\sum_{k=1}^n(k\sum_{i=1}^n\sum_{j=1}^n[(i,j)=k])$ 方法1: 发现暴力枚举k,就变成这道模板题 复杂度O(nlogn) #pragma GCC optimize("Ofast") #include<cstdio> #include<algorithm> #include<cstring> #include&l…
https://www.luogu.org/problemnew/show/P2568 统计n以内gcd为质数的数的个数. 求 \(\sum\limits_p \sum\limits_{i=1}^{n}\sum\limits_{j=1}^{n} [gcd(i,j)==p]\) 一开始还以为要莫比乌斯反演. 推了半天不知道怎么求,遂看题解: $\sum\limits_p \sum\limits_{i=1}^{n}\sum\limits_{j=1}^{n} [gcd(i,j)==p] =\sum\l…
P1373 小a和uim之大逃离 题目提供者lzn 标签 动态规划 洛谷原创 难度 提高+/省选- 题目背景 小a和uim来到雨林中探险.突然一阵北风吹来,一片乌云从北部天边急涌过来,还伴着一道道闪电,一阵阵雷声.刹那间,狂风大作,乌云布满了天空,紧接着豆大的雨点从天空中打落下来,只见前方出现了一个披头散发.青面獠牙的怪物,低沉着声音说:"呵呵,既然你们来到这,只能活下来一个!".小a和他的小伙伴都惊呆了! 题目描述 瞬间,地面上出现了一个n*m的巨幅矩阵,矩阵的每个格子上有一坨0~k…
题目链接:传送门 题目: 题目描述 给定整数N,求1<=x,y<=N且Gcd(x,y)为素数的数对(x,y)有多少对. 输入输出格式 输入格式: 一个整数N 输出格式: 答案 输入输出样例 输入样例#: 复制 输出样例#: 复制 说明 对于样例(,),(,),(,),(,) <=N<=^ 来源:bzoj2818 本题数据为洛谷自造数据,使用CYaRon耗时5分钟完成数据制作. 看了好几天数论了,忍不住出来切切水题. 思路: 若已知x,y,因为gcd(x, y)为素数,令p = gc…
题目大意:给你$n(1\leqslant n\leqslant 10^7)$,求$\displaystyle\sum\limits_{x=1}^n\displaystyle\sum\limits_{y=1}^n[(x,y)\in \rm prime]$($(a,b)$为$a,b$的$gcd$) 题解:可以用莫比乌斯反演来做,同这道题,只需要把$m$改成$n$就行了 卡点:无 C++ Code:(莫比乌斯反演) #include <cstdio> #include <cstring>…
https://www.luogu.org/problemnew/show/P2568#sub 最喜欢题面简洁的题目了. 本题为求两个数的gcd是素数,那么我们将x和y拆一下, 假设p为$gcd(x,y)$,且p是一个素数,$x=a \times p , y = b \times p $. 然而要满足p的条件的话,a和b一定是互质的,满足$0 \le a,b \le \frac{n}{p} $ 这样的话我们可以枚举这个质数p,将小于$\frac{n}{p}$的数,以及与它互质的数加起来. 互质的…
[我是传送门] 这是一道很经典的深搜与回溯(难度一般) 可是就这个"普及-" 让本蒟蒻做了一晚上+半个上午(实际我不会深搜回溯,全靠框架+去重); 下面让我分享下本蒟蒻的(全排列+暴搜去重) #include<bits/stdc++.h> using namespace std; int n,r,ttt;//n是总数,r是选的数,ttt是答案 ],b2[],c[][];//a用来储存排列的编号,b2用来储存输入的数,c用来去重(储存符合条件的数组的编号) ];//用来判断是…
#include<bits/stdc++.h> #define LL long long using namespace std; ; bool vis[maxn]; int prime[maxn]; int mu[maxn]; int sum1[maxn]; int sum2[maxn]; ; void get_mu()// mo bi su si han shu { mu[]=; vis[]=; ;i<maxn;i++) // prime = 0; other = 1; { ;} ;…
题目大意:给定整数 \(N\),求\(1\le x,y\le N\) 且 \(gcd(x,y)\) 为素数的数对 \((x,y)\) 有多少对. 题解: \[ \sum_{p \in \text { prime }} \sum_{i=1}^{n} \sum_{j=1}^{n}[\operatorname{gcd}(i, j)=p] \] \[ \sum_{p \in \text { prime }} \sum_{i=1}^{\left\lfloor\frac{n}{p}\right\rfloor…
#include<bits/stdc++.h> #define int long long using namespace std; ; int a[maxn]; int quick(int a,int n,int p) { ; while(n) { ) ans=ans%p*a%p; a=a%p*a%p; n>>=; } return ans%p; } int C(int x,int y,int p) // C(x,y); { ; a[]=; ;i<=p;i++) a[i]=…
https://www.luogu.org/problem/show?pid=1433 题目描述 房间里放着n块奶酪.一只小老鼠要把它们都吃掉,问至少要跑多少距离?老鼠一开始在(0,0)点处. 输入输出格式 输入格式: 第一行一个数n (n<=15) 接下来每行2个实数,表示第i块奶酪的坐标. 两点之间的距离公式=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)) 输出格式: 一个数,表示要跑的最少距离,保留2位小数. 输入输出样例 输入样例#1: 4 1 1 1 -1…
题目链接 这道题和俄罗斯方块很像 很明显,我们可以看出这是一个dfs,但是,我们需要几条剪枝: 1.如果只剩下1个或2个同样颜色的方块,那么直接退出 2.相同的块不用交换 3.注意优先性,优先左边换右边 但是这题就这么样就完了吗 显然,并没有这么简单:剪枝清楚了,你确定就能写出来吗(这是我写过最长的dfs) 接下来讲一下我的程序架构: init函数:输入,存储数据 fall函数:模拟方块下落 printans函数:输出答案 clear函数:清除棋盘 isempty函数:判断是否为空 judge函…
原题链接 庆祝一下:数论紫题达成成就! 第一道数论紫题.写个题解庆祝一下吧. 简要题意:求 \[\sum_{i=1}^n \sum_{j=1}^n [gcd(i,j)==p] \] 其中 \(p\) 为素数. 注: $ [A] = 0 $ 当且仅当 \(A\) 不成立. $ [A] = 1 $ 当且仅当 \(A\) 成立. 这不就是单位函数的定义嘛. 先抛个定义: \[f_n = \sum_{i=1}^n [\gcd(i,n) == 1] \] 即 \(\leq n\) 且 与 \(n\) 互质…
题面 Bzoj 洛谷 题解 最暴力的方法是直接判两个点之间的路径最小值是否\(\geq k\),用\(Dijkstra\)可以做到该算法最快效率,但是空间复杂度始终是\(O(n^2)\)的,会\(MLE\),其实仔细观察一下,会发现对于一个满足某个\(k\)的路径\(dis\),它一定会满足\(\forall k'\leq k\),同时,对于任意一条长度大于\(|dis|\)的路径,它也满足又满足这些\(k\),甚至更多的\(k'\),于是我们从这个性质入手. 具体来说,就是将询问离线化,按照\…
题面 洛谷 题解 考虑暴力,对于询问中的一段区间\([l,r]\),我们先将其中的数升序排序,假设当前可以表示出\([1,k]\)目前处理\(a_i\),假如\(a_i>k+1\),则答案就是\(k+1\),否则,调整右界到\(k+a_i\). 考虑如何优化,还是扫到了\([1,k]\),假设\(ans=k+1\),如果所有小于等于\(ans\)的数的和\(sum\)起来大于等于\(ans\),则一定可以将\(k\)更新成\(sum\).否则直接输出就好了. 以上这个过程很明显可以用主席树维护,…
原题链接 庆祝!第二道数论紫题. 推式子真是太有趣了! \[\prod_{i=1}^n \prod_{j=1}^n \frac{\operatorname{lcm}(i,j)}{\gcd(i,j)} \] \[= \prod_{i=1}^n \prod_{j=1}^n \frac{i \times j}{(\gcd(i,j))^2} \] \[= ( \prod_{i=1}^n \prod_{j=1}^n i \times j ) \times ( \prod_{i=1}^n \prod_{j=…
洛古题面 题意:给定一棵树,割断每一条边都有代价,每次询问会给定一些点,求用最少的代价使所有给定点都和1号节点不连通 暴力\(DP\) 我们先考虑暴力怎么做 设\(dp[u]\)为以\(u\)为根的子树中,割掉所有给定点的最小代价 转移的时候要分两种情况: 1.若u不是给定点,则\(dp[u] = min(u\)到根节点的所有边的最小边长,割掉所有含有给定点的子树) \(ps:\)上述给定子树不一定与u直接相连 2.若u是给定点,显然他必须与1号点分离,所以\(dp[u]=u\)到根节点的所有边…
Day-2~Day0 考前抱佛脚,赶紧刷刷各种模板 Day 1 在开考之前打好了拍子模板,然后试题密码就发下来了(这是我前面的神仙打了\(100\)多行\(emacs\)的配置\(QAQ\)). 先按照惯例,看完了\(3\)道题,发现都不会做,于是我就猜\(T1\)是道结论题,但是想了\(10\)分钟没什么思路,就开始看\(T2\). 重新看了\(T2\)以后发现似乎可用完全背包做,然后就\(naive\)的认为今年\(T1T2\)交换了. 把\(T2\)写完后就重新看\(T1\),发现似乎是一…
题目链接   洛古   https://www.luogu.org/problemnew/show/P1494 大概说下自己的理解 先来概率的计算公式   ∑C(2,f(i))  /  C(2,r−l+1)   f(i)是区间每种颜色袜子的数目 最后推出来的式子是 ∑f(i)*f(i)-(r−l+1)/ C(2,r−l+1)  (我也不知道怎么推的.......别人给的); 单纯的暴力就不说了  o(n*n*n); 说下和  o(n*n) 的; 莫队是 o(n*sqrt(n)); o(n*n)的…
LINUX命令总结 标签: LINUX命令总结 2014-01-27 15:54 41039人阅读 评论(1) 收藏 举报  分类: linux(1)  版权声明:本文为博主原创文章,未经博主允许不得转载. 1. 永久更改ip ifconfig eth0 新ip 然后编辑/etc/sysconfig/network-scripts/ifcfg-eth0,修改ip2.从Linux上远程显示Windows桌面安装rdesktop包3. 手动添加默认网关 以root用户,执行: route add d…
洛古 一句话题意:给定一张图,每两点之间有一条有向边或无向边,把所有无向边定向,使图中三元环个数尽量多 因为原图是一个完全图,假设图中任意三点都能构成三元环,那么途中三元环的个数为:\(\binom{n}{3}\). 那么如果一个三元组不是三元环,那么有一个点的出度为2. 我们假设一个点的出度为d,那么对于这个点,三元环会减少\(\frac{d (d-1)}{2}\) 所以三元环的数量为:\(\binom{n}{3}- \sum_{i=1}^n\binom{d[i]}{2}=\binom{n}{…
洛古题面 对于操作一,用快速幂算即可 代码如下 int quickpow(int a,int b,int k) { int r=1; while(b) { if(b&1) r=(r*a)%k; b>>=1; a=(a*a)%k; } return r; } 对于操作二,用拓展欧几里得算法即可. 已知\(a,b,n\),求\(x\)的最小值,使得\(a*x≡b(mod p)\),可以转化为:\(a*x+p*y=b\),则要求\(gcd(a,n)|b\),否则无解.不定方程的求法可以参照这…
Day -1 2019.1.2 初步计划: 0x60 图论 std 洛谷提高剩余练习 NOIP2018遗留题解 洛谷省选基础练习 数学: 1.数论 2.组合数学(练习:莫比乌斯反演) 3.概率(练习:概率期望) 4.计算几何 5.函数(CF1096G题解) 洛谷省选高级数据结构练习: 1.单调队列 2.点分治 3.主席树 4.平衡树 5.树链剖分 6.动态树 7.树套树 8.莫队算法 9.分块 Day 0 2019.1.3 复习最短路+最小生成树 std×10 明天计划:树的直径与最近共同祖先+…
Description H 国是一个热爱写代码的国家,那里的人们很小去学校学习写各种各样的数据结构.伸展树(splay)是一种数据 结构,因为代码好写,功能多,效率高,掌握这种数据结构成为了 H 国的必修技能.有一天,邪恶的“卡”带着 他的邪恶的“常数”来企图毁灭 H 国.“卡”给 H 国的人洗脑说,splay 如果写成单旋的,将会更快.“卡”称 “单旋 splay”为“spaly”.虽说他说的很没道理,但还是有 H 国的人相信了,小 H 就是其中之一,spaly 马 上成为他的信仰. 而 H…
[BZOJ4520]K远点对(KD-Tree) 题面 BZOJ 洛谷 题解 考虑暴力. 维护一个大小为\(K\)的小根堆,然后每次把两个点之间的距离插进去,然后弹出堆顶 这样子可以用\(KD-Tree\)优化: 如果当前平面内可以产生的最远距离小于堆顶,则证明这个平面内的点无法产生贡献 就不需要计算了 #include<iostream> #include<cstdio> #include<cstdlib> #include<cstring> #includ…
题目 BZOJ 洛谷 做法 很巧妙的题,注意每种颜色只有两个 消除一种颜色,其实就是看中间有多少个没有被消除的块,这种动态距离问题显然能用树状数组解决 洛谷输出方案,暴力往下爬就行 My complete code #include<bits/stdc++.h> using namespace std; typedef int LL; const LL maxn=1e6+9; LL n,top,ans,xiaochu; LL pre[maxn],tree[maxn],sta[maxn]; in…