自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

JmingS

Do my level best and leave the rest to Gods will.

  • 博客(80)
  • 问答 (1)
  • 收藏
  • 关注

原创 搬家

感谢CSDN这个平台,在这里学习了很多的知识。不过不得不说,网站经常会出一些问题,所以决定搬家到新的地方点击打开链接。。希望CSDN做的越来越好。。

2014-12-04 10:48:56 524

原创 汇编 之 子程序(eg : 小写字母 -> 大写字母)

//  [11/1/2014 JmingS]/*汇编里,如何用子程序。。。(小例子)// 小写字母 -> 大写字母*/

2014-11-01 15:30:47 1222

原创 DFS 之 poj 2386 Lake Counting

//  [11/1/2014 JmingS]/*遍历整个图,找到 'W' 的点,对其周围八个点其进行深搜,若是 'W' 则用 '.' 替换。最后,在遍历整个图的过程中,找到多少个 'W',即答案。。。*/

2014-11-01 12:59:48 522

原创 找规律+模拟 之 codevs 1160 蛇形矩阵

//  [10/11/2014 Sjm]/*(数组下标默认从 1 开始)经分析可知:令 myNode = ((n + 1) >> 1),则: myArr[myNode][myNode] = 1^2  myArr[myNode + 1][myNode + 1] = (1 + 2)^2  myArr[myNode + 2][myNode + 2] = (3 + 2)^2  …………

2014-10-11 21:44:52 680

原创 二分+找规律 之 codevs 1083 Cantor表

//  [10/11/2014 Sjm]/*因为是 Z 字形,所以按斜着去看它,即:斜1:1/1;  斜2:1/2, 2/1; 斜3:1/3, 2/2, 3/1; …………二分判断出第 N 项位于斜几,再找规律,即可求出第 N 项。。。*/#include #include #include #include #include #include #include #inc

2014-10-11 21:35:10 702

原创 USACO 之 Section 1.3 Greedy Algorithm

Mixing Milk : 单价越少,买相同数量的

2014-09-20 09:39:14 636

原创 USACO 之 Section 1.2 Complete Search

Milking Cows :   对输入的工作时间做排序处理,之后模拟工作

2014-09-19 23:06:54 571

原创 状态压缩 之 UVA 10944 - Nuts for nuts..

//  [9/19/2014 Sjm]/*dis[j][k] := 从 j 点到 k 点的最少步数,由于They can travel in all 8 adjacent direction in one step.故而 dis[j][k] = max( abs(Xj - Xk), abs(Yj - Yk) ) f[j][i] := 在 i 状态下,最后收集坚果 j 的最少步数 n 

2014-09-19 16:54:18 1029

原创 贪心 + 找规律 之 hdu 5014 Number Sequence

/*关键:贪心 + 找规律0 1 2 3 4 5 6肯定先从大的开始去找(贪心):6:110 ---> 1:001  ==>  6^1 = 7结果发现:5: 101 ---> 2:010  ==>  5^2 = 74:100 ---> 3: 011  ==>  4^3 = 7 若 x ---> y,则区间 [x, y] 的所有值均可找到与其相匹配的数字。。。*/

2014-09-17 13:57:00 512

原创 BFS + 剪枝 之 hdu 5012 Dice

/*BFS 遍历所有,当寻找到要转到的情况,输出BFS的层数,即答案,否则输出 -1;注意:剪枝: 当BFS到某一种状态时,若此状态已在前面所寻找的状态中出现过,则不用再继续从此状态BFS了,因为此状态所能寻找的状态已经处理过了。*/

2014-09-17 13:49:58 529

原创 并查集 + Bfs 之 zoj 3811 Untrusted Patrol

//  [9/12/2014 Sjm]/*此题在大神的帮助下AC了。。。要求:output "Yes" if the security man worked normally and has checked all piles of drinks, or "No" if not.(1)check all piles of drinks:  1) L == K (L 是 gathered 

2014-09-12 22:10:54 545

原创 模拟 之 zoj 3818 Pretty Poem

/*按题目要求进行模拟。。。比赛时,wa了4次才AC掉,仅仅因为一句话: The symbol A, B and C are different continuous non-empty substrings of the poem.*/

2014-09-12 13:00:45 480

原创 状态压缩 之 hdu 1074 Doing Homework

//  [9/11/2014 Sjm]/*hdu 1074 (状态压缩)dp[i]: 表示在 i 状态时的最优解 (i状态: i数值用二进制表示, 若二进制数第 n 位为1,代表第 n 个课程已被计算)*/

2014-09-11 22:05:43 487

原创 Kmp 加深理解 之 poj 3461

求模式串在文本中出现的次数。。。关键在于:

2014-09-11 12:24:23 482

原创 Kmp 模板 之 hdu 1711 Number Sequence

初学 Kmp ,推荐 严蔚敏教授 的数据结构视频

2014-09-11 00:09:29 397

原创 最大连续子序列和(经典DP) 之 hdu 1231 最大连续子序列

