ACM题库
文章平均质量分 58
weber-xie
这个作者很懒,什么都没留下…
展开
-
POJ 1521 Entropy
Huffman树:题目链接:POJ1521#include#include#includeusing namespace std;int t[100],len;char c[1000];int huffman(){ int a,b,c,sum=0; priority_queue,greater >q;//priority_queue,greater > q;原创 2013-06-12 23:48:53 · 1236 阅读 · 0 评论 -
poj 3069Saruman's Army 贪心
#include#include#includeusing namespace std;#define MAX_N 1002int x[MAX_N];int r,n;int main(){ while(cin>>r>>n && r+n != -2) { for(int i=0;i<n;i++) cin>>x[i]; sort(x,x+n); int i=0,a原创 2014-04-16 23:19:15 · 954 阅读 · 0 评论 -
Topcoder TriviaGame 动态规划
题目“:Problem Statement You and your friends have gotten together for a Trivia night at the local pub. Each question is worth a number of points; the i-th element of poin原创 2013-11-09 21:22:47 · 1117 阅读 · 0 评论 -
利用运算符重载将结构体排序--uva11729
在国内上uva很慢,还好bnuoj有uva的题,很有爱(⊙o⊙)哦,代码参考自刘汝佳的训练指南题目链接:点击打开链接#include#include#includeusing namespace std;#define N 1002struct Job{ int j,b; bool operator < (const Job& x) const{//运算符重载! re原创 2013-11-06 19:54:21 · 2000 阅读 · 0 评论 -
Codeforces Round #207 (Div. 2) - C
题目搞懂了,就是优化啊,在 test11 TLE两次,看人家的解法,优化的很精巧#include#includeusing namespace std;#define MN 300005int ans[MN],p[MN];int getl(int x){ int i = x,j; while(x != p[x]){ x = p[x]; } while(i != p原创 2013-10-16 21:42:31 · 915 阅读 · 0 评论 -
Codeforces Round #206 (Div. 2) - b
题目链接:http://codeforces.com/contest/355/problem/B很水的题,直接计算比大小就行,一开是纠结在分析4种票怎么分配了。。。汗~~~~#include#includeusing namespace std;#define N 300002int a[N],b[N],l[N],r[N],x[N];int main(void){原创 2013-10-15 22:39:07 · 816 阅读 · 0 评论 -
zoj 1730 / poj 1455 Crazy Tea Party
这阵子都没怎么写代码,由于开学,忙于各种琐碎的事情,现在静下来了开始跟着暑假的节奏刷题了。 这道题一开是没看清题目~在寝室刷题就是效率不高。。。 后来才知道,题目意思是,一个环形序列,1minute可以交换相邻的两个位置,问逆序所需的最小时间是多少。 如果不是环形的话那就好办了,就是个冒泡。 非环形时:原创 2013-09-03 12:37:33 · 1165 阅读 · 0 评论 -
zoj 2277 The Gate to Freedom
N^N = X ---> Nlog10(N) = log10( X ) ----> X的最高位为 10^( Nlog10(N) - (long long int )Nlog10(N) )的第一个非0位 #include#includeint main(void){ double n; while(scanf("%lf",&n) != EOF原创 2013-08-16 17:07:56 · 1141 阅读 · 0 评论 -
poj 3984 迷宫问题 bfs
学会这道水题之后我懂得了不少哈,首先水题也能学到不少知识,尤其像我这样刚入门的小菜鸟,能学到一些小技巧。 然后就是可以从别人的代码里学到不一样的思路和想法。 这题就是求最短的路径,首先想到就是用bfs,但是求到最短之后不知道怎么输出了咋办?很着急有木有??? 基本的广搜题已经做的挺熟练的,但是这个记录路径还是原创 2013-08-09 09:54:12 · 2447 阅读 · 0 评论 -
ZOJ 1092 Arbitrage Floyd算法
简单的Floyd算法的使用,初始时map对角线上置为1,使用floyd算法处理后只需检查对角线上有没有大于1的,有则赚到了(*^__^*) ! #include#includeint main(void){ int n,t,i,j,k,x,y,count = 1; char c[32][35],temp1[35],temp2[35]; double map[32][32],p原创 2013-08-06 09:17:40 · 1192 阅读 · 0 评论 -
POJ 2255 Tree Recovery
发现自己懒得思考,不能一直刷一眼就看出结果的水题吧? 思路: 根据二叉树前中后续遍历的特性 1、前序遍历的第一个字母必是 根2、在中序遍历的字母串中找出 根字母,那么根字母左右两边的字符串就分别是它的左、右子树3、利用递归复原二叉树(把子树看作新的二叉树)4、后序遍历特征:后序遍历字母串 自右至左原创 2013-08-05 15:48:28 · 1026 阅读 · 0 评论 -
ZOJ 1589 Professor John ~Floyd算法
这题用Floyd和Dij都可以,但是感觉用Floyd会十分方便,也是第一次使用Floyd算法,一开始没有这个思路滴,参考别人的。。~~~~(>_<)~~~~ #include#include#includeusing namespace std;int main(void){ int ncases,n,i,j,k; int map[30][30],mark[30原创 2013-08-05 11:11:56 · 1377 阅读 · 0 评论 -
poj 1661 Help Jimmy
题目链接:http://poj.org/problem?id=1661 标准的DP,首先将输入数据按高度进行排序,将开始下落的位置初始化为左右坐标均为x,高度为y的平台(方便统一处理),然后从上至下搜寻最短路径。。 DP的思想已经掌握了,但是各种细节的处理还是远远达不到,这里贴出大神的代码,以示参考 #include#include#include#inc原创 2013-07-28 10:12:52 · 979 阅读 · 0 评论 -
poj 3253 Fence Repair
类似Huffman编码,越短的板在二叉树中深度越大如排序后的序列:L1、L2、L3、L4、L5....LN(L1+L2)为最短的两个之后,插入L3、L4、L5....LN中重复上述步骤直至只剩一块板为止#include#include#includeusing namespace std;#define MAX_N 20002typedef long long ll;i原创 2014-04-17 00:35:29 · 959 阅读 · 0 评论