
STL
CHN_JZ
爆0 forever
展开
-
bitset简介
原blog链接作用stl黑科技之一bitset,是可以自定长度的“二进制数”(当然可以充当bool使用)。可以让时间复杂度除以32或64,比如O(1e9)O(1e9)的程序除以32就变成O(3∗1e7)O(3*1e7),暴力变标程!底层实现底层实现挺简单的吧,就是把unsigned int(unsigned long)或者unsigned long long用来充当32(64)个二进制位,从而让复杂转载 2017-07-07 07:55:11 · 1063 阅读 · 1 评论 -
[bitset] POJ 2443——Set Operation
题目传送门博主又来水blog啦 博主上一篇blog好像有提到这个bitset,其实那是博主并不是很懂,所以向Matchperson学习了这个操作。题目概述给定nn个集合。 在提出QQ个询问,询问x,yx,y在nn个集合中出现的集合有交集。解题思路读入的时候标记一下,然后并起来判断有没有1。 所以就可以bitset乱搞。 bitset大法好啊。#include<cstdio> #include原创 2017-07-07 08:43:15 · 694 阅读 · 1 评论 -
[STL乱搞]51 Nod——1573 美丽的集合
[STL乱搞]51 Nod——1573 美丽的集合题目梗概在多重集之中,同一个元素可以出现多次。我们现在有n个多重集合,第i个集合最开始都有一个元素ai(1≤i≤n)。定义多重集合的价值为子集中不同的和的个数。现在我们有两种操作:1、合并最开始时多重集合i现在所在的多重集合与多重集合j现在所在的多重集合,成为一个新的多重集合。2、询问最开始多重集合i现在所在多重集合的价值。n<=1000n<=100原创 2017-10-06 16:32:55 · 1571 阅读 · 0 评论 -
[bitset]#515. 「LibreOJ β Round #2」贪心只能过样例
题目梗概一共有nn个数,第ii个数xixi可以取[ai,bi] [ai,bi]中任意值。 设S=∑xi2S=\sum xi^2,求SS 的种类数。解题思路暴力枚举每个数字的取值,用bitset维护F数组表示方案。让我算一下复杂度O(ai3∗n2/32)O(ai^3*n^2/32)O(312500000)O(312500000)1s1s时限会TLE?这题再次展现LOJ评测机的速度#include<c原创 2017-10-11 21:24:36 · 846 阅读 · 1 评论 -
[启发式合并]#516. 「LibreOJ β Round #2」DP 一般看规律
[启发式合并]#516. 「LibreOJ β Round #2」DP 一般看规律题目梗概给定一个长度为 n 的序列 a,一共有 m 个操作。 每次操作的内容为:给定 x,y,序列中所有 x 会变成 y。在每次操作后,求出相同元素的最近距离是多少。解题思路把一个数字变成另一个数字的过程看成两个坐标集合合并的过程。用map离散之后,用set进行启发式合并就可以了。在合并的同时更新答案。#includ原创 2017-10-11 21:31:12 · 772 阅读 · 0 评论