LibreOJ β Round #2 B.贪心只能过样例【Dp+bitset优化】
来源:互联网 发布:线性代数中矩阵求模 编辑:程序博客网 时间:2024/06/06 06:47
B. 贪心只能过样例
内存限制:256 MiB时间限制:1000 ms标准输入输出
题目类型:传统评测方式:文本比较
题目描述
一共有 n个数,第 i 个数 xi 可以取 [ai,bi] 中任意值。
设 S=∑xi2,求 S 种类数。
输入格式
第一行一个数 n。
然后 n 行,每行两个数表示 ai,bi。
输出格式
输出一行一个数表示答案。
样例
样例输入
51 22 33 44 55 6
样例输出
26
数据范围与提示
1≤n,ai,bi≤100
思路:
暴力Dp转移需要O(n^5)的时间复杂度。
考虑到这是类似一个背包的状态,我们设定dp【i】就是一个bool数组,表示i这个数字能否凑出来。
那么对应我们可以O(n^5/64)用bitset优化一下常数。
#include<stdio.h>#include<string.h>#include<bitset>#include<iostream>using namespace std;int L[150];int R[150];bitset<1000050>a,b,tmp;int main(){ int n; while(~scanf("%d",&n)) { for(int i=1;i<=n;i++)scanf("%d%d",&L[i],&R[i]); a.reset(); b.reset(); for(int i=L[1];i<=R[1];i++) { a[i*i]=1; } for(int i=2;i<=n;i++) { b.reset(); for(int j=L[i];j<=R[i];j++) { tmp.reset(); tmp=a<<(j*j); b=(b|(tmp)); } a=b; } printf("%d\n",a.count()); }}
阅读全文
0 0
- LibreOJ β Round #2 B.贪心只能过样例【Dp+bitset优化】
- #515. 「LibreOJ β Round #2」贪心只能过样例 (简单dp+bitset优化)
- #515. 「LibreOJ β Round #2」贪心只能过样例 背包+bitset优化
- 【动态规划22】LiberOJ#515. 「LibreOJ β Round #2」贪心只能过样例(bitset优化)
- 「LibreOJ β Round #2」贪心只能过样例 [bitset]【STL】
- [bitset]#515. 「LibreOJ β Round #2」贪心只能过样例
- LibreOJ 515 贪心只能过样例(dp[bitset优化])
- #515. 「LibreOJ β Round #2」贪心只能过样例
- #515. 「LibreOJ β Round #2」贪心只能过样例
- 「LibreOJ β Round #2」DP 一般看规律
- 【LibreOJ】6177 「美团 CodeM 初赛 Round B」送外卖2 状压DP
- [状压DP]LibreOJ #6177. 「美团 CodeM 初赛 Round B」送外卖2 题解
- LibreOJ β Round #3
- 【并查集+平衡树启发式合并】LibreOJ β Round #2[DP一般看规律]题解
- 516. 「LibreOJ β Round #2」DP 一般看规律 [set/SPLAY] 【STL/数据结构】
- #516. 「LibreOJ β Round #2」DP 一般看规律 set启发式合并
- #516. 「LibreOJ β Round #2」DP 一般看规律 stl容器
- [启发式合并]#516. 「LibreOJ β Round #2」DP 一般看规律
- android Volley 源码分析
- GTS4.1 R1常见问题处理
- Spring(03)——依赖注入
- android 应用 替换 logo 和 应用名字
- 机器学习引擎在公司内网环境发现蠕虫
- LibreOJ β Round #2 B.贪心只能过样例【Dp+bitset优化】
- 我的第一个HBuider项目 ——五子棋
- 转载:vista开发注意事项及解决方案
- nginx源码分析(持续更新)
- 关于PAT(乙级)
- Git学习笔记与IntelliJ IDEA整合
- SpringMVC整合DWR时出现这样的错误Multiple annotations found at this line:
- 笔记-NopCommerce系统架构分析-Ef数据访问
- js通用监听函数