05 2018 档案

摘要:【题解】 开26棵线段数,记录区间内每种字母的出现次数,修改的时候就用区间设置为一个数操作即可。同时也有平衡树做 1 #include<cstdio> 2 #include<algorithm> 3 #include<cstring> 4 #define LL long long 5 #define 阅读全文
posted @ 2018-05-25 18:38 Driver_Lao 阅读(152) 评论(0) 推荐(0) 编辑
摘要:【题解】 DP题,用f[i][j]表示以i为最后一个数、以j为倒数第二个数的等差数列的长度。转移显然,不过在寻找满足a[i]-a[j]=a[j]-a[k]的k的时候,要注意随着i的递增,k其实是递减的,所以总的复杂度可以降到n^2. 1 #include<cstdio> 2 #include<alg 阅读全文
posted @ 2018-05-24 13:58 Driver_Lao 阅读(290) 评论(0) 推荐(0) 编辑
摘要:【题解】 二分一个最大值,check一下分出来的组数是否小于等于k即可。 1 #include<cstdio> 2 #include<algorithm> 3 #define LL long long 4 #define rg register 5 #define N 200010 6 int n, 阅读全文
posted @ 2018-05-24 12:38 Driver_Lao 阅读(301) 评论(0) 推荐(0) 编辑
摘要:【题解】 找一下两个面积s1,s2的2和3的因子数,把他们除掉,如果s1,s2不相等,就是-1,否则可以用s1,s2的2和3的因子数计算答案。 1 #include<cstdio> 2 #include<algorithm> 3 #define LL long long 4 #define rg r 阅读全文
posted @ 2018-05-22 21:48 Driver_Lao 阅读(211) 评论(0) 推荐(0) 编辑
摘要:【题解】 在考场上A掉的题。 把美味度排个序,然后按照价格p为权值建立主席树,把每个果汁按照拍好的顺序添加进去。主席树上维护总升数cnt以及总价格sum。对于每个询问,我们二分一个美味值,check的时候去主席树上查找大于等于这个美味值的果汁中购买L升的价格即可。 1 #include<cstdio 阅读全文
posted @ 2018-05-21 17:03 Driver_Lao 阅读(259) 评论(0) 推荐(0) 编辑
摘要:【题解】 模拟就行,类似进制转换 1 #include<cstdio> 2 #include<algorithm> 3 #include<cstring> 4 #define N 200010 5 #define rg register 6 using namespace std; 7 int n, 阅读全文
posted @ 2018-05-17 19:18 Driver_Lao 阅读(224) 评论(0) 推荐(0) 编辑
摘要:【题解】 可以发现10的因数除了1和10之外只有2和5了,那么走过的路径上各个数字的2的因数个数之和、5的因数个数之和中较小的一个即是答案。这样的话DP即可。同时需要注意有0的情况,有0的时候有一个答案为1,要和前面求出的答案取较小值。 1 #include<cstdio> 2 #include<a 阅读全文
posted @ 2018-05-17 13:29 Driver_Lao 阅读(258) 评论(0) 推荐(0) 编辑