题目:《编程之美》P53
若干个乘客从一楼上电梯,电梯出发后,只能停靠在某一层。问电梯停在哪一层,可以让所有乘客走的总楼层数最少?
分析:
电梯可以停在负层,但没有0层。所以程序返回0时,表示出错。这里有个陷阱,因为没有0层,所以在计算时,应该先把负数的楼层加1.当最后算出来的结果小于等于0时,再减去一,才是实际中的负数层数。
int best_stop_floor...
分类:
编程语言 时间:
2015-03-19 11:38:22
阅读次数:
207
题目意思
1、给定有序数组A和关键字key,判断A中是否存在key,如果存在则返回下标值,不存在则返回-1。
2、给定无序数组A和关键字key,判断A中是否存在key,如果存在则返回1,不存在则返回0。
对于1、2问题,我们都可以简单的写出O(n)的从头到尾为的扫描算法,这里就不在累赘,这里我们讨论的是基于二分查找的算法,使其时间在渐进意义上达到O(logn)。
对于有序的数组,很“容...
分类:
编程语言 时间:
2015-03-15 23:46:44
阅读次数:
446
题目地址:http://hihocoder.com/problemset/problem/1122
该题目的关键是2个问题:1点用bfs构造二分图
2:针对二分图的其中S中的结点,遍历找增广路(匈牙利算法求二分图的最大匹配)
每找到一条增广路就多找到了一条匹配。
代码如下:
/*
这题有两点需要注意:1点用bfs构造二分图
2:针对二分图的其中S中的结点,遍历找增广路(匈牙利...
分类:
编程语言 时间:
2015-03-15 23:07:16
阅读次数:
299
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2853Last year a terrible earthquake attacked Sichuan province. About 300,000 PLA soldiers attended the ...
分类:
编程语言 时间:
2015-03-15 16:46:57
阅读次数:
124
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2426For any school, it is hard to find a feasible accommodation plan with every student assigned to a s...
分类:
编程语言 时间:
2015-03-15 13:37:30
阅读次数:
166
1.题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?#include#includeint functionsum(int n){ if(n==1||n==2)return 1; else r...
分类:
编程语言 时间:
2015-03-15 00:34:59
阅读次数:
214
题目链接:http://hihocoder.com/problemset/problem/1122 , 匈牙利算法裸题。 刚刚学的二分匹配,还是要多刷题。 这道题可以直接套模板,我是根据题目上面的来做的,所以就先加了个染色优化,效果一般吧。#include #include #include...
分类:
编程语言 时间:
2015-03-08 22:50:28
阅读次数:
295
题目链接:http://hihocoder.com/problemset/problem/1109,最小生成树 + 堆优化(优先队列)。 可以用优先队列,也可以自己手动模拟堆,为了练手,我两种都试了下,优先队列还是要方便一点,不过堆要快一点。 好好学算法,没有无缘无故的爱,也没有无缘无故减少...
分类:
编程语言 时间:
2015-03-06 00:55:32
阅读次数:
249
题目大意:给定一个长度为n的01串,问有多少个子串满足翻转并取反后和原来一样
定义0=1,0≠0,1≠1,跑Manacher即可
#include
#include
#include
#include
#define M 500500
using namespace std;
int n;
char s[M];
long long Manacher(char str[],int n)
...
分类:
编程语言 时间:
2015-03-03 18:45:22
阅读次数:
198
题目大意:给出一个单向带权图和一个点s,求点u,u到s的最短路径和s到u的最短路径之和最大。
先求一次dijkstra,然后把所有的边反向,权值不变,再求一次dijkstra,将两者加起来求最大的值就是所求的答案。
#include
#include
#include
#include
using namespace std;
const int maxn=1010;
cons...
分类:
编程语言 时间:
2015-03-02 09:36:09
阅读次数:
206