首页 > 其他分享 >2022/8/16 总结

2022/8/16 总结

时间:2022-08-16 20:34:21浏览次数:67  
标签:总结 10 ch 16 int 2022 mathtt DP getchar

A.数字

  • 第一眼以为是数论,第二眼是 \(\mathtt{DP}\);

  • 本题又名卡常技术综合运用,如何将 30s 的大样例卡进 10s

Solution

  • \(\mathtt{DP+BitSet}\);

  • 如果直接 \(\mathtt{DP}\),时间复杂度最坏会到 \(10^{10}\),肯定过不了。这时就需要请出我们的 \(\mathtt{BitSet}\)了;

  • 开一个 \(\mathtt{BitSet}\) 数组,用每一个二进制位的 \(0/1\) 来表示这个位数表示的数字能否凑出,加法用 \(\mathtt{<<}\) 可以直接解决,复杂度将原来值域的 \(10^6\) 这一层大大优化;

AC code
#include<bits/stdc++.h>
using namespace std;

inline int read(){
	int s=0,f=1;
	char ch=getchar();
	while(!isdigit(ch)){
		if(ch=='-') f=-1;
		ch=getchar();
	}
	while(isdigit(ch)){
		s=s*10+int(ch-'0');
		ch=getchar();
	}
	return s*f;
}

const int N=105;
const int M=1e6+10;

#define re register

int n;
bitset<M>f[N];

int main(){
	freopen("number.in","r",stdin);
//	freopen("number.out","w",stdout);
	n=read();
	int a,b;
	f[0].set(0);
	for(int i=1;i<=n;++i){
		a=read(),b=read();
		for(int j=a;j<=b;++j)
			f[i]|=f[i-1]<<(j*j);
	}
	printf("%d",f[n].count());
	return 0;
}

标签:总结,10,ch,16,int,2022,mathtt,DP,getchar
From: https://www.cnblogs.com/Star-LIcsAy/p/16592871.html

相关文章

  • mysql学习笔记 0816
    单表查询查询所有列:select*from表名;select*fromstudent;查询指定的列:selectid,`name`,age,genderfromstudent;selectid,`name`,agefromstudent;补充:......
  • java.lang.IllegalArgumentException: Plugin [analysis-ik] was built for Elasticse
    完整错误日志java.lang.IllegalArgumentException:Plugin[analysis-ik]wasbuiltforElasticsearchversion7.16.2butversion7.15.2isrunning本人用的是docke......
  • Codeforces 阶段性总结提升
    卡在蓝名有一段时间了,对七月份以来的几场cf做一个总结,以求提升。总结提升:(最重要的点)常卡住的在自己平均实力水平以内的题:贪心。https://codeforces.com/contest/170......
  • 【考试总结】2022-08-15
    背包将\(R_i\)缩小到颜色物品数量级别,于是\(\sumR\len\)。计算框架显然是优先队列弹出时找后继。需要满足后继总和一定大于当前元素,而且转移路径是唯一的按照次小......
  • 2022 .net 疑难杂症
    2022.net疑难杂症1.搭建Quartz启东时报错: ExceptionMessage:"Objectserializertype'Quartz.Simpl.JsonObjectSerializer,Quartz.Serialization.Json'couldnotbe......
  • 【2022-08-16】mysql基础知识(三)
    mysql基础知识(三)约束条件之主键作用:1、单从约束条件上而言主键相当于notnull+unique(非空且唯一)2、主键的功能目前简单的理解为能够加快数据的查询速度,相当于字......
  • 2022-08-16 第二小组 张鑫 实训笔记
    实训三十八天1.学习重点1.单表查询2.分组查询3.分页查询4.多表查询2.学习心得今天主要学习了数据库最重要的一块知识:DQL查询语句,通过学习我了解了很多曾经在学校没......
  • 2022-08-16第七组薛雯匀
    DQL数据库查询语言重点,DQL是我们每天都要接触编写最多也是最难的SQL,该语言用来查询记录,不会修改数据库和表结构。构建数据库创建一张student表:DROPTABLEIFEXISTSst......
  • 2022-08-16 第六组 Myy 学习笔记_DQL数据库查询语言
    DQL数据库查询语言重点,DQL是我们每天都要接触编写最多也是最难的SQL,该语言用来查询记录,不会修改数据库和表结构。构建数据库创建一张student表:DROPTABLEIFEXISTSst......
  • dev report 带统计 非交叉表的总结
    设计报表准备的东西很琐碎,远比简单的gridview怼数据源等,实现起来慢的多.特别是已有的列子不能满足需求的时候,比如交叉报表,列字段无法放在统计字段的右侧,碰到有备......