摘要:
看到最小最大,显然是经典二分 因此只需要枚举最大距离进行check 如果能存在k组或以上能满足组间距离大于等于mid 那么就可以放大,否则缩小 #include<iostream> #include<algorithm> #include<stack> #include<vector> #inclu 阅读全文
posted @ 2020-07-09 23:12
朝暮不思
阅读(109)
评论(0)
推荐(0)
摘要:
只需要用二进制来表示50个数,这样不会超过ll范围 之后按照dfs建树后建线段树维护 #include<iostream> #include<algorithm> #include<stack> #include<vector> #include<cstring> using namespace s 阅读全文
posted @ 2020-07-09 23:10
朝暮不思
阅读(161)
评论(0)
推荐(0)
摘要:
因为题目已知至少要k-2个 假设我们取了k个,使得答案最大 那么因为对于每个数来说至少k-2个数在这位是1 因此我们只要任意选三个数,都能保证在每一位上都有至少一个数为1 #include<bits/stdc++.h> using namespace std; typedef long long l 阅读全文
posted @ 2020-07-09 14:54
朝暮不思
阅读(145)
评论(0)
推荐(0)
摘要:
可以不用建字典树 其实字典树的新增节点大小就是排序后的字符串数组按序与前一个的最大后缀 但是本题的每个字符不只一位并且卡了点内存,考虑建立结构体存储 插入和删除可以维护一个set来找位置,算法比较简单,代码很蠢 #include<bits/stdc++.h> using namespace std; 阅读全文
posted @ 2020-07-09 10:13
朝暮不思
阅读(157)
评论(0)
推荐(0)

浙公网安备 33010602011771号