摘要: # CSP模拟19 ## T1 十年之约 CF1542C 我们要求 $$\sum_{i=1}^{n}f(i)$$ 其中 $$f(i)=k\Leftrightarrow\operatorname{lcm}(1,2,3,\dots,k-1)\mid{i},k\nmid{i}$$ 我们先预处理 $$an_ 阅读全文
posted @ 2023-08-13 07:20 muzqingt 阅读(13) 评论(0) 推荐(1) 编辑
摘要: # Dirichlet学习笔记 ## Dirichlet前缀和 狄利克雷前缀和是求解形如 $$ b_k=\sum\limits_{i|k}a_i $$ 的式子 首先我们可以想到枚举 $i$ ,再枚举 $i$ 的倍数 $j$ $$b_j=b_j+a_i$$ 此时的时间复杂度为 $n/1+n/2+n/3 阅读全文
posted @ 2023-08-12 07:35 muzqingt 阅读(12) 评论(0) 推荐(1) 编辑
摘要: # CSP模拟18 ## T1 站队 [CF1850H](https://www.luogu.com.cn/problem/CF1850H) 我们发现如果把怪抽象为节点,如果有两个节点可以用不同长度的路径联通,那么答案不合法,否则答案合法。 我们对每一个没有遍历过的点进行 $DFS$ ,查找是否有不 阅读全文
posted @ 2023-08-11 16:54 muzqingt 阅读(25) 评论(1) 推荐(1) 编辑
摘要: # CSP模拟17 ## T1 弹珠游戏 考虑贪心,枚举右端点,产生贡献的是没有填满的人,所以先让某些人填满是最优的。 优先填满已经填了2个的,再填1个的。方案数就是每次填了相同个数的人数的乘积。 ### code ``` #include #include #include #include us 阅读全文
posted @ 2023-08-10 21:31 muzqingt 阅读(17) 评论(0) 推荐(1) 编辑
摘要: # CSP模拟16 ## T1 糖果 题意:把 $n$ 个数分成若干段,每段异或和相等,段数大于 $1$ ,问能否分成。 我们从第一个数开始求数列的异或和,因为 $n$ 大于 $1$ ,两个相等的数异或和为 $0$ ,数列异或和有两种情况: * 数列异或和等于 $0$ ,一定可以分成偶数段,符合题意 阅读全文
posted @ 2023-08-09 17:50 muzqingt 阅读(25) 评论(1) 推荐(1) 编辑
摘要: # 凸包 由于 $Andrew$ 算法较快,所以主要介绍 $Andrew$ 的实现方式 我们把输入按照 $x$ 为第一关键字,$y$ 为第二关键字进行从小到大排序,保证了 $1$ 和 $n$ 两个端点把凸包分成了两个部分(称为凸壳),从 $1$ 遍历到 $n$ 再从 $n$ 遍历到 $1$ ,把遍历 阅读全文
posted @ 2023-08-08 21:29 muzqingt 阅读(19) 评论(2) 推荐(2) 编辑
摘要: CSP模拟15 T1 CF1850G The Morning Star 水题 但是考场写挂了 直接写阶乘会 \(RE\)(这里\(A\)阶乘可以优化成两个数相乘) 可以分解为4种不同斜率的直线用 \(map\) 存( 点击查看代码 #include<iostream> #include<cstdio 阅读全文
posted @ 2023-08-07 19:00 muzqingt 阅读(48) 评论(1) 推荐(1) 编辑
摘要: 更改栈空间和内存占用 Linux 在当前终端使用 ulimit(-s)栈空间 kbytes,(-t)时间,单位为秒(-v)内存 kbytes, 例如 ulimit -s 262144 -t 1 -v 262144 为\(1s,256mb\) Windows 添加编译选项-Wl,--stack=<nu 阅读全文
posted @ 2023-07-25 15:36 muzqingt 阅读(15) 评论(0) 推荐(0) 编辑
摘要: ### exgcd ``` __int128 exgcd(__int128 as,__int128 bs,__int128 &x,__int128 &y){ if(bs==0){ x=1; y=0; return as; } __int128 ans=exgcd(bs,as%bs,y,x); y-= 阅读全文
posted @ 2023-07-18 20:42 muzqingt 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 数学资料 阅读全文
posted @ 2023-06-12 19:14 muzqingt 阅读(66) 评论(9) 推荐(2) 编辑