重新做了一下这道并查集的题目,关键要点是抓住这种循环的关系和模运算的通性,进而利用加权并查集 #include <cstdio> #include <iostream> #include <algorithm> #include <cstring> using namespace std; cons ...
分类:
其他好文 时间:
2020-07-15 23:39:09
阅读次数:
63
题意:给定一个长度为n的序列,可以修改任何一个字符,求修改后最长的单调严格上升子序列(必须是连续的)。 分析:\((1 <= n < 10^5)\),数据范围很大,不能使用$o(n^2)$的算法。所以我们可以从线性角度考虑,一种常见的套路是枚举修改点,然后求最大值。我们只需要分别求出两端的情况即可, ...
分类:
其他好文 时间:
2020-07-15 23:25:08
阅读次数:
90
题目链接:http://poj.org/problem?id=2482 给出每个点框定的区域,求区域叠加的最大值,可以通过如下算法: 将每个可行点都标记,记录这些点上的权值,维护一个叶结点是一个权值点的线段树,更新的时候注意,由于所有的点都是可行点,所以右边界要在最后删除,遇到同样的x坐标的,优先叠 ...
分类:
编程语言 时间:
2020-07-15 15:23:49
阅读次数:
68
1. 实现过程 swift本身并不支持多继承,但我们可以根据已有的API去实现. swift中的类可以遵守多个协议,但是只可以继承一个类,而值类型(结构体和枚举)只能遵守单个或多个协议,不能做继承操作. 多继承的实现:协议的方法可以在该协议的extension中实现 protocol Behavio ...
分类:
编程语言 时间:
2020-07-15 15:17:56
阅读次数:
79
https://www.luogu.com.cn/problem/P1036 方法二:二进制枚举+素数筛 1 #include<bits/stdc++.h> 2 using namespace std; 3 int a[25]; 4 const int max_n=10000005; 5 int b ...
分类:
其他好文 时间:
2020-07-15 01:26:17
阅读次数:
76
--sql语句的注意 : 1 以 ; 作为结束符 2 不区分大小写 --01 mysql 数据库的操作 -- 链接数据库 mysql -uroot -pmysql -- 不显示密码 mysql -uroot -p mysql -- 退出数据库 exit/quti/ctrl + d -- sql语句最 ...
分类:
数据库 时间:
2020-07-14 16:21:40
阅读次数:
74
这个题方向其实还算好找,就是枚举嘛 (这是一个填空题,所以六个for嵌套也无所谓,因为毕竟emmmm,不看时间) 这里是判断的代码: 需要把数字转化成字符串 void i2s(int x,string &s){//注意是个引用 stringsream ss; ss>>x; ss<<s; } bool ...
分类:
其他好文 时间:
2020-07-13 23:10:09
阅读次数:
92
可以选俩一样的数,但自己异或自己结果是0,不是最优解 预备知识,啥是异或 暴力做法就是两层for循环枚举所有可能 暴力的思路就是 1:首先选定一个Ai(1 <= i <= n) 2:在A1 ~ An中选择一个数Aj,使得Ai ^ Aj的值最大 突破点在第2步 首先Ai一定小于等于31位,也就是0 < ...
分类:
其他好文 时间:
2020-07-13 09:15:13
阅读次数:
57
题目描述链接:https://leetcode-cn.com/problems/path-sum-iii/submissions/ 基本思路:此题思路和LeetCode 1367中的二叉树中的列表一题思路基本类似。即同为通过枚举方法实现。对每一个节点进行枚举,查看是否有以改节点为首的路径满足条件。 ...
分类:
其他好文 时间:
2020-07-12 20:36:10
阅读次数:
64
LINK:骑士 本来是不打算写的 发现这道题在tarjan的时候有一个坑点 所以写出来记录一下。 可以发现图可能是不连通的 且一个连通块中是一个奇环树。 做法:类似tarjan找割点 然后把环给拉出来 枚举环首是否选择 分类讨论即可。 一个坑点是 找环的时候 因为不是建立圆方树所以栈中存有上个连通块 ...
分类:
其他好文 时间:
2020-07-12 20:35:39
阅读次数:
61