题意求由 $N\times M$ 的网络上三点构成的三角形个数。$N,M\le 1000$ 。题解图片来源于 https://www.luogu.org/blog/suwakow/solution-p3166每个三角形都可以确定一个最小的包含它的矩形,称这种情况为完全覆盖。那么可以把原矩形化为多个子矩形并只计算完全覆盖的情况。显然对于每个长宽相同的子矩形,它们对答案的贡献都是相同的,所以只用...
题意定义$$P=\sum_{i-1}^n i|n\ C_n^i$$求$$G^P\mod 999911659$$其中 $N,P\le 10^{9}$ 。题解由拓展欧拉定理得$$G^P\equiv G^{P\mod \varphi(999911659)} \pmod {999911659}$$因为 $999911659$ 是质数,所以$$\varphi(999911659)=999911658$...
题意求一个位数 $\geq 2$ 的 $2^{k}$ 进制数 $r$ ,满足:化为二进制后位数 $\le w$每一位上的数依次递增其中 $k\le 9 \ , \ k\le w\le 30000$ ,保证 $r$ 化为 $10$ 进制的位数 $\le 200$ 。题解对于条件 $1$ ,显然 $r$ 的位数 $L \le \lceil \dfrac{w}{k}\rceil $ 。当 $L\l...
题意给出 $A,B,X_1,p,t$ ,数列 $X_i$ 满足递推式:$$X_{i+1}\equiv A\times X_i+B\pmod p$$求使 $X_i\equiv t\pmod p$ 成立的最小的 $i$ 。题解一般情况列出来找下规律:$$\begin{cases}X_2\equiv A\times X_1+B\pmod p \\X_3\equiv A^{2}\times X_1+...
题意有 $N$ 个野人,每个野人有初始所在的山洞 $C_i$、每次移动的山洞个数 $P_i$ 以及寿命 $L_i$ 。要求不存在有两个野人在同一年住在同一个洞穴,求山洞个数 $M$ 的最小值。其中 $N\le 15$ ,保证 $M\le 10^{6}$ 。题解$N$ 比较小,所以可以枚举 $M$ (没有单调性没法二分),然后 $O(N^{2})$ 进行检验。对每两个野人,题意可以化为要求下面...
题意给出 $y,z,p$ , 要求计算下列式子的值:$y^z\bmod p$满足 $x\times y\equiv z\ (\bmod \ p)$ 的最小非负整数 $x$;满足 $y^x\equiv z\ (\bmod \ p)$ 的最小非负整数 $x$。题解三合一题目。快速幂$\text{exgcd}$$\text{bsgs}$(保证了 $p$ 是质数所以不用 $\text{exbsgs}...
概述中国剩余定理可以求解同余方程组,如对下列方程组:$$\begin{cases}x\equiv a_1 \ (mod \ m_1) \\ x\equiv a_2 \ (mod \ m_2) \\ x\equiv a_3 \ (mod \ m_3) \\ \ldots \\ x\equiv a_n \ (mod \ m_n) \end{cases}$$求解最小的 $x$ 。求解令:$$M=...
题意求 $A^{B}$ 的约数和。对 $9901$ 取模。其中 $A,B\le 5\times 10^{7}$ 。题解将 $A$ 分解:$$A=\prod_{i=1}^n p_i^{a_i}$$那么约数和为:$$\prod_{i=1}^n \sum_{j=0}^{a_i\times B} {p_i}^j $$所以可以先预处理出 $\le \sqrt{A}$ 的质数,然后对 $A$ 进行分解...
这已经是我三刷这道题了(前两次是2017-08-09和2018-05-07),但靠自己还是没有推出来。果然这种题还是适合写个总结啊。题意两只青蛙分别从 $x \ , \ y$ 开始向数轴正方向跳,每 $-1s$ 可以分别跳 $m \ , \ n$ 。数轴是环形的,长度为 $l$ 。求它们相遇最少需要续的时间,如果不能相遇输出Impossible。题解设续的最少时间为 $t$ ,将题意转化为$...
庆祝第100篇文章完成!题意一棵有边权的树,有的节点是转播站,有的节点是用户节点。要让用户看到电视,代价为根节点到当前用户节点的路径和,重复的路径不重新计算。每个用户可以支付一定的钱。求在不亏本的情况下,最多可以让多少个用户看到电视。其中点数 $N\le 3000$ 。题解树上背包的裸题。用 $f[x][i]$ 表示在以 $x$ 节点为根的子树中选 $i$ 个用户的最大收益。转移方程式为:$...
题意给出 $S$ ,求所有正约数之和 $=S$ 的数。数据组数 $k\le 100$ , $S\le 2\times 10^{9}$ 。题解约数和为:$$\begin{matrix} \prod_{i=1}^n \end{matrix}\begin{matrix} \sum_{j=0}^{a_i} {p_i}^j \end{matrix}$$可以先预处理 $\le \sqrt{S}$ 的质数...
题意在树上放一些山贼集团的分部,每个分部可以收取根节点到它路径上所有节点的保护费。在节点 $i$ 建立分部 $j$ 花费 $s[i][j]$ 。对于每一个节点,如果它被多个分部收保护费,就可能产生收益或损失。求最优的放置方法,可以得到最大利润。其中点数 $N\le 100$ ,分部个数 $P\le 12$ 。题解看到 $P$ 的范围,显然可以对节点上放置分部的状态进行状压。因为每个分部收取的...
题意给出 $A,B$ ,求 $gcd(A,B)$ 。其中 $A,B\le 10^{3000}$ 。题解数据范围很大,显然要用二进制求 $gcd$ 。其它都是板子。#include<bits/stdc++.h>
using namespace std;
struct bigint {
int len,s[3005];
bigint() { memset(s,0,...
一年前做了然而却还是不会系列。题意给出 $a_0,a_1,b_0,b_1$ ,需要求 $x$ ,使得$$\begin{cases} gcd(x,a_0)=a_1 \\ lcm(x,b_0)=b_1 \end{cases}$$题解显然,对于$$gcd(x,y)=k$$我们可以将其化为$$gcd(\dfrac{x}{k},\dfrac{y}{k})=1$$又因为$$lcm(x,y)=k$$可以化...
题意一个有点权和边权的无向图,求 所有点权和为 $0$ 的子图 的最小生成树的权值和。其中点数 $N\le 16$ 。题解看了半天题才得到上面的题意,看到 $N\le 16$ ,显然是状压。用 $f[id]$ 表示当前点集状态为 $id$ 时的最优解,当 $i$ 和 $j$ 状态内的点权和为 $0$ 时,转移方程式很显然:$$f[i|j]=f[i]+\text{Kruskal}(j)$$对每...