首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
[HZOI 2015]疯狂的机器人
2024-11-04
BZOJ 2287. [HZOI 2015]疯狂的机器人 [FFT 组合计数]
2287. [HZOI 2015]疯狂的机器人 题意:从原点出发,走n次,每次上下左右不动,只能在第一象限,最后回到原点方案数 这不煞笔提,组合数写出来发现卷积NTT,然后没考虑第一象限gg 其实就是卡特兰数 只不过这里\(C(i)\)是第\(\frac{i}{2}\)项,奇数为0 令\(f[n]\)为走n次回到原点方案数,\[ f[n]=\sum_{i=0}^{n}C(i)C(n-i)\binom{n}{i}=n!\sum_{i=0}^{n}C(i)\frac{1}{i!}C(n-i)\fra
【COGS】2287:[HZOI 2015]疯狂的机器人 FFT+卡特兰数+排列组合
[题意][COGS 2287][HZOI 2015]疯狂的机器人 [算法]FFT+卡特兰数+排列组合 [题解]先考虑一维的情况,支持+1和-1,前缀和不能为负数,就是卡特兰数的形式. 设C(n)表示第n/2个卡特兰数,当n为奇数时为0,即: $$C_n=\binom{n}{\frac{n}{2}}-\binom{n}{\frac{n}{2}-1},n\%2=0$$ 卡特兰数可以通过预处理阶乘和逆元后O(1)计算. 设f[n]表示走n步回到原点的操作序列数,那么答案要求所有f[i],通过枚举纵向行
[COGS 2287][HZOI 2015]疯狂的机器人
Description 题库链接 现在在二维平面内原点上有一只机器人,他每次可以选择向右走,向左走,向下走,向上走和不走(每次如果走只能走一格).机器人不能走到横坐标是负数或者纵坐标是负数的点上. 给定操作次数 \(n\) ,求有多少种不同的操作序列使得机器人在操作后会回到原点,输出答案模 \(998244353\) 后的结果. \(1\leq n\leq 100000\) Solution 应该不难想吧... 显然我们先考虑前四种走法...不走的情况可以组合数求出来. 对于一类操作(向上向下或
[HZOI 2015]疯狂的机器人
[题目描述] 现在在二维平面内原点上有一只机器人 他每次操作可以选择向右走,向左走,向下走,向上走和不走(每次如果走只能走一格) 但是由于本蒟蒻施展的大魔法,机器人不能走到横坐标是负数或者纵坐标是负数的点上 否则他就会big bang 给定操作次数n,求有多少种不同的操作序列使得机器人在操作后会回到原点 输出答案模998244353后的结果 注意如果两个操作序列存在某一时刻操作不同,则我们认为这两个操作序列不同 [输入格式] 输入n,表示操作次数 n<=100000 [输出格式] 按要求输出答案
COGS2287 [HZOI 2015]疯狂的机器人
[题目描述] 现在在二维平面内原点上有一只机器人 他每次操作可以选择向右走,向左走,向下走,向上走和不走(每次如果走只能走一格) 但是由于本蒟蒻施展的大魔法,机器人不能走到横坐标是负数或者纵坐标是负数的点上 否则他就会big bang 给定操作次数n,求有多少种不同的操作序列使得机器人在操作后会回到原点 输出答案模998244353后的结果 注意如果两个操作序列存在某一时刻操作不同,则我们认为这两个操作序列不同 [输入格式] 输入n,表示操作次数 n<=100000 [输出格式] 按要求输出答案
cojs 疯狂的重心 疯狂的机器人 题解报告
疯狂的重心 话说做过幻想乡战略游戏的人应该很容易切掉这道题目吧 我们考虑一棵树如果添加了一个叶子,那么其重心最多向叶子方向移动1的距离 而是否移动我们只需要记录子树中有多少个点就可以判断啦 也就是说这个叶子对于时间复杂度的贡献是1 那么我们考虑每次在x-y上添加一条边,等于将x所在的树和y所在的树合并 这一步我们可以采用启发式合并,每次把小的向大的里插 这样暴力合并的时间复杂度是O(nlogn) 也就等价于我们最多插入单个节点O(nlogn) 那么对于重心的计算显然也是O(nlogn)的 那么现
Bitset([HZOI 2015]偏序++)
Bitset简介 下面介绍C++ STL 中一个非常有用的东西: Bitset 类似于二进制状压,它可以把信息转化成一个01串存储起来 定义方法: 首先要#include<bitset>或#include<bits/stdc++.h> 然后定义一个长度为len的bitset S bitset<len>S; 一些操作 bitset还支持&,^,|三个运算 b._Find_first() 找到第一个1的位置 b._Find_next(x)找到x后面为1的第一个位置
[cogs2314][HZOI 2015] Persistable Editor - 可持久化平衡树
[cogs2314][HZOI 2015]Persistable Editor - 可持久化平衡树 题目链接 首先吐槽扯淡几句 [题目描述] 维护一种可持久化的文本编辑器,支持下列操作: 1 p str 在当前版本的第p个字符后插入字符串str,并作为下一版本(数据保证0<=p<=当前字符串的长度,且插入的字符串中只有小写字母) 2 p c 在当前版本中删除从第p个字符开始的后c个字符,并作为下一版本(包含第p个字符,数据保证1<=p<=当前字符串的长度,且p+c-1<=当前
cogs 2123. [HZOI 2015] Glass Beads
2123. [HZOI 2015] Glass Beads ★★★ 输入文件:MinRepresentations.in 输出文件:MinRepresentations.out 简单对比时间限制:1 s 内存限制:1024 MB [题目描述] 给定长度为n(n<=300000)的循环同构的字符串,定义最小表示为该字符串的字典序最小的同构表示,请输出这个表示. [输入格式] 第一行是串的长度,第二行是字符串. [输出格式] 串的最小表示. [样例输入] 10 helloworld
COGS 2580. [HZOI 2015]偏序 II
COGS 2580. [HZOI 2015]偏序 II 题目传送门 题目大意:给n个元素,每个元素有具有4个属性a,b,c,d,求i<j并且ai<aj,bi<bj,ci<cj,di<dj的i,j对数有多少? a,b,c,d均为1~n的排列,即不会有i,j使得ai=aj or bi=bj or ci=cj or di=dj. 题目是离线的,cdq分治可以很好的解决这一类问题.cdq套cdq套cdq再加个bit就行了. 第一层的cdq处理a,保证a有序, 第二层在第一层的基础上处
热门专题
.net EF 根据最大时间及相同值获取信息
eclipse引入外部json包
如何将c盘里的根文件移到d盘
向navicat中导入数据库时出现错误
python分词并存在某个txt文件中
jboss反序列化分析
aspx怎么展示excel
amp.initialize()参数
power bi 处理周期不超7天
Qt多线程下如何判断线程全部执行完了呢
2014 年中国区微软mvp 名单
c语言中取整数部分怎么表示
wpf 访问别的路径图片
python 修改sheet页名字
sqlserver重新组织索引 影响
android radiobutton 自定义网络图标
asp select case 条件不能
oracle 触发器 commit
Linux怎么监控jvm内存命令
华为手机 网络ADB