//  [8/1/2014 Sjm]/*经典问题。。。*/#include #include #include using namespace std;const int MAX_K = 10005;int arr[MAX_K];int main(){ freopen("input.txt", "r", stdin); freopen("output.txt", "w

2014-08-01 15:16:54 503

原创 数学 之 hdu 4710 Balls Rearrangement

//  [7/31/2014 Sjm]/*看到此题直接先打表找规律(数学很糟糕,不会用公式推,只好打表找规律)发现循环周期 T = A和B的最小公倍数于是依靠区间 [min(a, b), T] 去求一个周期内的花费,但是各种优化后依旧TLE。。。。不过,再次看打出来的表(举一个小例子):测试用例: 15 5 3   0 1 2    3 4    5    6 7 8    9   

2014-07-31 21:17:55 587

原创 01背包变形 之 hdu 2126 Buy the souvenirs

/*题意:T组测试数据,每组给出 n 和 m,n代表商品数目,m是所拥有的钱,然后给出 n 个商品价格,求出可以买的最多商品种类数,以及对应的方案数 思路:对于此题,第一个想法便是以价格作为费用,件数1作为价值,01背包即可求出花费 m 所能获得的商品的最大件数 dp[m]。不过,又要求其方案数,自己试着敲了一下代码WA,后来参考了此篇博客AC掉了。。。需要建立一个数组 selec

2014-07-31 11:01:35 562

原创 逆序数 之 hdu 1394 Minimum Inversion Number

//  [7/29/2014 Sjm]/*时间复杂度: O(nlogn)实现方式:树状数组 or 线段树逆序数:在一个排列中,若一对数,前面的数大于后一个数(即位置顺序和大小顺序相反),就称它们为一个逆序。排列中,逆序的总数即称为此排列的逆序数。 求逆序数方法:树状数组 或 线段树(1)树状数组实现方法:参见 树状数组优化 之 uva299 中的法一(2)线段树实现方法:在每插

2014-07-29 14:42:59 616

原创 线段树(成段更新) 之 poj 3468 A Simple Problem with Integers

//  [7/29/2014 Sjm]/*线段树称断更新。。。关键lazy思想,保存增量,更新时只更新到某一段,不再向下更新,待再次更新或查询到此段时,对其子节点进行更新。。*/

2014-07-29 09:42:33 552

原创 USACO 之 Section 1.1 Ad Hoc Problems

Your Ride Is Here

2014-07-28 20:18:51 651

原创 构造字符串 之 hdu 4850 Wow! Such String!

/*话说之前读题都没读懂。。。Each substring of A with length equal to or larger than 4 can appear in the string exactly once.A的每个长度大于等于4的子串出现在传中恰好一次。(即:大于等于4的子串不能重复出现) 跟大神学的一种方法。。。(不过,看网上还有一种欧拉回路来解决这道题的,学习之后补上

2014-07-27 15:32:33 623

原创 模拟 + 最短路 之 hdu 4849 Wow! Such City!

//  [7/26/2014 Sjm]/*此题看懂题意,就可以了。。。模拟+最短路。。。*/

2014-07-26 23:10:12 546

原创 简单题(需要注意一个细节) 之 hdu 4847 Wow! Such Doge!

//  [7/25/2014 Sjm]/*好几次 Runtime Error(ACCESS_VIOLATION)。。。后来发现:当有符号数和无符号数出现在同一个表达式中,默认状态下(如果不像上述代码那样作强制转换)表达式的值为将结果转化为无符号类型的值。eg:int as = 4;string str = "abc";cout cout */

2014-07-26 22:58:35 529

原创 最短路 + 搜索 + 剪枝 之 hdu 4848 Wow! Such Conquering!

//  [7/26/2014 Sjm]/*此题要求的值是: the minimum sum of all arrival time to each Doge Planet. 先用 Floyd 求任意两点之间的距离,再用 Dfs 去求最优解。。。。 不过关键在剪枝。。能力太水了,一直TLE,,,最后在大神的帮助下过的。。。。在两个地方剪枝,代码中有说明*/

2014-07-26 22:15:35 830

原创 线段树(单点更新) 之 hdu 1754

//  [7/25/2014 Sjm]/*线段树单点更新水题。。。*/

2014-07-25 11:31:17 609

原创 线段树(单点更新(模板)) 之 hdu 1166

//  [7/24/2014 Sjm]/*第一道用线段树做的题,照着大神的代码风格写的,,就当作线段树单点更新的模板吧。。。。*/#include #include #include #include #include using namespace std;#define lson l, m, rt << 1#define rson m + 1, r, rt << 1 |

2014-07-24 20:49:20 796

原创 01背包(给容量增加限制条件) 之 hdu 3466

//  [7/24/2014 Sjm]/*模拟一组测试数据:2 105 10 53 5 61)若先选择第一组先来:背包所用容量: 0  1  2  3  4  5  6  7  8  9  10  第一遍循环: 0  0  0  0  0  0  0  0  0  0  5  第二遍循环: 0  0  0  0  0  6  6  6  6  6  62)若先选择第二组先来:

