数据结构
liujun90214
这个作者很懒,什么都没留下…
展开
-
POJ 1200 Crazy Search
<br />题目链接:http://acm.pku.edu.cn/JudgeOnline/problem?id=1200<br />题意:<br />N是子串的长度,NC是原串中所含的不同字母的个数,求的是原串中长度为N的不相同的子串有多少个。<br />思路:<br />从前往后依次算n个长度的字符的hash, 看有没有出现过,没有的话,cnt+1.并且放hash表中。计算hash就用nc进制,假如一个串是”12345”,那么分别把它们看成数字的1,2,3,4,5. 假设nc是10的话,计算”1234”的原创 2010-09-16 11:20:00 · 359 阅读 · 0 评论 -
POJ 1588 Reverse Roman Notation
<br />题目链接:http://acm.pku.edu.cn/JudgeOnline/problem?id=1588<br />题目大意:实现一个关于罗马数字的计算器,只包含+ - * /四种运算,每个操作数范围在1~4999。还有几种异常的处理<br />题目分析:这是一个简单的数据结构的模拟题,关键是怎样把阿拉伯数字转化我为罗马数字和怎么样把罗马数字转化为阿拉伯数字;<br />AC代码:<br />#include<cstdio>#include<string>#include<cmath原创 2010-09-17 16:09:00 · 480 阅读 · 0 评论 -
POJ 2166 Heapsort
<br />题目链接:http://acm.pku.edu.cn/JudgeOnline/problem?id=2166<br />题目大意:构造一个大顶堆,并且使该堆进行对排序时交换的次数最多<br />题目分析:递推,每次都把1放到最底端<br />AC代码:<br />#include<cstdio>#include<string>#include<cmath>#include<algorithm>using namespace std;const int MAXN = 500原创 2010-09-22 17:13:00 · 958 阅读 · 0 评论 -
POJ 2051 Argus
<br />题目链接:http://acm.pku.edu.cn/JudgeOnline/problem?id=2051<br />题目大意:<br />给出任务的id(各个任务唯一)和执行间隔(各个任务不唯一);要求按照执行的时间顺序来输出要求的钱几个任务id号;当两个任务在同一个时间执行时,先输出id小的;<br />解题思路:<br />显然是要求按照执行的时间先后顺序来输出结果;首先考虑排序,发现排序的话,根本不能确定每个任务执行多少次能满足题目要求,所以肯定是不可行的;既 然要求按照时间的先后顺序原创 2010-09-21 09:43:00 · 540 阅读 · 0 评论