数论
- Passerby ゛
这个作者很懒,什么都没留下…
展开
-
ZSTU月赛—Problem C: 素数空间(哥德巴赫猜想+欧拉筛法)
ZSTU月赛—Problem C: 素数空间(哥德巴赫猜想+欧拉筛法)Description一天,小明正在搬砖,他收集了n(n<=1e7)种砖,砖的编号1-n这个时候,他突然说了一句,召唤神龙,然后,他穿越到了一个时空,发现这里的东西都是由素数组成的,这里的砖也和素数有关,他的砖也和他一块过来了,只是发生了一些变化,编号为1的砖不见了,编号为素数的砖没有发生变化,编号为合数的砖变成了编号...原创 2018-11-06 23:15:31 · 493 阅读 · 0 评论 -
codeforces 893 E. Counting Arrays(组合数学)
http://codeforces.com/contest/893/problem/E题意:一个数组中有y个数字,数字的乘积为x 问能够构造多少这样的数组思路:首先将x质因子分解,那么相当于把每个质因子安排在y个位置上,有些位置可以为空,问有多少种放置方法。这就相当于把n个球,放在m个盒子里,允许为空一样。采用隔板法,结果为C(m+n-1,m-1) 相当于需要m-1个隔板将其分成m组,由于可...原创 2019-07-30 20:20:53 · 218 阅读 · 0 评论 -
codeforces 900 D. Unusual Sequences(记忆化搜索,组合数学,容斥)
http://codeforces.com/contest/900/problem/D题意:构造序列,gcd=x ,数字和为y,问能构造多少种不同的思路:首先要满足m%n==0,因为每个数字为x的倍数,那么和也应该为x的倍数考虑一开始有m/n个 n,考虑隔板法,将其分成2,3,4…m/n组,每组求和即为新的序列,隔板法可知 C(1,m/n-1)+C(2,m/n-1)+…即为2m/n-1,但在...原创 2019-07-29 22:49:31 · 78 阅读 · 0 评论 -
codeforces 627 A. XOR Equation(位运算,结论)
http://codeforces.com/contest/627/problem/A题意:两个数a,b a+b=s a xor b= x给出s,x 问有多少对a,b满足条件首先有个结论,(其实自己也能推出来,但自己太菜没想出来)拥有这个公式后,这道题变得简单了些,移项后求出a&b = (s - x) / 2,并且判断是否合法a ^ b 我们已经知道,那么只需要通过a&...原创 2019-07-29 20:37:15 · 180 阅读 · 0 评论 -
codeforces 997 B. Roman Digits(打表找规律)
http://codeforces.com/contest/997/problem/B题意:有四种数字1,5,10,50 选x个数字,问和不同的有多少种思路:看题目 没思路,打表找规律 (其实就是不会做,看看能不能猜结论)打表发现n=11,结果为292 此后每项加49,直接暴力求出前面后面公式输出答案#include<bits/stdc++.h>#define fi fi...原创 2019-07-29 20:21:16 · 128 阅读 · 0 评论 -
codeforces F. Topforces Strikes Back(数学+找规律)
http://codeforces.com/contest/1183/problem/F题意:给出n个数,选择最多三个数,要求相互之间不是因数,并且和最大,输出这个和思路:首先想到贪心,直接sort,先选最大的,然后剩下选符合条件并且最大的。然后看到第二个样例30 15 10 6 不符合贪心。然后想着直接打表观察一下符合三个因数和大于本身的数的规律。结果我傻逼的忘记判断条件因子是否符合要...原创 2019-07-04 10:34:54 · 396 阅读 · 0 评论 -
2116: 简简单单的数学题(快速幂||爆longlong处理)
懒得打字的yzj丢了道简单的数学题。 ⌊a⌋ +⌈b⌉+c(四舍五入)+d^n; (d^n表示d的n次方)。 解释一下 就是a向下取整 b向上取整 c四舍五入的和加上d的n次方输入第一行3个数 a,b,c。0<a,b,c<1e18,第二行一个数q 表示q次查询 q<=2e5每次查询2个整数 d,n。 0<d,n<1e18;输出每次查询输出一个...原创 2019-05-26 20:00:46 · 437 阅读 · 0 评论 -
zstu月赛 1912: 我好像不会做 (欧拉函数+线段树)
题目描述众所周知,duxing201606得到了某知名数学家的真传,现在她有了无穷的力量.现在她面前有一个数组a,duxing201606打算施法,有两种魔法, 第一种:把[l,r]区间的每个数变成它的f函数,即a[i]=f(a[i]). 第二种:查询区间[l,r]中a[i]的和. f(x)是1到x中与x互质的数的个数。f(1)=1.输入多组数据,请读到文件末尾.一个数n表...原创 2019-04-26 22:10:57 · 145 阅读 · 0 评论 -
组合数常用结论
原创 2019-04-20 22:54:40 · 2753 阅读 · 0 评论 -
Comet OJ - Contest #0 解方程(数学)
题解:这道题大概就是中学数学题,一开始把样例带进去,也不难得出上述答案,但自己写代码时有几个坑点自己没注意到。1.x>sqrt(n);2.找因子时反复调用sqrt(n) 导致大概多了1000ms…3.无数解条件未思考清楚#include<bits/stdc++.h>#define fi first#define se second#define log2(a...原创 2019-04-02 22:53:17 · 200 阅读 · 0 评论 -
codeforces 955 C. Sad powers (数学+二分)
题目:http://codeforces.com/contest/955/problem/C题意:q次询问,每次给出l,r 问 l~r 有多少数满足存在 a > 0, p > 1 x = ap;自己做的时候就简单想到把所有满足条件的数放入vector中,然后发现满足条件的数字太多,一脸懵逼,然后放弃抵抗。看了题解才直到这道题目要稍微动一下脑筋思路:对于1018来说...原创 2019-03-15 23:20:32 · 193 阅读 · 0 评论 -
codeforces 1059 C. Sequence Transformation
题目:http://codeforces.com/contest/1059/problem/C题意:给出n,n个数分别为1—n1.求出所有数的最大公因数2.删除一个数直到输出n个公因数结束。使得答案的字典序最大思路:明显可以看出需要先删除奇数,如果先删除偶数得到的1的数量一定比删除奇数多。此时需要手动模拟几个11 21 1 31 1 2 41 1 1 2 41 1 1 2 ...原创 2019-03-05 14:14:18 · 119 阅读 · 0 评论 -
codeforces 1033 D. Divisors
题目:http://codeforces.com/contest/1033/problem/D题意:给出n个数,每个数有3~5个因子,求所有数因子乘积的个数。思路:首先应该想到把所有数质因子分解为 x1k1,x2k2…这种形式,然后可以得到答案为(k1+1)*(k2+1)…(kn+1),但是给出数字太大无法用正常方法分解,本菜鸡做到这里就想不出来了…题解给出根据约数个数可知,所有数都是这样构...原创 2019-03-04 23:07:45 · 223 阅读 · 0 评论 -
codeforces 1056 B. Divide Candies
题目:http://codeforces.com/contest/1056/problem/B题目大意:给你一个nn的棋盘 每一个格子上可以放ii+j*j个糖,现在有m个人,问有多少格子的糖可以整除m这道题想了很久没想出来…思路:看见m为1000 应该优先考虑O(mm)的时间复杂度,那么就应该考虑余数。(ii+jj)%m = (ii%m+j*j%m)%m=0 所以我们只需要找到余数相乘为...原创 2019-01-16 23:42:05 · 181 阅读 · 0 评论 -
codeforces 914 D. Bash and a Tough Math Puzzle(线段树 区间gcd)
http://codeforces.com/problemset/problem/914/D题意:给出一个数组,现有两种操作1.给出l,r,x 询问在l,r区间内至多改变一个数,gcd能否为x2.单点修改元素值思路:考虑线段树维护,最麻烦的是改变一个元素后gcd能否为x,首先线段树维护每个区间的gcd,首先父节点储存的gcd如果能都整除x,那么该区间gcd就可以在改变一个数的情况下为x...原创 2019-08-04 10:14:40 · 129 阅读 · 0 评论