今天的题还是比较水的。。涨自信?第一题。。显而易见的dp:dp[i][j][k][l][m]:表示i位,j个1,k是否顶上界,l个前导零,是否仍在前导零上。转移方程比较复杂,详见代码。第二题比较复杂,大意就是把[ai,bi] 作为区间,落在[1,N]上,互不重叠,长度互不相等。然后dp[j][k]表...
分类:
其他好文 时间:
2014-07-09 17:54:39
阅读次数:
220
线段树应用:
有一个数列,初始时为 a1,a2,… aN (N
1) 将 ai 的值加上 val ;
2) 对于一个区间[l,r],该区间的和。
3) 对于一个区间[l,r],求该区间的最大值。
数据结构:
//Node Type
struct Node{
int left, right;
int max, sum;
} tree[maxn];
/*
tree[k]'...
分类:
其他好文 时间:
2014-07-08 21:31:33
阅读次数:
237
一、计数排序
稳定、 当输入的元素是n 个小区间(0到k)内整数时,它的运行时间是 O(n + k),空间复杂度是O(n)。
const int K = 100;
//计数排序:假设输入数据都属于一个小区间内的整数,可用于解决如年龄排序类的问题
//Input:A[0, ..., n-1], 0 <= A[i] < K
//Output:B[0, ..., n-1], sorting of A...
分类:
其他好文 时间:
2014-07-08 21:24:36
阅读次数:
232
http://acm.hdu.edu.cn/showproblem.php?pid=4722
大致题意:若一个整数的各位数字之和是10的倍数,称这个数为"good number"。给出区间[A,B],求出该区间内"good number"的数的个数。
第一道数位dp,折腾了半天才明白怎么回事。
设dp[site][mod]表示到第site位(由高位向低位)前面各位数字之和对1...
分类:
其他好文 时间:
2014-07-08 20:46:41
阅读次数:
223
区间颜色不一致就更新到底,否则lazy标记
#include
#include
#include
#include
using namespace std;
#define lc l,m,index<<1
#define rc m+1,r,index<<1|1
#define N 100005
#define ll __int64
struct node
{
bool same;
ll c...
分类:
其他好文 时间:
2014-07-08 18:00:56
阅读次数:
226
Cake
Time Limit: 1 Second
Memory Limit: 32768 KB
You want to hold a party. Here's a polygon-shaped cake on the table. You'd like to cut the cake into several triangle-shaped parts for th...
分类:
其他好文 时间:
2014-07-08 15:36:15
阅读次数:
298
这题坑了,我真该吃翔啊,居然一开始方程设错了而且没有去想连列的问题,我真是坑货,做不出就该重新理一下嘛,操蛋,
题意:给了N组x,y,z然后 问你是否存在两个或者两个以上的id,是的 id%x的值在区间[y,z]之间,若有则输出Cannot Take off
否则你懂得
根据题意 那么 列出 :
a*x1 + y1
b * x2 + y2
假设有解的话,那么这两个区...
分类:
其他好文 时间:
2014-07-08 15:20:37
阅读次数:
144
链接:http://poj.org/problem?id=1179
题意:给出一个多边形,多边形的每个顶点是一个数字,每条边是一个运算符号“+”或者“x"。要求的过程如下,手下移除一条边,即这条边不做运算。之后每次移除一条边,将其两边的数字进行对应边的运算,用得到的数字来替代原来的两个点。要求所有边都移除以后得到的最大的答案。
思路:典型的区间DP,在过程中每次操作的处理方式为dp_max[i...
分类:
其他好文 时间:
2014-07-06 08:58:50
阅读次数:
242
1、Swift 无需写break,所以不会发生这种贯穿(fallthrough)的情况。
2、//用不到变量名,可用“_”替换
for _ in 1...power
{
answer *= base
}
3、case 可以匹配更多的类型模式,包括区间匹配(range matching),元组(tuple)和特定类型的描述。
可以这样用case
case 1...3:
natura...
分类:
其他好文 时间:
2014-07-06 00:52:44
阅读次数:
194
Given a collection of intervals, merge all overlapping intervals.For example,Given[1,3],[2,6],[8,10],[15,18],return[1,6],[8,10],[15,18].题目的意思是将相交得区间合并...
分类:
其他好文 时间:
2014-07-05 22:24:49
阅读次数:
177