2014-07-24 12:12:41 842

原创 水题(细节考察getline) 之 hdu 2072

//  [7/23/2014 Sjm]/*细节考察:由于空格可以被 getline 读入,所以增加判断条件。。。测试用例: ab (注意ab前有一个空格)输出:1*/

2014-07-23 22:29:51 494

原创 数学 之 hdu 4861

/*对于此题,举出数据找规律,即可AC。。。不过悲催的WA了好多次,后来发现竟把"YES"打印成"Yes"了。。。。 注释掉的代码是用来找规律的。。。*/

2014-07-23 21:43:56 676

原创 贪心 之 hdu 4864

//  [7/23/2014 Sjm]/*又坑在TLE上了。。。。Each machine can only complete a task one day. Each task can only be completed by one machine.所以想到了贪心。。。 发现 dollars = 500*xi+2*yi, 由于 xi(0 2*100,所以 dollars 的决定因素是

2014-07-23 21:29:37 558

原创 01背包(求前一个的最大价值-->求前K个的最大价值) 之 hdu 2639

//  [7/21/2014 Sjm]/*此题我想的思路错了,情况考虑漏了。。。 解法是由 求前一个的最大价值-->求前K个的最大价值 的转化。 求前一个最大价值: dp[i][j] = max(dp[i-1][j], dp[i-1][j-C[i]] + W[i])求前K个的最大价值 同样,dp[i][j]的前 k 个最大价值,是依赖于 dp[i-1][j] 的前 k 

2014-07-21 22:20:38 649

原创 01背包(体积为负,改变区间) 之 poj 2184

//  [7/21/2014 Sjm]/*题意:maximize the sum of TS and TF, but both of these values to be non-negative. 解决思路:以 TS 作为体积,TF作为价值,在保证体积、价值非负的情况下,求解 sum,取其所有情况的最大值。 难点:1)体积出现负数,将区间改变 [-100000, 100000] 

2014-07-21 16:20:38 623

原创 01背包 + 数学(平衡) 之 uva 562

//  [7/21/2014 Sjm]/*题目关键:Given a bag with a maximum of 100 coins, determine the most fair division between two persons.This means that the difference between the amount each person obtains should

2014-07-21 11:41:32 644

原创 01背包(打印路径) 之 uva 624

//  [7/21/2014 Sjm]/*此题直接根据01背包的求解思路,记录路径,再递归输出。。1A。。注:对于最后一个测试用例 43 2 也是满足题目要求的,输出它也是对的。*/#include #include #include #include #include using namespace std;const int MAX_NUM = 25;const i

2014-07-21 10:26:03 613

原创 01背包 + 概率 之 hdu 2955

/*看到此题时,第一个想法是:以P作为体积,Pj作为费用,Mj作为价值。但是,double类型的不能作为数组下标,于是此法行不通。于是,从另一角度考虑:被抓的概率不能超过上限,即不被抓的概率要大于下限(下限 = 1 - 被抓概率的上限)。以总的银行金额作为体积,每一个银行金额作为费用,不被抓的概率作为价值。即 dp[i][j] := 抢劫了前 i 个银行,所获金

2014-07-20 17:17:02 575

原创 01背包(模板题) 之 poj 3624

01背包模板题。。。#include #include #include #include #include using namespace std;const int MAX = 3410, max_w = 12885;int N, M;int W[MAX], D[MAX], dp[max_w];int Solve() { memset(dp, 0, sizeof(dp

2014-07-16 21:26:17 684

原创 整体贪心 + 局部01背包 之 hdu 2546

//  [7/16/2014 Sjm]/*自己没想到将5元单独提出来,,结果一致wa。。。01背包变形:目标:尽量使卡上的余额最少,也就是说尽可能让花销最大。 分析:购买菜时,只可能出现三种情况 :1)M 2)饭卡金额M >= 所有菜的价格总和sum: 答案即 M-sum;3)饭卡金额M    5元是可以买最贵的菜的最小花费,再尽可能的花去(M-5)元。 a.5元直接提

2014-07-16 21:07:33 515

原创 字典树 + 深搜 之 hdu 1298

//  [7/16/2014 Sjm]/*字典树 + 深搜。。。(好久没碰搜索了,调试了一段时间,不过还好1A。。。)*/

2014-07-16 14:00:28 605

原创 数学 之 Codeforces 359D - Pair of Numbers

//  [7/13/2014 Sjm]/*直接暴力,超时。。不过有一点大家都知道:如果 (b%a == 0),(c%b == 0), 那么 (c%a == 0) 一定是成立的。 故而以一个数字a为中心,向两边寻找能够被a整除的数后,已被寻找到的的数是不用再计算的。。。(因为即使计算这些已被寻找到的数,最大的(r-l)一定  啊,,,比赛时怎么就没想到呢。。。。*/

2014-07-13 16:04:12 889

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除