题目链接 题意:求满足a*x≡1(mod b)的最小整数x。 思路:由线性同余方程的基本性质,ax≡1(modb)ax≡1(modb)当且仅当gcd(a, b) = 1时才有解。由Bézout定理,有ax+by=1ax+by=1,可以先利用扩展欧几里得算法求出一组特解x0,y0x0,y0,然后通过取 Read More
posted @ 2019-08-05 22:12 Ldler Views(281) Comments(0) Diggs(0) Edit
题目链接 题意:求a^b的所有约数之和mod9901。 思路:因为一个数A能够表示成多个素数的幂相乘的形式。即A=(a1^n1)*(a2^n2)*(a3^n3)...(am^nm)。所以这个题就是要求 (1+a1+a1^2+...a1^n1)*(1+a2+a2^2+...a2^n2)*(1+a3+a Read More
posted @ 2019-08-05 21:42 Ldler Views(150) Comments(0) Diggs(0) Edit
题目链接 题意:给一个数L,问至少多少个8连在一起组成的正整数是L的倍数。 思路:x个8一起组成的正整数可表示为8*(10^x-1)/9。然后满足L|8*(10^x-1)/9。等价于10^x=1(mod9*L/d),d=gcd(L,8)。 所以我们只需要枚举phi[9*L/d]的约数就行了,看能否满 Read More
posted @ 2019-08-05 20:59 Ldler Views(365) Comments(0) Diggs(0) Edit
刷题数:7(加CF) 今天看了质数+约数,算法竞赛进阶指南134~148页 就是那点东西吧,学了个线性数筛和欧拉函数的一些性质。 找了两个代表性题目,写了两篇博客: DFS+质数 https://www.cnblogs.com/2462478392Lee/p/11299858.html 欧拉函数线性 Read More
posted @ 2019-08-04 21:38 Ldler Views(112) Comments(0) Diggs(0) Edit
题目链接 题意:给个N*N的矩形点,求在原点看去能看到多少个点 思路:除了(1,0),(0,1),(1,1)外其他点的xy都互质。所以求欧拉函数。fhi[i]从2加到n,再是两倍,再加3。 #include<cstdio> #include<cstring> #include<algorithm> Read More
posted @ 2019-08-04 21:35 Ldler Views(144) Comments(0) Diggs(0) Edit
题目链接 题解:求一个1到n以内的数,使得这个数有最多的约数。如果有多解,只找最小的那个 因为要严格满足对于任意1<=i<=n,有g(x) > g(i),所以如果有g(i)=g(j)且i<=j,那么i是符合题意的,但是j是不符合的。因为g(j)>g(i)不满足 至于一个数的约数个数,把它分解质因数, Read More
posted @ 2019-08-04 21:29 Ldler Views(252) Comments(0) Diggs(0) Edit
刷题数:4 今天看书看了A*与IDA*,算法竞赛入门经典124~133页。 先说一下看书后对知识点的认识,A*算法就是设计一个估价函数,附加到其优先队列的权值比较中,然后还是得到目标状态的解。值得一提的是,设当前状态为state,估值函数为f(state),当前状态到目标状态的最小代价为g(stat Read More
posted @ 2019-08-03 21:04 Ldler Views(156) Comments(0) Diggs(0) Edit
题目链接 题意:有八种操作棋盘进行移动,使得中间8个数字一样,问·最短移动步数及如何移动。 思路:dfs,因为当中间八个数字中有m个数字不同时,至少需要m次操作,将这个m作为估值。 Read More
posted @ 2019-08-03 21:00 Ldler Views(178) Comments(0) Diggs(0) Edit
题目链接 题意:转换一个128位的二进制串,变成16进制,并且格式为x:x:x:x:x:x:x:x然后多个相邻的0变成::,且只有一个::,求变成的字典序最小且最短的字符串。 思路:大水题,但是就是一直wa,思路都一样的还是wa。先将二进制转化为十进制,然后用%x输出,因为连续的0可变短,但有优先级 Read More
posted @ 2019-08-03 20:28 Ldler Views(194) Comments(0) Diggs(0) Edit
题目链接 题意:给你n个物品体积,你用k个相同体积的篮子去装,不能装超过篮子的体积,求篮子体积的最小值 思路:其因为数都是1000,令sum为物体总体积,maxV为物体体积最大值,所以其篮子体积下界为max((int)ceil(sum/k),maxV),而上界就是ceil(sum/k)+maxV然后 Read More
posted @ 2019-08-03 19:22 Ldler Views(228) Comments(0) Diggs(0) Edit