可能是 BJOI2019 Day1 题解?
T1
给一个有空白字符的串 $S$,和若干模板串 $X_i$,初始 $Ans = 1$,每当一个模板串在 $S$ 中作为子串出现时,$Ans$ 会乘以 $X_i$ 的权值 $Val_i$,然后如果 $S$ 中出现了 $k$ 次模板串(相同串出现两次算两次),贡献就是 $^k \sqrt{Ans}$,你要在空白字符处任意填入字符,最大化贡献
$\sum |X| \leq 1500, n \leq 1500$
sol:
首先,你要求几何平均数,然后你发现没法求
然后,你发现这是个经典问题,把所有数取个 log,然后几何平均数就变成了算术平均数
然后,最大化算术平均数,那就是分数规划
A 了这题就能翻到队线以上...可惜我没有
T2
令 $f_n$ 为用 $1\times 2$ 的骨牌拼 $2 \times n$ 方格的方案数,$g_n$ 为用 $1 \times 2$ 的骨牌拼 $3 \times n$ 方格的方案数,问你 $\sum\limits_{i=l}^r \binom{f_i}{k}$ 和 $\sum\limits_{i=l}^r \binom{g_i}{k}$,膜998244353
$k \leq 1500,l,r \leq 10^{18}$
sol:
打表找规律发现 $f$ 是斐波那契数列,$g_{2n+1} = 0$,$g_{2n} = 4\times g_{2n-2} - g_{2n-4}$
发现 $k$ 是给定的,于是只需要求斐波那契数列的下降幂
下降幂可以用带符号第一类斯特林数转换成幂
现在就是要求斐波那契数列的幂之和
然后发现这是个经典问题(为什么这么多我没学过的经典问题啊)
考虑斐波那契数列的特征方程,令它的两个特征根为 $A,B$(是两个带有 $\sqrt{5}$ 的分数,懒得打了)
然后发现 $F_n^k = \frac{1}{(\sqrt{5})^k} \times (A^n - B^n)^k$
把后面那个东西二项式定理展开
会发现相同的$(-1)^j \times \binom{k}{j}$ 的系数是一个等比数列,记 $D=A^{k-j} \times B^{j}$
则对于 $j$ 来说它的系数是 $\frac{D \times (D^n - 1)}{D-1}$
枚举 $j$ 计算即可
但比较蛋疼的是 5 在模 998244353 意义下没有二次剩余,扩域即可
然后发现这个特征方程的做法并不依赖于斐波那契数列,只要它是个由前两项递推过来的递推式就可以了
后面那个东西只看偶数项就是个递推式,那就...同样的方法做就可以了,值得注意的是,3 在模 998244353 意义下依然没有逆元,跟 5 的处理方法一样
(所以为什么不模 $10^9+9$
T3
有一个迷宫,有一些墙,你可以加入墙,删除墙,或者询问在一个点一直用左手扶墙走到另一个点的距离
$n \leq 500,q \leq 10^5$
sol:标程 7KB
大概就是你要维护一些环,支持合并,分裂,查询环上只能逆时针走从 $A$ 到 $B$ 的距离
这个东西用平衡树按顺序维护一下就可以了
一次合并/分裂可以转化成两次 split/merge
可能是 BJOI2019 Day1 题解?的更多相关文章
- THUSC2017 Day1题解
THUSC2017 Day1题解 巧克力 题目描述 "人生就像一盒巧克力,你永远不知道吃到的下一块是什么味道." 明明收到了一大块巧克力,里面有若干小块,排成n行m列.每一小块都有 ...
- 【NOIP2014】Day1题解+代码
Day1 T1 签到题,模拟一下随便写就能过. 不过小心像我一样表打错傻逼的调了10min. #include <algorithm> #include <iostream> ...
- ZJOI2019 Day1 题解
想要继续向前,就从克服内心的恐惧开始. 麻将 题意 在麻将中,我们称点数连续的三张牌或三张点数一样的成为面子,称两张点数一样的牌为对子.一副十四张麻将牌的胡牌条件是可以分成四个面子和一个对子或者分成七 ...
- Noip 2016 Day1 题解
老师让我们刷历年真题, 然后漫不经心的说了一句:“你们就先做做noip2016 day1 吧” ...... 我还能说什么,,,,,老师你这是明摆着伤害我们啊2333333333 预计分数:100+2 ...
- NOI 2016 Day1 题解
今天写了NOI2016Day1的题,来写一发题解. T2 网格 题目传送门 Description \(T\) 次询问,每次给出一个 \(n\times m\) 的传送门,上面有 \(c\) 个位置是 ...
- 十连测Day1 题解
A. 奥义商店 有一个商店,n个物品,每个物品有一个价格和一种颜色. 有m个操作,操作有两种,一种是修改一个位置的价格,另一种是购买,每次购买指定一个公差d和一个位置k,找到包含这个位置k公差为d的同 ...
- 【NOIP2013】DAY1题解+代码
T1 傻逼快速幂,敲敲就过了. 我跟你们讲个笑话当时我以为这个数据范围过不了于是想出了求GCD再推规律什么的magic方法中途还咨询了某个学长. 然后怎么想都是不可做. ……直到我发现我昨年的代码一个 ...
- NOIP 2018 day1 题解
今年noip的题和去年绝对是比较坑的题了,但是打好的话就算是普通水准也能350分以上吧. t1: 很显然这是一个简单的dp即可. #include<iostream> #include&l ...
- 【2018暑假集训模拟一】Day1题解
T1准确率 [题目描述] 你是一个骁勇善战.日刷百题的OIer. 今天你已经在你OJ 上提交了y 次,其中x次是正确的,这时,你的准确率是x/y.然而,你最喜欢一个在[0; 1] 中的有理数p/q(是 ...
随机推荐
- 北京联通光猫 F427 路由改桥接的方法
最近安装了一个联通的宽带,赠送的光猫是 中兴 F427,然后联通小哥给安装的时候,直接开启了光猫的路由功能. 不过联通这个光猫实在是太弱了,起码默认的帐号开启的功能实在是太弱了,没法完成以下几个功能: ...
- python 使用set对list去重,并保持list原来顺序
list_one=re.findall(r"^\s{0}[A-Za-z]*\b", txt,re.M) #匹配一级目录 addr_to = list(set(list_one))a ...
- ECMAScript6教程目录
ECMAScript 6 简介 let 和 const 命令 数组的解构赋值 字符串的扩展 正则的扩展 数值的扩展 函数的扩展 数组的扩展 对象的扩展 Symbol Set 和 Map 数据结构 Pr ...
- Mybatis-Generator插件的使用与Spring集成Mybatis的配置
参考:http://blog.51cto.com/zero01/2103687 Mybatis-Generator是一个用于自动生成dao层接口.pojo以及mapper xml的一个Mybatis插 ...
- Hive 表结构操作
添加列 add columns alter table table_name add columns (id int comment '主键ID' ) ; 默认在表所有字段之后,分区字段之前. 替换 ...
- Postman的安装
打开chrome->设置->扩展程序->获取更多扩张程序:输入 postman就可以安装了 可能需要蓝灯FQ 安装好了直接打开即可使用
- Svn Replacement For Git Stash
svn 实现git stash类似的功能 % svn diff > WorkInProgress.txt % svn revert -R . <make changes> % svn ...
- 安装VMware Tools:Ubuntu
1.首先准备好linux.iso,在安装目录下应该可以找到,我使用的是这个: 链接:http://pan.baidu.com/s/1nuGQyIt 密码:b5mn 2.打开Ubuntu,CD中加载该i ...
- 重温MVC基础入门
重温MVC基础入门 简介 本文主要是作者回顾MVC基础的文章,整合个人认为基础且重点的信息,通过简单实践进行复习. 相关代码地址:https://github.com/OtherRuan/Revi ...
- COW写时复制
body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...