CODEFORCES掉RATING记 #5
比赛:Codeforces Round #429 (Div. 2)
时间:2017.8.1晚
这次感觉状态不好,就去打div2了
A:有\(26\)种颜色的气球,每种的数量不一样,你要把这些气球分给\(k\)个人,使得每个人拿到的气球中没有两个颜色相同的。
直接判断每种颜色的气球是否大于\(k\)个。
B:有一个序列,两个人轮流决策(第一个人先):第一个人可以删掉一个元素和为奇数的子串,第二个人可以删掉一个元素和为偶数的子串。无法选的人输。问你谁能获胜。
可以证明,如果这个序列有至少一个奇数,那么先手获胜。否则后手获胜。证明:如果有奇数个奇数,先手可以直接选完,如果有偶数个奇数(大于\(1\)个),先手可以随便选,后手无法一次选完,先手第二次决策时可以选完。如果没有奇数,先手第一次决策时无法选择满足要求的子串。
C:有两个序列\(a,b\),你要把\(b\)重新调整顺序,使得\(\sum_{i=1}^nF(a_i,b_i)\)最小。\(F(n,k)\)是$1\ldots n \(中选\)k$个数中最小元素的期望。
我们先推一下看看这个式子是什么:
\[F(n,k)=\frac{1\times\binom{n-1}{k-1}+2\times\binom{n-2}{k-1}+\cdots+(n-k+1)\times\binom{k-1}{k-1}}{\binom{n}{k}}\]
好像我推不出来啊。。。(结果是\(\frac{n+1}{k+1}\))那我就直接说结论了(可以通过观察样例猜出来):把\(a\)中最小的数与\(b\)中最小的数对齐,把\(a\)中第二小的数与\(b\)中第二小的数对齐。。。
D:有一个连通图,你要选出一些边使得有一些点的度数为奇数,有一些点的度数为偶数,有一些点的度数没有限制。
先找出这个图的一棵生成树,然后会发现非树边是没有影响的。你可以选出非树边,然后把路径上的树边反向。然后就是一个简单的树形DP了。
E:有一个序列,你要统计有多少个排列满足相邻两个数的积不是完全平方数。
我们先把每个数的完全平方的因子删掉,这样两个数的积是完全平方数就等价于两个数相同。然后DP:\(f_{i,j}\)表示前\(i\)种数放完后有\(j\)组相邻且相同的数。转移时枚举下一种数分成几块(\(k\))和这\(k\)块中有几块插到前面的\(j\)块中(\(l\))。转移:
\[f_{i+1,j+a_{i+1}-k-l}=f_{i,j}\times\binom{a_{i+1}-1}{k-1}\times\binom{j}{l}\times\binom{(\sum_{o=1}^{i-1}a_o)-j+1}{k-l}\]
你没看错,时间复杂度是\(O(n^4)\)的,但是能跑过去。
CODEFORCES掉RATING记 #5的更多相关文章
- CODEFORCES掉RATING记 #1
时间:2017.7.16晚 比赛:Educational Codeforces Round 25 比赛开始前去睡觉了...开始后5min才起来 一进去就点开AB,B先加载好,就先做了B.读完题后发现是 ...
- CODEFORCES掉RATING记 #2
比赛:Codeforces Round #425 (Div. 2) 时间:2017.7.25晚 先orz zjt rank4 一场加300rating A:傻题,判断\(\lfloor\frac{n} ...
- CODEFORCES掉RATING记 #3
比赛:Codeforces Round #426 (Div. 2) 时间:2017.7.30晚 开场先看AB A:给你两个方向,和旋转次数(每次旋转90度),问你旋转方向是什么 B:给你一个字符串,问 ...
- CODEFORCES掉RATING记 #4
比赛:Codeforces Round #427 (Div. 2) 时间:2017.7.31晚 开场发现有6道题,都是水题(可能我只会做水题) A:比较\(2t_1+sv_1\)与\(2t_2+sv_ ...
- Codeforces Round#402(Div.1)掉分记+题解
哎,今天第一次打div1 感觉头脑很不清醒... 看到第一题就蒙了,想了好久,怎么乱dp,倒过来插之类的...突然发现不就是一道sb二分吗.....sb二分看了二十分钟........ 然后第二题看了 ...
- Codeforces Round 480 Div 2 光荣掉分记
痛 痛苦 痛苦啊. 越接近黄名想的越多了啊…… 都说了不要在意rating这破玩意了…… 没出E就算了,策略问题. 居然还FST了: FST个D就算了: FST个A算个**啊. 紧张的时候总会写出一些 ...
- CF480Div2掉分记
rating 1900+参加只有Div2的比赛也记rating了.还以为yyc报名没打会惨惨,原来不交题好像就不算参加.. 本来太晚了不想打,不过有Sinogi大佬带我还是打一打吧,apio之前练练手 ...
- Vue掉坑记
本文章汇总学习过程中掉入和不理解的坑,会持续更新,请保持关注 1.过滤器类 搜索过滤 2.修饰符 修饰符汇总 3.webpack webpack+vuecli打包路径 4.Vue后台管理框架 组件后台 ...
- cf掉分记——Avito Code Challenge 2018
再次作死的打了一次cf的修仙比赛感觉有点迷.. 还好掉的分不多(原本就太低没法掉了QAQ) 把会做的前三道水题记录在这.. A: Antipalindrome emmmm...直接暴力枚举 code: ...
随机推荐
- shell 读取配置文件的方法
原文地址:http://bbs.chinaunix.net/thread-3628456-1-1.html 总结地址:https://www.cnblogs.com/binbinjx/p/568021 ...
- python三:循环语句练习--小白博客
# 打印0-10去掉5 count = - : count += : continue print(count) # 打印0-10的偶数 count = : print(count) count+= ...
- 如何在Github中删除已有仓库或文件
一.删除已有仓库如果我们想要删除Github中没有用的仓库,应该如何去做呢? 进入到我们需要删除的仓库里面,找到“settings”即仓库设置: 然后,在仓库设置里拉到最底部,找到“Danger Zo ...
- JVM原理分析
1 什么是JVM? JVM是Java Virtual Machine(Java虚拟机)的缩写,是通过在实际的计算机上仿真模拟各种计算机功能来实现的.由一套字节码指令集.一组寄存器.一个栈.一个垃圾回收 ...
- Telnet服务器和客户端请求处理
Telnet服务器和客户端请求处理 本文的控制台项目是根据SuperSocket官方Telnet示例代码进行调试的,官方示例代码:Telnet示例. 开始我的第一个Telnet控制台项目之旅: 创建控 ...
- Redis集群搭建过程
我在搭建Redis集群过程中遇到了一些问题,现记录下来. Redis搭建需要在系统中安装好ruby.gem.zlib等工具,可参考https://www.cnblogs.com/wuxl360/p/5 ...
- C# DataTable详解
添加引用 using System.Data; 创建表 //创建一个空表 DataTable dt = new DataTable(); //创建一个名为"Table_New"的空 ...
- 11 The superlative
1 最高级用来表明三个或更多事物之间的关系.最高级是通过在形容词之前加 "the" 并在之后加 "-est",或在形容词之前加 "the most&q ...
- JavaScript lastIndexOf() 方法
<script type="text/javascript"> var str="0000.0000.0000.0000.0000.0000.0000.&qu ...
- pHP生成唯一单号
这几天一直在写个人使用的用户中心,虽然期间遇到不少的问题,但还是一点点的都解决了,也从制作期间学到不少的知识,今天就说一说利用PHP生成订单单的方法. 订单号,大家都不陌生,无论从在网上购物,还是在线 ...