NOI2015 Day1
NOI2015 Day1
程序自动分析
题目描述:给出等式或不等式\(n\)条,问\(n\)条式子是否成立。
solution:
用并查集处理等式,在判断不等式是否成立。
时间复杂度:\(O(n)\) (hash)
软件包管理器
题目描述:维护一棵树,支持两种操作:
1、询问点到根的点权和,并将路径上的点的权值修改为1
2、询问点的子树的点权和,并将子树的点的权值修改为0
solution:
树链剖分可以很好的解决第一种操作,那第二种操作也可以用树链剖分吗?
可以,先求出重儿子,然后用\(dfs\)建线段树,\(dfs\)时先\(dfs\)重儿子,再\(dfs\)其他儿子,这样既能保证重链在线段树上是连续的,每棵子树在线段树上也是连续的。
时间复杂度:\(O(nlogn)\)
寿司晚宴
题目描述:设正整数集合$A,B, A \cap B = Ø \(,使\)\forall x \in A, \forall y \in B,\(有\)x \in [2, n], y \in [2, n], (x, y)=1\(,给定\)n\(,求集合\)A,B\(对的方案数。\)A,B\(可以为\)Ø$
solution:
\(n \leq 500, \sqrt{n} < 23\),小于\(\sqrt{n}\)的质数只有8个(暂且称为小质数,其它质数称为大质数),所以可以用二进制来表示每个数拥有的小质数因子集合。每个数最多只会有一个大质数因子(大质数 $ >\sqrt{n} \(),所以比较好处理。设状态\)f[i][j][k]\(,表示做完第\)i\(个大质数,\)A\(拥有小质数集为\)j\(,\)B\(拥有小质数集为\)k\($(j \& k=0)\) 的方案数。\(f[0]\)表示没有大质数,所以直接对没有大质数因子的数dp就好了。对于有大质数因子,枚举具有该因子的数\(p\),\(p\)拥有的小质数因子集为\(z\) 转移方程如下:
$ f[i][j][k]=d[j][k][0]+d[j][k][1]+f[i-1][j][k] $
$ d[j | z][k][0]=d[j][k][0]+f[i-1][j][k] $
$ d[j][k | z][1]=d[j][k][1]+f[i-1][j][k] $
先解释第二、三条方程,对于\(d[j][k][q]\),\(A\)拥有小质数集为\(j\),\(B\)拥有小质数集为\(k\)的方案数,当\(q=0\)时表示将\(p\)放入\(A\),当\(q=1\)时表示将\(p\)放入\(B\). 其实就是对拥有该大质数因子的数进行dp。然后将dp的结果用一个总的\(f[i][j][k]\)进行dp(前i个大质数因子的dp)
时间复杂度:\(O(2^{16}n)\)
NOI2015 Day1的更多相关文章
- 2015.7.17( NOI2015 day1 )
今天早起做了NOI2015网络同步赛.... 最近NOI是越来越向NOIP靠拢了....但是我还是不会做..... 第一题:程序自动分析 先离散化一下..然后最多就剩20w个数 , 不等于就存起来.. ...
- noi2015 day1 T2软件包管理器
noi2015 软件包管理器 Description Linux用户和OSX用户一定对软件包管理器不会陌生.通过软件包管理器,你可以通过一行命令安装某一个软件包,然后软件包管理器会帮助你从软件源下载软 ...
- noi往届题目泛做
noi2015 Day1 t1 程序自动分析 离散化+并查集 t2 软件包管理器 裸树链剖分 t3 寿司晚宴 状压dp Day2 t1 荷马史诗 哈夫曼多叉树 t2 品酒大会 后缀数组按照hei ...
- noi2015的回忆和教训
前几天偶然打开了bzoj的rank list,突然发现——我竟然掉出了第一版!!! 自从我5月还是6月刷进第一版之后,我曾经天真的以为大概半年之内我还能保留在第一版内吧. 结果仅仅短短的4个月,我就已 ...
- NOI2015考试小结
这次NOI2015有幸获得金牌考进了国家集训队,意味着我的OI退役时间既省选之后有延迟了好几个月,又有了新的目标吧. 先说一下考试之外的感受吧,学军宿舍很牛X,接待NOIers而不提供插座,唯一可以用 ...
- NOI2015滚粗记
我的第一次也是最后一次NOI 好像写的晚了许多……可能一谈到退役总会有些伤感,并不愿去面对…… 一路走来已有5年,虽然我总在说“其实我好好学的时间只有半年”,但那也不过是给自己是蒟蒻找的借口吧...一 ...
- BZOJ 4199: [Noi2015]品酒大会 [后缀数组 带权并查集]
4199: [Noi2015]品酒大会 UOJ:http://uoj.ac/problem/131 一年一度的“幻影阁夏日品酒大会”隆重开幕了.大会包含品尝和趣味挑战两个环节,分别向优胜者颁发“首席品 ...
- BZOJ 4196: [Noi2015]软件包管理器 [树链剖分 DFS序]
4196: [Noi2015]软件包管理器 Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 1352 Solved: 780[Submit][Stat ...
- NOIp2016 Day1&Day2 解题报告
Day1 T1 toy 本题考查你会不会编程. //toy //by Cydiater //2016.11.19 #include <iostream> #include <cstd ...
随机推荐
- lex 和 yacc 的区别与联系
lex负责词法解析,而yacc负责语法解析,其实说白了就是lex负责根据指定的正则表达式,将输入的字符串匹配成一个一个的token,同时允许用户将当前匹配到的字符串进行处理,并且允许返回一个标识当前t ...
- 解决js跨域问题
如何解决js跨域问题 Js跨域问题是web开发人员最常碰到的一个问题之一.所谓js跨域问题,是指在一个域下的页面中通过js访问另一个不同域下 的数据对象,出于安全性考 虑,几乎所有浏览器都不允许这种跨 ...
- 手工制作OTG连接线 让小白实现OTG功能
说到OTG功能,很重要的一点是,现在不少网上的720P高清视频体积已经超过4GB,我的小白也支持exFat及NTFS磁盘格式,可存储播放大于4GB的高清影音文件,也能通过OTG读取播放NTFS格式U盘 ...
- org.springframework.context.event.AbstractApplicationEventMulticaster
private Collection<ApplicationListener<?>> retrieveApplicationListeners(ResolvableType e ...
- H.264视频的RTP荷载格式
Status of This Memo This document specifies an Internet standards track protocol for the Internet ...
- unity 距离某天还有多久
距离某一天还有多久,简单的小例子. using UnityEngine; using System.Collections; using System; public class test : Mon ...
- Dreamweaver PHP代码护眼配色方案
结果展示 [1]主菜单选择编辑->首选项.在分类中选择"字体".设置代码视图的字体为Courier New [2]在分类中选择 "代码颜色",点击 &qu ...
- 图论+dp poj 1112 Team Them Up!
题目链接: http://poj.org/problem?id=1112 题目大意: 有编号为1~n的n个人,给出每个人认识的人的编号,注意A认识B,B不一定认识A,让你将所有的人分成两组,要求每组的 ...
- 用C#实现生成PDF文档
using System; using System.IO; using System.Text; using System.Collections; namespace PDFGenerator { ...
- C#复制数据库,将数据库数据转到还有一个数据库
本文章以一个表为例,要转多个表则可将DataSet关联多个表.以下给出完整代码.包含引用以及main函数与复制函数. 要说明的是,必须先用Sql语句复制表结构,才干顺利的使用下面代码复制数据. usi ...