OJ题目 : click here~
题目分析:X为距离 , 当0C1。 L1C2。L2
设dp[ i ] 为到车站 i 的最少票价 。
则转移方程为dp[ i ] = min(dp[ j ] + 从j 到 i 的票价),j 为所有可以直接到 i 的车站。
要注意第一个数字 大于 第二个数字的情况。的确,题目没有说,从a 到 b。只说了a,b之间。要仔细读题啊,不能想当然。
AC_COD...
分类:
其他好文 时间:
2014-07-22 23:05:52
阅读次数:
294
OJ题目:click here~~
题目分析:n个数,从中取若干个数,和为n的倍数。给出一种取法。
因为只要给出其中一种方案就行,鸽笼原理可以求出取出的数为连续的方案。
关于鸽笼原理,点这里~
直接贴过来:
有n+1件或n+1件以上的物品要放到n个抽屉中,那么至少有一个抽屉里有两个或两个以上物品。
如果你知道这个结论:
a1,a2,a3...am是正整数序列,至少存在整数k和r,...
分类:
其他好文 时间:
2014-07-22 23:04:32
阅读次数:
258
题目链接:
http://poj.org/problem?id=1707
Language:
Default
Sum of powers
Time Limit: 1000MS
Memory Limit: 10000K
Total Submissions: 735
Accepted: 354
D...
分类:
其他好文 时间:
2014-05-01 18:36:32
阅读次数:
385
题目来源:POJ 3882 Stammering Aliens
题意:给你m一个一个字符串 求至少出现m次的最长字符串 可以在字符串中重叠出现
思路:二分长度l 然后从height数组中找长度大于等于l的前缀
#include
#include
#include
using namespace std;
const int maxn = 40010;
char s[maxn];
in...
分类:
其他好文 时间:
2014-05-01 17:36:34
阅读次数:
334
题意:多维的曼哈顿最远距离
思路:做了1,2,3维的,其实就是枚举所有绝对值的可能的表达式
#include
#include
#include
#include
using namespace std;
const int MAXN = 100005;
const int M = 5;
const double inf = 1e200;
struct node{
double x...
分类:
其他好文 时间:
2014-05-01 17:31:01
阅读次数:
283
题意:
给定n长的数组(下标从1-n)(n个人的身高,身高各不相同
问:对于第i个人,他能看到的左边最矮的人下标。(如果这个最矮的人被挡住了,则这个值为0)
还有右边最高的人下标,同理若被挡住了则这个值为0
输出n行,每个人左右2边的下标。
单调队列,对于 front - rear 的队列(注意出队都是在rear,入队也是在rear)
当加入元素x,若这队列是单调递增的,显然q.fro...
分类:
其他好文 时间:
2014-05-01 17:21:43
阅读次数:
429
??
Best Cow Line
Time Limit: 1000MS
Memory Limit: 65536K
Total Submissions: 8579
Accepted: 2629
Description
FJ is about to take his N (1 ≤ N ≤ 2,000) cows to the a...
分类:
其他好文 时间:
2014-04-29 13:48:21
阅读次数:
358
Sliding Window
Time Limit: 12000MS
Memory Limit: 65536K
Total Submissions: 36147
Accepted: 10700
Case Time Limit: 5000MS
Description
An array of size n ≤ 106 i...
题目链接:http://poj.org/problem?id=3254
题意:给出一个n行m列的草地,1表示肥沃,0表示贫瘠,现在要把一些牛放在肥沃的草地上,但是要求所有牛不能相邻,问你有多少种放法。
分析:假如我们知道第 i-1 行的所有的可以放的情况,那么对于第 i 行的可以放的一种情况,我们只要判断它和 i - 1 行的所有情况的能不能满足题目的所有牛不相邻,如果有种中满...
分类:
其他好文 时间:
2014-04-29 13:33:20
阅读次数:
242
最长上升子序列:
有两种基本方法:两个时间复杂度分别为O(n^2)和O(nlogn)。
O(n^2)
容易的出动态规划的递推公式dp[i]=max(dp[j])+1 j=1,2...i-1,dp[i]是以元素i结尾的最长子序列个数。
在O(n^2)的最长上升子序列中可以通过记录每个元素前缀元素位置的方式来得到整个的最长上升子序列。
代码:int LISOn2(int a[],int to...
分类:
其他好文 时间:
2014-04-29 13:24:22
阅读次数:
314