开始的时候暴力了一次,但是在第10个点就超时了.后面才知道这个题实际上是一个组合数的题目.在每个位置我们可以选择放0或者1,并且我们可以统计出每种放法后面数的排列数,然后我们可以决定放0或放1,继续这个过程直到最后.
所以重点是计算出dp[i][j],表示i位中至多有j位1.对这个我们可以采用dp的方法来求dp[i][j]=dp[i-1][j]+dp[i-1][j-1];
也可以使用组合数来求d...
分类:
其他好文 时间:
2015-04-22 09:44:04
阅读次数:
136
来源 usaco codevs1069
题目描述 Description
现在是晚餐时间,而母牛们在外面分散的牧场中。 农民约翰按响了电铃,所以她们开始向谷仓走去。 你的工作是要指出哪只母牛会最先到达谷仓(在给出的测试数据中,总会有且只有一只最快的母牛)。 在挤奶的时候(晚餐前),每只母牛都在她自己的牧场上,一些牧场上可能没有母牛。 每个牧场由一条条道路和一个或多个牧场连接(可...
分类:
其他好文 时间:
2015-04-21 22:53:34
阅读次数:
208
dp[i][j]代表总结点数为i的,高度不超过j的树的种类
dp[i][j] += dp[k][j] * dp[i - k - 1][j];
注意取余的情况
结果为 dp[n][k] - dp[n][k - 1]
/*
ID: 18906421
LANG: C++
PROG: nocows
*/
#include
using namespace std;
const int maxn = ...
分类:
其他好文 时间:
2015-04-21 11:13:40
阅读次数:
116
前言:半年前我对正则表达式产生了兴趣,在网上查找过不少资料,看过不少的教程,最后在使用一个正则表达式工具RegexBuddy时,发现他的教程写的非常好,可以说是我目前见过最好的正则表达式教程。于是一直想把他翻译过来。本文是Jan Goyvaerts为RegexBuddy写的教程的译文,版权归原作者....
分类:
Web程序 时间:
2015-04-21 00:24:32
阅读次数:
162
对于二分出的答案x而言,验证答案等价于将所有边权>x的边赋成1,否则赋成0,然后判断从1到n的最短路是否#include#includeusing namespace std;#define N 1001#define M 10001int n,m,K,Xs[M],Ys[M],Zs[M];int f...
分类:
其他好文 时间:
2015-04-20 12:37:29
阅读次数:
108
首先用Dijkstra做出最短路生成树,设dis[p]为1到p点的最短路长度对于一条不在生成树上的边u -> v,不妨设fa为u、v的lca则一fa到v的路径上的任意点x都可以由u达到,走的方式是1 -> fa -> u -> v -> x,dis'[x] = dis[u] + dis(u, v) ...
分类:
其他好文 时间:
2015-04-17 23:34:19
阅读次数:
176
题目链接:BZOJ - 3888题目分析首先,计算出每个线段在 x 坐标 0 处出现的时间开始点和结束点,就转成了时间轴上的线段。然后就是看每条线段是否被 y 比它小的线段完全覆盖了。注意求出的时间点要离散化,然后应该使用时间轴上的区间来表示,两线段端点重合并不是有共同部分。将所有线段按照 y 从小...
分类:
其他好文 时间:
2015-04-17 10:56:26
阅读次数:
152
给你一组数 1 ~ N,问你能有几种分法,把他们分成2组,2组的和相等。
如果 sum(1 ~ n) 为奇数,直接输出0,负责的话 主要找到 和为 sum / 2的组数 再除以2就是结果
因为N 最大为39 如果单向搜索肯定超时,改成双向的就行了
/*
ID: 18906421
LANG: C++
PROG: subset
*/
#include
#include
#include
#inc...
分类:
其他好文 时间:
2015-04-16 19:56:57
阅读次数:
121
Counting Sundays
Problem 19
You are given the following information, but you may prefer to do some research for yourself.
1 Jan 1900 was a Monday.Thirty days has September,
April, June a...
分类:
编程语言 时间:
2015-04-16 10:27:29
阅读次数:
170
拼了老命用一种贪心的思想把它A了,但是代码写的太烂了,而且时间复杂度为 n ^ 2,我就不多说了,太烂了
之后上网找了一个规律,时间复杂度为 nlogn,而且思路很明确,又写了一遍
代码:(贪心)
/*
ID: 18906421
LANG: C++
PROG: sort3
*/
#include
#include
#include
#include
using namespace std;
...
分类:
其他好文 时间:
2015-04-15 21:26:29
阅读次数:
119