摘要:
7.31 Day 0 报道,下暴雨了 8.1 Day 1 考试 T1 游戏 Description Alice和Bob在玩一个游戏,游戏是在一个N*N的矩阵上进行的,每个格子上都有 一个正整数。当轮到Alice/Bob时,他/她可以选择最后一列或最后一行,并将其删除,但 必须保证选择的这一行或这一列 阅读全文
摘要:
状压DP f[i][j][k]表示第i行,状态为j,用了k个国王 s[]是当前状态,king[]是这一行用了几个国王 用十进制数的二进制表示这一行的状态 其余见注释 code 阅读全文
摘要:
一个需要考虑比较多状态的dp 通过象棋规则可知,一列最多有两个炮 因为如果有三个炮他们就可以互相伤害了 设f[i][j][k]为前i行,有j列有一个棋子,有k列有两个棋子 容斥一下可得没有棋子的列数为m-j-k 我们枚举方棋子的状态 <1>只放一个棋子 (1) 把这个棋子放在一列没有棋子的列上 当这 阅读全文
摘要:
这题其实并不是在考DP吧。。。 转移方程显然 有钉子的情况下落到左右两边概率相等,均为当前概率的一半 f[i+1][j]+=f[i][j]/2 f[i+1][j+1]+=f[i][j]/2 没钉子的话就直接掉在正下方的钉子上,该点的概率加上当前的 f[i+2][j+1]+=f[i][j] 然而难点不 阅读全文
摘要:
点分治是一种基于分治的算法 整体思想为不断删根把一棵较大的树拆成n个小树再分别求解再合并 关于此题 我们先随意指定一个根,树上路径就分成了过根的和不过根在一个子树里的 这样经过根的路径即为dis[u]+dis[v],dis[i]是i到根的路径长度 不经过根的就再找这棵子树的根如此递归 显然分治 把一 阅读全文
摘要:
用差分数组(b[i])存每天教室的使用情况 所以当对区间操作时,其实可以转化成对b数组操作: 改变b[i]就相当于改变i之后的每一个值,并通过重新减去改变的量,达到操作区间的目的。 从第一份订单开始枚举,直到无法满足或者全枚举完结束。 另通过比大小来判断负数不容易出错 阅读全文
摘要:
01分数规划+背包 t[i]读入时*1000,不用小数而满足题目要求 由于W比较小而w[i]很大,枚举W 当w[i]>W 时必满足,所以直接使w[i]>W的贡献算在f[W]上 求Σt[i]/Σw[i]的最大值,ans=Σt[i]/Σw[i],即Σ(t[i]-w[i]*ans) 二分ans然后正常01 阅读全文
摘要:
要求≥3,所以只需找3个 当这一位是a时,判断以a为中心的前后两段是否回文 若是,说明所有和a等差的项都出现过 如果不是,说明一项在前一项在后 因为是1到N的排列,所以一定存在这样的项 bitset代替线段树维护hash值 阅读全文
摘要:
AC自动机上DP f[i][j]表示节点j,串长为i 当一个串的尾节点被标红或其fail指针指向的被标红,都是可读的 用总的减去不可读的即为答案 阅读全文
摘要:
忽然发现博弈论是个很好玩的东西哎 之前假期学长讲课的时候就发现这种必胜的战略可以用来坑人做题 这两天终于做了第一道博弈论的题,写篇博客纪念一下 灵感来源:洛谷P1247 Pre-scene 众所周知,李明和Jenny都喜欢Danny,为了争夺Danny的所有权,他们决定玩一个游戏。规则是这样的: 有 阅读全文
摘要:
我们丧心病狂的教练,给我们的本期作业,竟然是 数论 这对于一个数学很渣的小蒟蒻来说,太难了啊 所以开始努力学习数论....的gcd 写这篇blog的原因——洛谷P1082 0X00 需要知道的知识 0X01 定义 gcd:若自然数d同时是自然数a和b的约数,则称d是a和b的公约数。在所有a和b的公约 阅读全文
摘要:
前言 小蒟蒻实在是太菜了,看了好久都没看懂,最后在某dalao的指导下才终于理解了它 关于链式向前星和他的兄弟姐妹 链式向前星等价于邻接表,即用数组模拟邻接表来存图 和它相像的还有前向星和链式前向星,这两个前向星好像跟邻接表有些许的不同 吧 而且用的好像不多?(由于不是重点,有兴趣的话可以自行百度) 阅读全文
摘要:
Pre-Scene 我们有一道小水题 给出一个长度为n的序列,m次询问,每次询问区间内的最大值 有大佬说,线段树秒切 ST表...神秘的大佬在角落里出声… 什么!大佬们回头喊道 关于ST表 确实,关于求区间最值,线段树已经很nice了,但是,对于静态区间最值,我们还有更优秀的——ST表 其预处理复杂 阅读全文
摘要:
前言QwQ 对于一只用Mac的小蒟蒻,没有Dev_c++简直太难受了,用在线IDE写代码又没法保存,那么我们怎么办呢? 好在App Store里有这个好东西 所以我们今天来介绍一下 “如何使用Xcode” 0x00 新建文件 Step 1 :打开Xcode 会看到这样的一个界面-> Step 2 : 阅读全文