LibreOJ 515 「LibreOJ β Round #2」贪心只能过样例 题解(bitset,DP)

博客介绍了如何解决一道关于求不同平方和组合的问题,原题链接给出。通过朴素的动态规划方法发现空间和时间都无法通过,然后引入bitset进行优化,将空间复杂度降低,并利用位运算将时间复杂度优化。最终,通过重新定义dp状态,实现快速的集合运算,使得算法在位运算的高效性下变得可行。
摘要由CSDN通过智能技术生成

原题链接:
loj

题意简述

给定 n n n,表示有 n n n个数 x 1 , x 2 . . . x n x_1,x_2...x_n x1,x2...xn,每个在 [ a i , b i ] [a_i,b_i] [ai,bi]之间,求 ∑ i = 1 n x i 2 \sum\limits_{i=1}^{n}x_i^2 i=1nxi2的不同取值个数。

数据

输入
n//n<=100
a1 b1
a2 b2
...
an bn//ai,bi<=100
输出

答案

样例

输入
5
1 2
2 3
3 4
4 5
5 6
输出
26

思路

朴素的 D P DP DP:
考虑到每个数的平方顶多 1 e 6 1e6 1e6,所以我们设 d p [ i

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值