摘要:
#include<stdio.h> #include<stdlib.h> #include<math.h> #include<windows.h> #include<conio.h> #include<time.h> #include<string.h> #include<stdbool.h> #i 阅读全文
摘要:
异或与区间加题解 简要题意 给定 \(n,m,K,a_{1...n}\),和 \(m\) 个三元组 \((x_i,y_i,z_i)\),定义 \(calc(l,r)=a_l \bigoplus a_{l+1}\bigoplus ...\bigoplus a_r\)。对于每个三元组 \((x,y,z) 阅读全文
摘要:
注:时间的单位为毫秒,每个数据均观测三次取平均值(排除异常数据)。 时间复杂度较大的排序算法 随机数据耗时 数据规模 选择排序 冒泡排序 插入排序 猴子排序 \(10\) 0 0 0 178 \(100\) 0 0 0 - \(10^3\) 0 0 0 - \(10^4\) 130 124 24 - 阅读全文
摘要:
C++写的贪吃蛇 阅读全文
摘要:
20210707总结 怎么说呢,体验极差。 大致看了看三道题:T1估计是从ACM的比赛偷过来的,T2数据结构题,T3数学题。 3个题都想了想,感觉T2最可做,先想了T2,10分不到想了个算法,回滚莫队+吉司机线段树,想了想正确性挺对的,造了个 \(R\) 递增的小数据模拟了一下,没错误,开始码,码了 阅读全文
摘要:
20210615总结 怎么说呢,体验极差。 一开始看的 T1 ,没想到状压,大概在 7:50 感觉是背包硬算概率,设 \(f[i][j]\) 表示第 \(i\) 个数加成了 \(j\) 的概率。但这玩意没法算答案,因为不知道是什么时候做的,没法处理一个时间两个数都加的冲突。8:30 然后就放了放,去 阅读全文
摘要:
矩阵优化简单总结 拆点技巧 有些题目中边有长度,但不会太长,如果对于每条边都拆成长度个点的话由于边会太多,导致时间复杂度会爆炸,所以只能拆点,将一个点拆成变成个点,一个点内部连长度为 1 的边。 例题:P4159 [SCOI2009] 迷路,P6772 [NOI2020] 美食家。 点边互换技巧 有 阅读全文
摘要:
一个点的深度等于树中它祖先的个数(包括自己)。 那么我们可以对于一个点对 \((x,y)\) 考虑在所有排列中 \(y\) 做了几次 \(x\) 的祖先。 在笛卡尔树上如果 \(y\) 是 \(x\) 的祖先那么 \(a_y\) 是 \(a_{x..y}\) 中的最小值。(这里先设 \(x\le y 阅读全文