Codeforces Round #369(div 2)
A;=w=
B:=w=
C:题意:有一排树,有的树已经上色,有的树没有上色,只能给没上色的树上色,一共m种颜色,不同的树上不同的色花费不同,涂完色后,连续颜色的树成为一段。对于给定的段数k,求出最小花费
分析:不是贪心就是dp,这很显然不是贪心
f[i][j][k]表示前i个树,第i个树涂色是j,已经有k段树的最小花费
如果第i个树未染色:f[i][j][k]=min(f[i-1][j][k]+v[i][j],f[i-1][j'][k-1]+v[i][j'])
如果已经染色:f[i][j][k]=min(f[i-1][j][k],f[i-1][j'][k-1]) 注意没花费
注意初始化
D:题意:n个点n条边的有向图,每条边可以改变方向,询问有多少种方法可以使得图中无环
分析:考虑下n个点n条边图的特征
首先能想到的是n个点n-1条边的树加条边成个环
继续想想就会发现不可能存在复环,不然边数就不对了,也就是一个环套树
考虑影响一个环的只有环上的点,所以如果假设环外的点有a个,那么对答案的贡献就是2^a
再考虑环上,一般来说,只要环上一条边方向变了,那环就破坏了,但要注意特殊情况,也就是全部反向和全部不反向,所以如果环上点b个,那么对答案的贡献就是2^b -2
最后要考虑的一点是,有可能是多个连通块,所有答案相乘就可以了
至于实现,可以把所有单向边当作双向边,然后dfs跑一个连通块得出a+b,在跑dfs途中用个栈记录下点,然后重复时就递归栈得出b,所以a和b就都知道了
E:题意:求1-[A(2^n,k)/2^(nk)]的值,要求先约分,再模1e6+3
分析:问题分两个,先是约分,再是模
整理下式子发现,分子分母的质因数只有2,所以最大公约数肯定是2^x
这个x取决于(2^n)!/(2^n - k)!的2的指数
求一个阶乘数中2的指数就那个logn算法 除2除4除8什么的辣
第一个问题解决了
再解决第二个问题,分母可以暴力模,分子头疼的是那k个数乘积的模,因为k很大
注意到mod数很小,所以分子那项乘了mod数后结果就0了,就退出
最后乘上2^x逆元
Codeforces Round #369(div 2)的更多相关文章
- Codeforces Round #369 (Div. 2)---C - Coloring Trees (很妙的DP题)
题目链接 http://codeforces.com/contest/711/problem/C Description ZS the Coder and Chris the Baboon has a ...
- Codeforces Round #369 (Div. 2) C. Coloring Trees(dp)
Coloring Trees Problem Description: ZS the Coder and Chris the Baboon has arrived at Udayland! They ...
- Codeforces Round #369 (Div. 2) C. Coloring Trees(简单dp)
题目:https://codeforces.com/problemset/problem/711/C 题意:给你n,m,k,代表n个数的序列,有m种颜色可以涂,0代表未涂颜色,其他代表已经涂好了,连着 ...
- Codeforces Round #369 (Div. 2) E. ZS and The Birthday Paradox 数学
E. ZS and The Birthday Paradox 题目连接: http://www.codeforces.com/contest/711/problem/E Description ZS ...
- Codeforces Round #369 (Div. 2) D. Directed Roads 数学
D. Directed Roads 题目连接: http://www.codeforces.com/contest/711/problem/D Description ZS the Coder and ...
- Codeforces Round #369 (Div. 2) C. Coloring Trees 动态规划
C. Coloring Trees 题目连接: http://www.codeforces.com/contest/711/problem/C Description ZS the Coder and ...
- Codeforces Round #369 (Div. 2) B. Chris and Magic Square 水题
B. Chris and Magic Square 题目连接: http://www.codeforces.com/contest/711/problem/B Description ZS the C ...
- Codeforces Round #369 (Div. 2) A. Bus to Udayland 水题
A. Bus to Udayland 题目连接: http://www.codeforces.com/contest/711/problem/A Description ZS the Coder an ...
- Codeforces Round #369 (Div. 2) D. Directed Roads —— DFS找环 + 快速幂
题目链接:http://codeforces.com/problemset/problem/711/D D. Directed Roads time limit per test 2 seconds ...
- Codeforces Round #369 (Div. 2) A. Bus to Udayland (水题)
Bus to Udayland 题目链接: http://codeforces.com/contest/711/problem/A Description ZS the Coder and Chris ...
随机推荐
- Webview加载本地js、图片的方法
在项目开发中经常会将比较大的js.图片.css等放到app中,而html放服务器,这样在使用时流量较少,加载也比都放服务器上快,其实方法也比较多,网上搜了很久都没结果. 一种是获取服务器返回的html ...
- 【转】input输入框中光标高度的变化问题
原文地址:http://blog.csdn.net/luochao_tj/article/details/17755457 input[type='text']文本框光标高度在有输入内容和为空时发生很 ...
- 烂泥:通过binlog恢复mysql数据库
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 在上一篇文章,我们讲解了有关mysql的binlog日志的基础知识.这篇文章,我们来讲解如何通过mysql的binlog日志来恢复数据库. 在使用bin ...
- Linux计时器
Linux中, 系统为每个系统都维护了三种计时器,分别为: 真实计数器, 虚拟计时器以及实用计时器, 一般情况下都使用真实计时器 getitimer()/setitimer() //读取/设置内部计时 ...
- LInux_System_Call_INT_80h
Int 80h Website (Copy from Linux-System-Call) List of Linux/i386 system calls Copyright (C) 1999-200 ...
- 第五章项目:QuickHit
需求概述: 根据输入速率和正确率将玩家分为不同级别,级别越高,一次显示的字符数越多,玩家正确输入一次的得分也越高.如果玩家在规定时间内完成规定次数的输入,正确率达到规定要求,则玩家升级(为了简单起见, ...
- JAVA 字符串驻留池
一切从String str = new String("abc")说起... 这行代码形式上很简单,其实很复杂.有一个常见的Java笔试题就是问上面这行代码创建了几个Stri ...
- java 22 - 22 多线程之 匿名内部类的方式实现多线程
首先回顾下之前的匿名内部类: 匿名内部类的格式: new 接口或者接口名(){ 重写方法 }; 本质:是该类或者接口的子类对象 匿名内部类方式使用多线程 1.new Thread(){代码-}.sta ...
- C#的一维数组和二维数组定义方式:
一维数组: //一维数组定义与初始化 ,, };//第一种方式 , , }; //第二种方式 int[] one3; //第三种方式 one3=,,}; 二维数组: //二维数组定义与初始化 //不规 ...
- HTML 学习笔记 CSS(选择器)
CSS元素选择器 最常见的CSS 选择器就是元素选择器 换句话说 文档的元素就是最基本的选择器 如果设置HTML样式 选择器通常就是某个HTML元素 比如p h1 em a 甚至可以是HTML本身 h ...