NOI2015 题解

D1T1 程序自动分析
题目大意:给定 109 个变量和 n 个等于/不等于的关系,判断能否存在一组解满足所有关系

并查集傻逼题,NOIP小孩都会做
离散化一下,然后把相等的都用并查集并起来,判断每对不等关系是不是在同一并查集中就行了

代码没拷回来,懒得再写一遍了

D2T2 软件包管理器
题目大意:给定一棵有根树,每个点有黑白两种颜色,初始都为白色,每次进行以下两种操作:
1.将某个点所在的子树染白
2.将某个点到根路径上的点染黑
求每次操作后有多少点的颜色发生了改变

树剖傻逼题,NOIP小孩都会做
维护一棵有根树,支持链查询,链修改,子树查询,子树修改
显然链剖就行了

代码也没拷回来,懒得再写一遍了

D3T3 寿司晚宴
题目大意:给定 2...n 一共 n1 个数字,第一个人选择一些数字,第二个人选择一些数字,要求第一个人选的任意一个数字和第二个人选择的任意一个数字都互质,求方案数
n500

DP傻逼题,我竟然不会做
首先我们把一个数字看成这样一坨东西:
小于 500 的质数只有 8 个,我们开一个 28 的数组记录每个质数是否出现
大于 500 的质数只会在这个数字中出现最多一个(即一个数字中最多只有一个大于 500 的质因数),我们把数字按照这个质数分类,没有大于 500 的质因数的数每个自成一类
那么显然一类数最多只有一个人能取 两个人都取同一类数的话就会出现不互质的情况
然后我们就可以DP辣!!
fi,j 表示第一个人选择的质数集合为 i ,第二个人选择的质数集合为

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值