最近两场比赛 CF 285 & TC 646
Codeforces 285
这场rating又掉了,好在只掉了十多。
题目比较水,但是我比赛时居然只艰辛地过了前两道。
504A
由于图是森林,所以一定有度为1的点,把这些点删了后图还是森林。然后就完了。比赛的时候居然把森林当成了树,交了3次才过。
504B
把排列表示为一个n元组\( (p_0, p_1, \cdots, p_{n - 1})\),其中\(0 \leqslant p_i \leqslant i \),其排名为 \[\sum_{i = 0}^{n - 1}{p_ii!}\]。
把\(p, q\)转化成这种形式,加起来再转换回去就完了。
504C
先算出首位相同的部分,假设为\(L\),那么显然左右端点分别在首尾这两个区域内的区间都应该被计入答案,这部分是\((L + 1)^2\)。
如果两端点都未和首尾相同的区域拼接很显然是不行的。
所以剩下的我们只需要算出左端点和首部的区域拼接(在L + 1)时右端点的可能情况 ,以及右端点和尾部区域拼接(在n - L)时左端点的可能情况。
显然一个可行区间扩大后依然是可行的,所以左右端点可能的情况都在连续的一段内。
然后再求出中间位置的对称半径,以及首尾未被覆盖的最大长度,分情况讨论就行了。
复杂度\(O(n)\)
504D
水题,把十进制转成二进制然后拿bitset做高斯消元,记一下每一行被那些行消过。感觉要T交上去跑得飞快。
504E
先树链剖分,然后每条链单独看作一个字符串。由于有从上至下和从下至上两个方向,所以还要将每个串反向复制一遍。
\(O(n\lg{n})\)把后缀数组建出来,height处理出来,ST预处理好。
然后对每次询问,就可以把这两条路径分别分成\(O(\lg{n})\)段,每两段的LCP都可以在\(O(1)\)时间内得到。用两个指针维护当前比较到这两条路径的哪段就行了。
由于每次比较后,假如还需继续比较,则比较的两段一定满足有一段是另一端的前缀,所以指针一定可以后移。故单次询问的复杂度为\(O(\lg{n})\)。
Topcoder SRM 646
TheConsecutiveIntegersDivOne
题目保证数两两不同,所以稍有常识的人都会发现按照大小排序后取连续k个不亏,并且中间的那个数可以不变。
TheGridDivOne
我感觉这场的600挺可做啊。把所有关键点即有障碍物的点和原点抓出来,把网格分成了\(O(n^2)\)个区域,把每个区域的四个角拿出来跑个最短路就可以了。
然后,在最后10分钟调过了样例(被kawigi坑的,用它跑死活过不了最后一个样例,结果发现是因为每次调用后数组和STL容器没有清空,TC评测时可不是这样的),然后很悲剧地FST。
结果发现是第95个点TLE(总共95个点)……紧接着我意识到了什么。我没有把调试时候加的printf语句删掉,所以输出超时了!这个逗比错误把我整整一道题给废了。
吐槽:TC的arena用着觉得不科学啊,装了kawigiedit还是巨难用,根本就没有调试这个功能。下次我要装个fileedit试试。
1000pt
坑(待我看了题再说)……
UPD(20150117) 刚刚看了题。还不会。只是有点想法:自己打的两场都赢,所以分数变成myScore + 6,然后问题变成最小化大于这个值的个数。由于打了比赛后每个队的分数不会减小,所以已经超了的可以随便搞,让它们尽量赢还没超的。也许可以贪心乱搞?
Challenge
好在今天我开了杀戒(以前从来没有在TC上challenge过别人),成功cha了两份代码,弥补了一点第二题逗比错误造成的损失。都是第一题,枚举区间左端点都写成了i + k < n。
最近两场比赛 CF 285 & TC 646的更多相关文章
- Codeforces Round #164 (Div. 2) A. Games【暴力/模拟/每个球队分主场和客场,所有球队两两之间进行一场比赛,要求双方球服颜色不能相同】
A. Games time limit per test 1 second memory limit per test 256 megabytes input standard input outpu ...
- CountDownLatch 使用(模拟一场比赛)
java.util.concurrency中的CountDownLatch,主要用于等待一个或多个其他线程完成任务.CountDownLatch在初始化时,会被赋一个整数,每次执行countDown( ...
- 两场CF
分别是正规赛998和虚拟赛935 998我神速A了前三题之后挂了,第四题是一个打表找规律题然而我并没有想到打表... 然后靠着速度拿到470名,上了蓝名.这告诉我们:输入数据是一个数/两个数(noip ...
- acm的第一场比赛的总结
6.4-6.5号很激动的去湖南湘潭打了一场邀请赛,这是第一次acm的旅程吧.毕竟大一上册刚开始接触c,然后现在就能抱着学长的大腿(拖着学长的后腿)打比赛,也是有一点小小的激动. 第一天很早就起床了,由 ...
- 神贴真开眼界:为什么很多人倡导重视能力和素质,但同时对学历有严格要求?——代表了上一场比赛的输赢,招聘成本很重要。如果上一场游戏失败了,尽量让自己成为当前群体的尖子。学历只是其中的一个作品而已,但学历代表了学生时代为之做出的牺牲。人群自有偏向集中性 good
对于软件工程师职位,没学历没关系,如果真觉得自己才高八斗,请在简历里附上 github项目链接或者 appstore/google play上你的作品.如果学历比别人低,那么想必是把时间和精力用在了其 ...
- 6、Cocos2dx 3.0游戏开发的基本概念找个小三场比赛
重开发人员的劳动成果,转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/27689713 郝萌主友情提示: 人是习惯的产物,当你 ...
- 连做两场goodbye2016是怎样的体验.....
挖个坑 ..... 听q巨随机化A题和最后的splay/set 还有另外一位神犇的最大回文子矩阵.... 感觉真的好爽啊,神犇能把很难的题目转化为简单的模型----- ///跨年打码是怎样一种体 ...
- 【题解】CF#285 E-Positions in Permutations
挺有收获的一道题ヾ(◍°∇°◍)ノ゙ 恰好为 m ,这个限制仿佛不是很好处理.一般而言,我所了解的恰好为 k 的条件,不是用组合数 / dp状态转移 / 斜率二分就只剩下容斥了.我们可以先处理出 nu ...
- 【cf比赛记录】Codeforces Round #606 (Div. 2, based on Technocup 2020 Elimination Round 4)
比赛传送门 只能说当晚状态不佳吧,有点头疼感冒的症状.也跟脑子没转过来有关系,A题最后一步爆搜没能立即想出来,B题搜索没有用好STL,C题也因为前面两题弄崩了心态,最后,果然掉分了. A:简单数学 B ...
随机推荐
- Trie和Ternary Search Tree介绍
Trie树 Trie树,又称字典树,单词查找树或者前缀树,是一种用于快速检索的多叉树结构,如英文字母的字典树是一个26叉树,数字的字典树是一个10叉树. Trie树与二叉搜索树不同,键不是直接保存在节 ...
- POJ 2044 Weather Forecast
意甲冠军:有一2*2云,而一个4*4范围.在当天密布区必须有雨.有云4招式种类 .期间希望不要下雨,并且一个地方不能有连续7天没下雨. 思路:首先解决一个地方不能有连续7天没下雨的情况,要让地图上的全 ...
- 大数据笔记05:大数据之Hadoop的HDFS(数据管理策略)
HDFS中数据管理与容错 1.数据块的放置 每个数据块3个副本,就像上面的数据库A一样,这是因为数据在传输过程中任何一个节点都有可能出现故障(没有办法,廉价机器就是这样的) ...
- 常用PC服务器LSI阵列卡配置
通常,我们使用的DELL/HP/IBM三家的机架式PC级服务器阵列卡是从LSI的卡OEM出来的,DELL和IBM两家的阵列卡原生程度较高,没有做太多封装,可以用原厂提供的阵列卡管理工具进行监控:而HP ...
- css实现鼠标移上去变大,旋转,转别人的额
<!doctype html><html><head> <meta charset="utf-8"> <title>CS ...
- ASP.NET数据绑定控件简介
•数据绑定分为数据源和数据绑定控件两部分(①数据绑定控件通过数据源获取和修改数据②数据绑定控件通过数据源隔离数据提供者和数据使用者)数据绑定控件→数据源→数据库•数据源:SqlDataSource(连 ...
- (二)Knockout - ViewModel 的使用
计算属性 实际应用中,我们通常需要对数据进行加工 如: 指定日期格式,将数字相加... 等,此时可使用ko.computed().当数据发生改变是,KO会使用computed重新计算 DEMO1 更改 ...
- oracle单行函数之通用函数
NVL (a,b) --当a=null时,返回b,否则返回a NVL2 (a, b, c) -- 当a=null时,返回c,否则返回b NULLIF (expr1, expr2) --当a=b时,返回 ...
- ComboBox相关操作
取组合框文本示例: 1 void ShowDlgWage::OnCbnSelendokCombo1() { // TODO: 在此添加控件通知处理程序代码 CString str; int i; i ...
- startActivityForResult
Activity提供了startActivityForResult(Intent intent, int requestCode)方法打开新的Activity,新的Activity关闭后会向前面的Ac ...