上一页 1 2 3 4 5 6 ··· 29 下一页
摘要: //疯狂TLE,知道了用了不太准确的hash才250ms过了//发现此题其实对hash的要求并不是太高,因为它只要找到可行解即可。/**State: POJ3732 Accepted 3736K 250MS G++ 3639B*题目大意:* 给定一个r*c的矩阵,r跟c均<=4,然后每个方格有[0,19]种颜色,* 规定可以任选一个方格改变随意的颜色,但是与其相邻的方格的* 颜色也同时随之改变,上下左右为相邻,求最小步数使矩阵最后* 均变为0.*解题思路:* 直接用IDA*,注意剪枝。*解题感想... 阅读全文
posted @ 2012-10-18 00:09 cchun 阅读(417) 评论(0) 推荐(0) 编辑
摘要: STL中unique函数的使用 我们都知道unique的功能是去除相邻的重复元素(只保留一个),还有一个容易忽视的特性是它并不真正把重复的元素删除,不知道这个特性用起来就会出问题。比如下面这个例子,企图输出无重复的元素,中国自学编程网,www.zxbc.cn:#include<iostream>#include<vector>#include<algorithm>#include<iterator>usingnamespacestd;intmain()...{ vector<int>ivec; copy(istream_iterato 阅读全文
posted @ 2012-10-03 00:08 cchun 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 【好记性不如烂笔头:在《C++ Templates》看到这个函数,发现正是前段时间写项目程序所要用到的,可惜当时还不知道有这个用法,当时是自己写了个结构体。。】Utilities <utility>由短小精干的类和函数构成,执行最一般性的工作。这些工具包括:general types一些重要的C函数numeric limitsPairsC++标准程序库中凡是“必须返回两个值”的函数, 也都会利用pair对象classpair可以将两个值视为一个单元。容器类别map和multimap就是使用pairs来管理其健值/实值(key/value)的成对元素。pair被定义为struct,因 阅读全文
posted @ 2012-09-05 23:14 cchun 阅读(348) 评论(0) 推荐(0) 编辑
摘要: /**题目大意:* 有n种货币,而且每两种之间有汇率,如果a->b,b->c,c->a,然后他们之间的* 所有汇率乘积大于1,那么就是一种获得利润的手段,题目要求输出yes.*解题思路:* 其实画图就知道,题目要的就是找到存在一个圈,并且这个圈所有权值的乘积* 是正的,如果把最长路的关系条件由加法改为乘法,那么就是说找一个所有乘* 积为的环。dij,floyd可以办到吗?显然不行,他们都处理不了带环的。这个时候* spfa跟Bellman_ford就可以发挥无可比拟的优势了,不过囧了,这道题居然spfa* ... 阅读全文
posted @ 2012-09-02 15:48 cchun 阅读(133) 评论(0) 推荐(0) 编辑
摘要: /**State: POJ1847 16 MS 716 KB GNU C++ *题目大意:* 有N个点以及起点和终点,点与点有路相连。接下来的N行分别为点i的情况:* 第一个数字k表示与该点连通的点的个数,接下来输入k个数,表示与点i相* 连的点的编号,第一个所连的点为可以不用改扳手而直接通过,其余的点通* 过的话要改一次扳手,求从起点到终点改扳手的最小次数。*解题思路:* 原来以为改开关之后,还有后继性,贡献了2个wa,之后分析发现没有环,所以* 一个点只走一次,开关没有后继性,所以直... 阅读全文
posted @ 2012-09-02 15:47 cchun 阅读(194) 评论(0) 推荐(0) 编辑
摘要: //State: POJ1724 Accepted 1188K 32MS C++ 1968B/**题目大意:* 给定总费用,还有n个城市,m条边,构成的图为单向图,然后* m条边有费用,还有距离,求从1->n的最小距离,要求走边时* 费用要小于边的费用。*解题思路:* 用二维dij即可。*/View Code #include <queue>#include <iostream>#include <cstdio>#include <cmath>#include <cstring>using namespace... 阅读全文
posted @ 2012-09-02 15:46 cchun 阅读(374) 评论(0) 推荐(0) 编辑
摘要: /**State: ZOJ1508 C++ 220ms 16008*题目大意:* 有一个序列,题目用n个整数组合 [ai,bi,ci]来描述它,[ai,bi,ci]* 表示在该序列中处于[ai,bi]这个区间的整数至少有ci个。如果存在这* 样的序列,请求出满足题目要求的最短的序列长度是多少。如果不存在则* 输出 -1。输入:第一行包括一个整数n,表示区间个数,以下n行每行描述* 这些区间,第i+1行三个整数ai,bi,ci,由空格隔开,其中0<=ai<=bi<=50000 * 而且 1<=c... 阅读全文
posted @ 2012-09-02 15:45 cchun 阅读(230) 评论(0) 推荐(0) 编辑
摘要: /**State: Bellman_ford POJ1716 Accepted 640K 329MS C++*题目大意:* 给n个区间,然后求一个最小的集合里面包含每个区间至少2个不同的元素。* 注意元素均为整数。求这个最小集合的个数。*解题思路:* 用差分约束条件来约束问题即可。设Si为0到i里面区间中为集合元素的个数。* 有Su - S(v-1) >= 2, 0 <= S(n+1) - S(n) <= 1。根据这三个约束条件来* 构图即可。*解题困惑:* 为什么不能用最短路约束来求?... 阅读全文
posted @ 2012-09-02 15:44 cchun 阅读(419) 评论(0) 推荐(0) 编辑
摘要: /**State: POJ1364 Accepted 176K 0MS C++*题目大意;* 已知一个序列a[1], a[2], ......, a[n],给出它的若干子序列以及对该子序列的* 约束条件,例如a[si], a[si+1], a[si+2], ......, a[si+ni],且a[si]+a[si+1]* +a[si+2]+......+a[si+ni] < or > ki。求是否存在满足以上m个要求的数列。是* 则输出“lamentable kingdom”,否则输出“successful co... 阅读全文
posted @ 2012-09-02 15:43 cchun 阅读(2478) 评论(0) 推荐(0) 编辑
摘要: 不错的最短路径题目。/**State: POJ1135 Accepted 1204K 0MS C++ 1854B*题目大意:* 有一个多米诺骨牌的游戏,我们知道有关键骨牌和普通骨牌,将* 关键骨牌推倒之后,整个骨牌阵就会倒下,推动其他的关键骨牌,* 其中推倒关键骨牌A使的关键骨牌B也倒,需要一定的时间,所以* 本题要求求出最后一个倒的骨牌的位置,及其时间*解题思路:* 想一下结果,其实最后一个骨牌倒的位置只有2种情况,要么就是* 在关键骨牌的位置,要么就是在两个关键骨牌之间。之后... 阅读全文
posted @ 2012-09-02 15:42 cchun 阅读(363) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 29 下一页