题意: 给定一棵有根树,每个节点有一些石子,每次可以将不多于k的石子移动到父节点 修改一个点的石子数,插入一个点,询问某棵子树是否先手必胜 显然是一个阶梯Nim 每次最多取k个,找规律或者观察式子易发现就是$mod (k+1)$后的Nim 问题变为: 修改点权,插入点,询问某棵子树内某一深度的点权异或和 于是放大招了:伪$ETT$ 真正的ETT貌似维护的是边,欧拉遍历序列也是边组成的序列 但我们用Splay来维护欧拉遍历的点的序列,入栈出栈时都加入队列,+1,-1,好像也叫括号序列 $build…
伪ETT? 貌似就是Splay维护dfn = = 我们首先观察这个博弈 这个博弈直接%(l+1)应该还是很显然的 因为先手怎么操作后手一定能保证操作总数取到(l+1) 于是就变成阶梯Nim了 因为对于先手从深度奇数点挪到深度偶数点后手接着可以把它挪回深度偶数点 所以就是典型的阶梯Nim 我们可以发现 只需要维护子树到一个点深度差为奇数的点的异或和就可以了 这个操作显然可以对整棵树按深度黑白染色 分别维护奇数层&偶数层即可(我这里用的是总和和奇数和 对于添加一个点那么我们直接把它挂到父亲后面就可以…
题面传送门 介于自己以前既没有写过 Staircase-Nim 的题解,也没写过时间轴分块的题解,所以现在就来写一篇吧(fog 首先考虑最极端的情况,如果图是一条链,并且链的一个端点是 \(1\),那么问题可以转化为序列上的问题,即可视作有一个 \(n\) 级的阶梯,第 \(i\) 级台阶上有 \(a_i\) 个石子,每次可以选择一堆并将其中 \(x(x\le L)\) 个石子向下移动一级,不能移动最底下一级的石子,不能操作者输. 这是一个经典的 staircase 博弈的模型,对于这样的模型我…
很久很久之前,看到Treap,好深啊 很久之前看到Splay,这数据结构太神了. 之后学习了LCT. 然后看到Top-Tree就更觉得神奇了. 知道我见到了这题, 万物基于Splay 显然需要维护子树查询,插入,子树修改. Top-Tree?我不会. 直接用Splay维护欧拉序,然后拆成进入子树和离开两个节点,然后就可以方便的维护子树了. 本蒟蒻不会写,去hzwer抄了 #include <map> #include <cmath> #include <queue> #…
未经博主同意不得转载 3729: Gty的游戏 Time Limit: 20 Sec  Memory Limit: 128 MBSubmit: 448  Solved: 150 Description 某一天gty在与他的妹子玩游戏.妹子提出一个游戏,给定一棵有根树,每个节点有一些石子,每次可以将不多于L的石子移动到父节点,询问将某个节点的子树中的石子移动到这个节点先手是否有必胜策略.gty很快计算出了策略.但gty的妹子十分机智,她决定修改某个节点的石子或加入某个新节点.gty不忍心打击妹子,…
本文是依据lua游戏开发实践指南做的一些学习笔记,仅用于继续自己学习的一些知识. Lua基础 1.  语言定义: 在lua语言中,标识符有非常大的灵活性(变量和函数名),只是用户不呢个以数字作为起始符.也要避免下划线(_)接大写字母.由于这样的格式为lua自身保留如_Start. 建议用户使用例如以下格式和命名规则来定义变量.常量和函数名: ①  常量用全大写和下划线,比如:MY_CONSTANT ②  变量第一个字母小写,比如:myVariable ③  全角变量第一个字母用小写g表示,比如:…
1.前言 前几天随着flappy bird这样的小游戏的火爆,使我这种也曾了解过html5技术的js业余爱好者也开始关注游戏开发.研究过两个个比较成熟的html5游戏引擎,感觉用引擎还是要方便一些.所以决定从今天正式开始研究html5游戏引擎,并且将从看官网demo的学习整理成博客和大家一起分享. 我了解过cocos-2d for html5和phaser.js这两个引擎,其中前者比较复杂,对于有过cocos-2d平台开发经验的人来说可能学习的较为容易一些,如果是纯入门汉又不想研究c++版本(因…
2820: YY的GCD Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 1624  Solved: 853[Submit][Status][Discuss] Description 神犇YY虐完数论后给傻×kAc出了一题给定N, M,求1<=x<=N, 1<=y<=M且gcd(x, y)为质数的(x, y)有多少对kAc这种 傻×必然不会了,于是向你来请教……多组输入 Input 第一行一个整数T 表述数据组数接下来T行,每行两个正…
传送门 数据,标程 题意: 一颗有根树,支持询问点到根路径权值和,子树加,换父亲 欧拉序列怎么求路径权值和? 一个点的权值只会给自己的子树中的点贡献,入栈权值正出栈权值负,求前缀和就行了! 和上题一样,伪ETT大法好 注意本题的子树需要根,所以需要找到子树区间左右的前驱和后继节点把他们splay出来才能得到子树区间,不能直接$l-1, r+1$,一开始写错了 然后注意下放标记,splay需要记录splay子树里有几个入栈几个出栈 加强版:询问任意一条路径$(u,v)$ 当然需要减去lca了,于是…
3786: 星系探索 Time Limit: 40 Sec  Memory Limit: 256 MBSubmit: 1638  Solved: 506[Submit][Status][Discuss] Description 物理学家小C的研究正遇到某个瓶颈. 他正在研究的是一个星系,这个星系中有n个星球,其中有一个主星球(方便起见我们默认其为1号星球),其余的所有星球均有且仅有一个依赖星球.主星球没有依赖星球. 我们定义依赖关系如下:若星球a的依赖星球是b,则有星球a依赖星球b.此外,依赖关…