尺取法
Werky_blog
这个作者很懒,什么都没留下…
展开
-
poj 3320 Jessica's Reading Problem(尺取)
题目:http://poj.org/problem?id=3320题意:有n本数,要求子序列拥有全部种类数,求最短子序列长度。思路:尺取,set判断共有多少种,map记录还有没有这本书。#include<iostream> #include<map> #include<set> #include<cstring> #include<cmath&...原创 2018-04-22 23:11:23 · 120 阅读 · 0 评论 -
poj 2739 Sum of Consecutive Prime Numbers(素数打表,尺取)
题目:点击打开链接题意:从素数表中找一段区间使区间和等于n,输出这样的区间数。#include<iostream> #include<map> #include<set> #include<cstring> #include<cmath> using namespace std; typedef long long ll; const i...原创 2018-04-23 00:17:51 · 148 阅读 · 0 评论 -
hdu 6231 K-th Number(二分+尺取)
题目:点击打开链接题意:给一个长度为n的数组a,取一个子区间的第k大,区间长度小于k的区间忽略。把所有子区间的第k大放入b数组(可以重复放,所以b数组要比a数组大很多,所以不是要真的去模拟),求这个b数组的第m大。思路:显然答案是数组a中的一个数。所以可以把a全放到b中然后排序,二分查找答案。这个答案可以判断一下(尺取法):答案设为x,cnt表示区间 [ l, r ]内大于等于x的个数。当cnt&...原创 2018-04-20 15:11:25 · 191 阅读 · 0 评论 -
长安大学第三届ACM-ICPC程序设计竞赛 C (二分+尺取)
题目:点击打开链接题意:有很多子区间,问你子区间第二大取出来,组成数组的第k大是多少。和hdu 6231 一样。#include<bits/stdc++.h> using namespace std; typedef long long ll; const int maxn=1e5+30; int a[maxn],b[maxn]; ll n,k; ll check(int x){ ...原创 2018-04-20 15:39:55 · 161 阅读 · 0 评论 -
poj 3061 Subsequence (尺取)
题目:点击打开链接题意:子序列加起来大于s,求最小子序列长度。#include<iostream> using namespace std; typedef long long ll; const int maxn=1e5+30; const int inf=0x3f3f3f3f; int a[maxn],b[maxn]; int main(){ int t; cin...原创 2018-04-20 17:12:23 · 103 阅读 · 0 评论