摘要:
题意 给定一个$n m$的网格,计算三点都在格点上的三角形共有多少个(显然三点不能共线) 思路 答案显然为全集 不满足条件的三角形 全集为$C(n m,3)$ 横行/竖行:$C(m,3) n+C(n,3) m$ 本题难点在于怎么处理斜行 一条斜边可以由一条横边+一条竖边表示,所以枚举竖边和横边的长度 阅读全文
摘要:
题意 有一些书放到三层书架上,满足每层至少一本,最小化 $$S=\left(\sum_{j=1}^3 \max_{i \in S_j} h_i\right) \times \left(\max_{j=1}^3 \sum_{i \in S_j} t_i\right)$$ 其中$n \leq 70,h_ 阅读全文
摘要:
题意 求$[1,n!]$以内与$m!$互质的数的个数,答案对$mod$取模 思路 ~~不止沙拉公主,我也很困惑啊qwq~~ 由欧几里得定理可知,对于$x m!$,有$gcd(x,m!)=gcd(x\% m!,m!)$,所以只需要求出$m!$以内的与它互质的数即可,这个数为$\varphi(m!)$ 阅读全文
摘要:
"题意" 给一个数N,求它经过多少次取$phi$可以变成1 思路 由于只有$\varphi_{1}$和$\varphi_{2}$为1,所以原数变成1的过程必经2,由 $$\varphi(\prod_{i = 1}^m p_i^{q_i}) = \prod_{i = 1}^m (p_i 1) p_i^ 阅读全文
摘要:
"题目" 思路 设$dis[i]$表示i到山脚的距离,$sum[i]$表示前i个木材的重量和,$tot$为不建锯木厂的代价 假设分别建在$i,j$位置$(i dis[i]$ 维护上凸壳即可 Code cpp include define N 20005 using namespace std; in 阅读全文
摘要:
"题目" 思路 看到题目和数据范围想到设$f_{i,j}$为前$i$天,当前有$j$股股票时的最大收益 容易证明,$j$固定时,$f_{i,j}$随$i$增加而单调不降(即你可以不买不卖维持现状),那么$f_{i,j}$可以从$f_{i w 1,k}$转移而来 $k j$时为卖,两者受到$as$和$ 阅读全文
摘要:
题意 有n个点$(x,y)$,求一个在$x$轴上的最小区间,使得它包含的所有点中的$y$的极差至少为$d$,$x,y,d\leq 10^6$ 思路 将点按$x$排序,显然$2 pointers$,需要随时维护一个滑动窗口的最大值和最小值,显然单调队列(也可以用离散化+ST表或者线段树,不过多了个lo 阅读全文
摘要:
"题目" 解法 ~~2 SAT板子题~~ 如果没有x这个字符的话,问题变成每个点都有两种选法,有一些限制,显然是个2 SAT问题,设拆出来的两个点分别为$i$和$i'$,则对于限制$x y$,连边$(x,y),(y',x')$,跑tarjan即可(2 SAT基操嘛。) 即使现在有了x这个字符,我们也 阅读全文
摘要:
题意 一个图是平面图当且仅当所有的边两两不相交(端点除外),现在给定一个带环的图,判定它是不是平面图;多组数据 思路 考虑不在环上的边,连接两点的边无非只有两种连法,走环里面或外面,两条边如果可能会有相交部分,就只能一个走外面一个走里面,这显然可以是一个2 SAT问题 将边当作节点,一条边两个点,分 阅读全文
摘要:
题意 给一个范围$[0,n]$,有两种变换方式,$+k$或者给定的$m$个$x y$,但必须保证变换前后的数始终在范围内,给一个数$x$,求出它一直变换下去(注意不能得到了一个数之后返回上一步)可以得到的所有数的和的最大值$(n\leq 10^8 , m\leq 10^5 , k\leq n)$,多 阅读全文