Codeforces Round 1152 (div. 2)
奇差。ABC三题,排名400。
首先是策略问题。
由于第一眼看到D的时候感觉不太会做,于是去看E。
一看到E这不欧拉回路吗,可做可做,
于是——我不会欧拉回路!
手推。推了半天啥也没弄出来,
于是大概按照样例琢磨了一个小小的(错的)思路,
于是——WA!
想了想发现有个反例,也不会改,
想回去做D,但是——the contest has ended!!!
我怎么没看时间呢???
啊啊啊。。。
D多么简单。。。
1152d:首先把状态改变为(i,j),表示到了第i个位置,打开的左括号有多少。
那么我们就考虑dp。
dp状态就是dp(i,j)表示以(i,j)这个状态开始的子树中最多有多少条边。
转移的时候枚举走dp(i+1,j+1)和dp(i+1,j-1)。
然后我们观察在哪些地方才去取一个到儿子的边。
根据trie的形状,我们取i为奇数的到儿子的边更合算一点。
那就做完了。
大家都是这个做法。只是有人用了记忆化搜索。
1152e:首先考虑建图,就是把b[i]和c[i]连无向边。
那么肯定先要离散化。
那么问题就被转化成这个图能不能求一条欧拉路径。
其实写起来非常简单。。。
就是如果当前这条边并没有被用过,直接走上去,
直到跑完再输出走到的那个顶点。
我也不知道这样为什么是对的。
只是考完看了刘汝佳的书才知道的。
大家也都是这个做法。还有人贴了板子?
中间遇到的问题
d:我在考试中几乎所有的时间都在e上,所以d就没有时间考虑。考完发现其实不难。
wa4:这个是贪心错了在偶数层取到儿子的边了。
e:考试的时候不会欧拉路径,只好手推,但想不出一个比较对的做法
wa5:这个是没有考虑可能有欧拉回路的情况。
wa8:这个是欧拉路径求错了的情况。
tle11:原来我只是用了vector存图,那么就会发生每到一个节点就重新遍历一遍这个点的所有边的情况,那么重复走两个节点的情况就炸了。后改用multiset存图,每走过一条边就删掉,不会出现重复的情况。
Codeforces Round 1152 (div. 2)的更多相关文章
- Codeforces Round #366 (Div. 2) ABC
Codeforces Round #366 (Div. 2) A I hate that I love that I hate it水题 #I hate that I love that I hate ...
- Codeforces Round #354 (Div. 2) ABCD
Codeforces Round #354 (Div. 2) Problems # Name A Nicholas and Permutation standard input/out ...
- Codeforces Round #368 (Div. 2)
直达–>Codeforces Round #368 (Div. 2) A Brain’s Photos 给你一个NxM的矩阵,一个字母代表一种颜色,如果有”C”,”M”,”Y”三种中任意一种就输 ...
- cf之路,1,Codeforces Round #345 (Div. 2)
cf之路,1,Codeforces Round #345 (Div. 2) ps:昨天第一次参加cf比赛,比赛之前为了熟悉下cf比赛题目的难度.所以做了round#345连试试水的深浅..... ...
- Codeforces Round #279 (Div. 2) ABCDE
Codeforces Round #279 (Div. 2) 做得我都变绿了! Problems # Name A Team Olympiad standard input/outpu ...
- Codeforces Round #262 (Div. 2) 1003
Codeforces Round #262 (Div. 2) 1003 C. Present time limit per test 2 seconds memory limit per test 2 ...
- Codeforces Round #262 (Div. 2) 1004
Codeforces Round #262 (Div. 2) 1004 D. Little Victor and Set time limit per test 1 second memory lim ...
- Codeforces Round #371 (Div. 1)
A: 题目大意: 在一个multiset中要求支持3种操作: 1.增加一个数 2.删去一个数 3.给出一个01序列,问multiset中有多少这样的数,把它的十进制表示中的奇数改成1,偶数改成0后和给 ...
- Codeforces Round #268 (Div. 2) ABCD
CF469 Codeforces Round #268 (Div. 2) http://codeforces.com/contest/469 开学了,时间少,水题就不写题解了,不水的题也不写这么详细了 ...
随机推荐
- 5分钟入门git模式开发
本文由云+社区发表 作者:唐维黎 导语 基于gui工具TortoiseGit让你快速进入git开发模式. 目前项目已逐步从svn移步到git开发模式,其中也针对git统一协议了适合git的开发规范, ...
- 流式大数据计算实践(7)----Hive安装
一.前言 1.这一文学习使用Hive 二.Hive介绍与安装 Hive介绍:Hive是基于Hadoop的一个数据仓库工具,可以通过HQL语句(类似SQL)来操作HDFS上面的数据,其原理就是将用户写的 ...
- Docker搭建ElasticSearch+Redis+Logstash+Filebeat日志分析系统
一.系统的基本架构 在以前的博客中有介绍过在物理机上搭建ELK日志分析系统,有兴趣的朋友可以看一看-------------->>链接戳我<<.这篇博客将介绍如何使用Docke ...
- SpringCloud系列——Zuul 动态路由
前言 Zuul 是在Spring Cloud Netflix平台上提供动态路由,监控,弹性,安全等边缘服务的框架,是Netflix基于jvm的路由器和服务器端负载均衡器,相当于是设备和 Netflix ...
- ORM的增删查
using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; usin ...
- Java集合类源码解析:ArrayList
目录 前言 源码解析 基本成员变量 添加元素 查询元素 修改元素 删除元素 为什么用 "transient" 修饰数组变量 总结 前言 今天学习一个Java集合类使用最多的类 Ar ...
- 微信公众平台设置URL和Token接收接口事件推送
最近做对接微信闪开发票-微信发票名片,里面有个接收用户提交抬头接口是微信推送事件到公众号后台,该事件将发送至开发者填写的URL(登录公众平台进入[开发者中心设置]). 开发者可通过事件推送完成数据统计 ...
- 视频拉流 Linux安装FFmpeg
1 下载最新源码包并解压 $ wget http://ffmpeg.org/releases/ffmpeg-3.1.3.tar.bz2 $ tar jxvf ffmpeg-.tar.bz2 2安装ya ...
- HTTPS 站点的性能优化
HTTPS 站中的几大难题 性能,包括: HTTPS需要多次握手,因此网络耗时变长,用户从HTTP跳转到HTTPS需要一些时间: HTTPS要做RSA校验,这会影响到设备性能: 所有CDN节点要支持H ...
- MATLAB 中 ksvdbox和ompbox 工具箱的安装和使用
下载工具箱 链接: http://www.cs.technion.ac.il/~ronrubin/software.html 下载好工具箱之后, 要将解压后的文件夹添加到MATLAB的安装目录下的to ...