题目链接 :https://agc038.contest.atcoder.jp/tasks/agc038_c?lang=en 题意 :给定一个数组,求这个数组中所有数对的LCM之和。 分析 :网上看到了很多反演的解法,但是本题也可以通过埃氏筛在$O(nlnlnn)$的复杂度下解决。大致做法就是根据$ ...
分类:
其他好文 时间:
2019-10-12 01:35:43
阅读次数:
167
T1: 枚举$m$的个数,$O(1)$算出有几个$x$符合条件。 这样不仅效率低下,还会算重。 把$m$一定时的所有结果拍在数轴上发现仅当$ym>=lcm(n,m)$时会算重。 枚举到$lcm$即可。 时间复杂度$O(n)$。 T2: 直接统计复杂度太高,考虑换一个思路。 枚举$gcd$,将所有边权 ...
分类:
其他好文 时间:
2019-10-11 18:14:49
阅读次数:
68
事情是这样的,我是一个萌新,然后萌新初学数论。qvq 本篇文章的难度大概是gcd~莫比乌斯反演,说不定我还会写一点组合计数,容斥原理,线性代数的知识,当然,我估计我不会,因为咕咕。 文章以数学证明为主,代码都好理解,所有的运算以计算机运算法则为准。qvq(人家的码风才不毒瘤) GCD&LCM 即最大 ...
分类:
其他好文 时间:
2019-10-09 15:21:28
阅读次数:
147
又没推出来…… 不过通过这道题还是学到好多东西呢,比如积性函数,线筛什么的。 $\sum \limits _{i=1}^{n} \sum \limits _{j=1}^{m} lcm(i,j)$ =$\sum \limits _{d=1}^{min(n,m)} \sum \limits _{i=1} ...
分类:
其他好文 时间:
2019-10-05 18:48:45
阅读次数:
79
题目: 分析:(终于在yyr大佬的援助下弄懂了这道题。。。) 首先lcm>n的限制太少,不好直接处理,转换成求补集,也就是lcm<=n,最后用n^n-ans即可。 考虑怎么求lcm<=n: #include<bits/stdc++.h> using namespace std; #define ll ...
分类:
其他好文 时间:
2019-10-04 22:53:58
阅读次数:
106
所以我刚学反演还没学反演就要做这么一道神仙题…… 首先大于n不好求,补集转化。 $ans=n*n-\sum \limits _{i=1}^{n} \sum \limits _{j=1}^{n} \left [ lcm(i,j)\leqslant n\right ] $ 那么我们要求: $\sum \ ...
分类:
其他好文 时间:
2019-10-04 22:48:05
阅读次数:
115
题目描述 太阳神拉很喜欢最小公倍数,有一天他想到了一个关于最小公倍数的题目。求满足如下条件的数对$(a,b)$对数:$a,b$均为正整数且$a,b\leqslant n$而$lcm(a,b)>n$。其中的$lcm$当然表示最小公倍数。答案对$1,000,000,007$取模 输入格式 第一行一个正整 ...
分类:
其他好文 时间:
2019-10-04 18:45:50
阅读次数:
108
数据范围是1e10的,打表找了半天规律发现没用…… 那就莫比乌斯反演呗 题目求: $$\sum_{i=1}^{n}\sum_{j=1}^{n}[lcm(i,j) n]$$ 但是大于的太多了,那我们就反过来求,最后用总的来减 也就是求: $$\sum_{i=1}^{n}\sum_{j=1}^{n}[l ...
分类:
其他好文 时间:
2019-10-03 16:03:21
阅读次数:
85
1442: 蚂蚁 题目描述 n只蚂蚁以每秒1cm的速度在长为Lcm的竿子上爬行。当蚂蚁爬到竿子的端点时就会掉落。由于竿子太细,两只 蚂蚁相遇时,它们不能交错通过,只能各自反向爬回去。对于每只蚂蚁,我们知道它距离竿子左端的距离xi, 但不知道它当前的朝向。请计算各种情况当中,所有蚂蚁落下竿子所需的最短 ...
分类:
其他好文 时间:
2019-10-02 00:55:51
阅读次数:
215
题目描述: n只蚂蚁以每秒1cm的速度在长为Lcm的竿子上爬行。当蚂蚁爬到竿子的端点时就会掉落。由于竿子太细,两只 蚂蚁相遇时,它们不能交错通过,只能各自反向爬回去。对于每只蚂蚁,我们知道它距离竿子左端的距离xi, 但不知道它当前的朝向。请计算各种情况当中,所有蚂蚁落下竿子所需的最短时间和最长时间。 ...
分类:
其他好文 时间:
2019-10-01 22:41:49
阅读次数:
114