python123反素数_洛谷蓝题解题报告(2020.8.4-2020.8.9)

2020.8.4

P1450 [HAOI2008]硬币购物

考察:背包dp,容斥原理

主要是一个dp容斥的思想:

用背包处理无数量限制的方案值,减去某些硬币超出数量限制的方案值。

减去不合规范方案的方法:

直接将总的钱数减去(该硬币数+1)*该硬币价值进行dp,确保该硬币超出限制。

最后套一下容斥原理的公式即可。

P1438 无聊的数列

考察:线段树,差分

区间求和,区间修改,自然想到线段树,以等差数列的方式修改,自然想到用相邻两数之差(即差分的思想)进行建树,查询时即为1-i的区间和。

几乎是个线段树差分的模板题。

P2279 [HNOI2003]消防局的设立

考察:树形dp

看到树,看到求最小值,自然想到树形dp.

树形dp就是从子孙的状态向父亲的状态推,根据题意,两个消防局之间可以至多空4个点,因此想到设状态为子树中离自己最近的消防局的距离,从1-4不同的状态转移到父节点。

树形dp的准板子题

P1463 [POI2002][HAOI2007]反素数

考察:搜索

题意即为1-N区间内找约数最多的数

看到N的范围,这里用质数筛,用约数公式,用dp都不好使

想到每个数分解成质因数的数量是log级别的

于是筛出1-20之间的素数,暴力枚举每个质数的个数,用约数个数公式比较计算。

一种全新的计算约数个数的思维。

P1490

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值