- 博客(29)
- 资源 (1)
- 收藏
- 关注
原创 挑战程序竞赛系列(23):3.2折半枚举
挑战程序竞赛系列(23):3.2折半枚举 详细代码可以fork下Github上leetcode项目,不定期更新。练习题如下:POJ 2785: 4 Values whose Sum is 0POJ 3977: SubsetsPOJ 2549: SumsetsPOJ 2785: 4 Values whose Sum is 0基本想法: 全部枚举,判断sum == 0,时间复杂度为O(n
2017-06-29 14:20:45 390
原创 挑战程序竞赛系列(22):3.2弹性碰撞
挑战程序竞赛系列(22):3.2弹性碰撞 详细代码可以fork下Github上leetcode项目,不定期更新。练习题如下:POJ 3684: Physical ExperimentPOJ 2674: Linear WorldPOJ 1852: AntsPOJ 3684: Physical Experiment有点考想象力,物理竞赛题,呵呵。思路: 两个球发生碰撞,可以看成擦肩而过(
2017-06-28 19:20:58 465
原创 挑战程序竞赛系列(21):3.2反转
挑战程序竞赛系列(21):3.2反转 详细代码可以fork下Github上leetcode项目,不定期更新。练习题如下:POJ 3276: Face The Right WayPOJ 3279: FliptilePOJ 3185: The Water BowlsPOJ 1222: Extended Lights OutPOJ 3276: Face The Right Way解题策略:
2017-06-28 14:44:24 483
原创 挑战程序竞赛系列(20):3.2尺取法
挑战程序竞赛系列(20):3.2尺取法 详细代码可以fork下Github上leetcode项目,不定期更新。练习题如下:POJ 3061: SubsequencePOJ 3320: Jessica’s Reading ProblemPOJ 2566: Bound FoundPOJ 2739: SUm of Consecutive Prime NumbersPOJ 2100: Gra
2017-06-27 16:12:07 1347
原创 挑战程序竞赛系列(19):3.1最小化第k大的值
挑战程序竞赛系列(19):3.1最小化第k大的值 详细代码可以fork下Github上leetcode项目,不定期更新。练习题如下:POJ 2010: Moo University - Financial AidPOJ 3662: Telephone LinesPOJ 1759: GarlandPOJ 3484: ShowstopperPOJ 2010: Moo University
2017-06-26 19:19:38 637
原创 LeetCode Weekly Contest 38解题思路
LeetCode Weekly Contest 38解题思路 详细代码可以fork下Github上leetcode项目,不定期更新。赛题本次周赛主要分为以下4道题:Leetcode 628. Maximum Product of Three NumbersLeetcode 630. Course Schedule IIILeetcode 629. K Inverse Pairs Arra
2017-06-25 18:28:19 1453
原创 挑战程序竞赛系列(18):3.1查找第k大的值
挑战程序竞赛系列(18):3.1查找第k大的值 详细代码可以fork下Github上leetcode项目,不定期更新。练习题如下:POJ 3685: MatrixPOJ 3579:MedianPOJ 3685: Matrix可以发现每一列关于i是单调递增的,利用这个性质就可以二分了。这种关于查找第k大的二分模式还和我之前遇到的一般二分模式有所区别,可以观察它的while循环结构:
2017-06-23 16:45:30 328
原创 挑战程序竞赛系列(17):3.1最大化平均值
挑战程序竞赛系列(17):3.1最大化平均值 详细代码可以fork下Github上leetcode项目,不定期更新。练习题如下:POJ 2976: Dropping testsPOJ 3111: K BestPOJ 2976: Dropping tests01分数规划,具体可以参考博文http://www.cnblogs.com/perseawe/archive/2012/05/03/0
2017-06-23 11:51:30 598
原创 挑战程序竞赛系列(16):3.1最大化最小值
挑战程序竞赛系列(15):2.6快速幂运算 详细代码可以fork下Github上leetcode项目,不定期更新。练习题如下:POJ 3258: River HopscotchPOJ 3273: Monthly ExpensePOJ 3104: DryingPOJ 3045: Cow Acrobats花了两个月,刷完了初级篇,算入门了,心累。POJ 3258: River Hopsc
2017-06-22 19:22:12 855
原创 挑战程序竞赛系列(15):2.6快速幂运算
挑战程序竞赛系列(15):2.6快速幂运算 详细代码可以fork下Github上leetcode项目,不定期更新。练习题如下:POJ 3641: Pseudoprime numbersPOJ 1995: Raising Modulo NumbersPOJ 3641: Pseudoprime numbers 判断在当前基数a时,满足费马小定理的伪素数。代码如下:public stat
2017-06-21 15:22:13 472
原创 挑战程序竞赛系列(14):2.6素数
挑战程序竞赛系列(14):2.6素数 详细代码可以fork下Github上leetcode项目,不定期更新。练习题如下:AOJ 0009: Prime NumberPOJ 3126: Prime PathPOJ 3421: X-factor ChainsPOJ 3292: Semi-prime H-numbersAOJ 0009: Prime Number非常easy,素数就是从最小
2017-06-21 12:25:40 639
原创 挑战程序竞赛系列(13):2.6辗转相除法
挑战程序竞赛系列(13):2.6辗转相除法 详细代码可以fork下Github上leetcode项目,不定期更新。练习题如下:AOJ 0005: GCD AND LCMPOJ 2429: GCD & LCM InversePOJ 1930: Dead FractionAOJ 0005: GCD AND LCM辗转相除法,著名欧几里德算法。代码如下:public static void
2017-06-20 19:58:03 887
原创 挑战程序竞赛系列(12):2.5最小生成树
挑战程序竞赛系列(12):2.5最小生成树 详细代码可以fork下Github上leetcode项目,不定期更新。练习题如下:POJ 1258: Agri-NetPOJ 2377: Bad CowtractorsAOJ 2224: Save Your CatPOJ 2395: Out of HayPOJ 1258: Agri-Net最小生成树的两种经典做法,prim算法和krusal
2017-06-19 18:04:05 1012
原创 LeetCode Weekly Contest 37解题思路
LeetCode Weekly Contest 37解题思路 详细代码可以fork下Github上leetcode项目,不定期更新。赛题本次周赛主要分为以下4道题:Leetcode 624. Maximum Distance in ArraysLeetcode 623. Add One Row to TreeLeetcode 625. Minimum FactorizationLeet
2017-06-18 15:51:05 1373
原创 挑战程序竞赛系列(11):2.5最短路径
挑战程序竞赛系列(11):2.5最短路径 详细代码可以fork下Github上leetcode项目,不定期更新。练习题如下:AOJ 0189: Convenient LocationPOJ 2139: Six Degrees of Cowvin BaconPOJ 3268: Sliver Cow PartyAOJ 2249: Road ConstructionAOJ 2200: Mr
2017-06-16 20:48:12 1065
原创 挑战程序竞赛系列(10):2.4并查集
挑战程序竞赛系列(10):2.4并查集 详细代码可以fork下Github上leetcode项目,不定期更新。练习题如下:POJ 2236: Wireless NetworkPOJ 1703: Find them, Catch themAOJ 2170: Marked AncestorPOJ 2236: Wireless Network写个Union,在距离范围内的电脑可以认为是同属于
2017-06-15 15:49:54 704
原创 算法细节系列(35):不一样的排序
算法细节系列(35):不一样的排序 详细代码可以fork下Github上leetcode项目,不定期更新。题目摘自leetcode:Leetcode 215. Kth Largest Element in an ArrayLeetcode 324. Wiggle Sort IILeetcode 179. Largest NumberLeetcode 440. K-th Smallest
2017-06-14 20:09:58 766
原创 算法细节系列(34):再见字符串(2)
算法细节系列(34):再见字符串(2) 详细代码可以fork下Github上leetcode项目,不定期更新。题目摘自leetcode:Leetcode 071. Simplify PathLeetcode 468. Validate IP AddressLeetcode 165. Compare Version NumbersLeetcode 068. Text Justificat
2017-06-13 10:00:37 645
原创 算法细节系列(33):再见字符串(1)
算法细节系列(33):再见字符串 详细代码可以fork下Github上leetcode项目,不定期更新。题目摘自leetcode:Leetcode 008. String to Integer (atoi)Leetcode 065. Valid NumberLeetcode 005. Longest Palindromic SubstringLeetcode 076. Minimum
2017-06-12 16:15:10 651
原创 LeetCode Weekly Contest 36解题思路
LeetCode Weekly Contest 36解题思路 详细代码可以fork下Github上leetcode项目,不定期更新。赛题本次周赛主要分为以下4道题:Leetcode 617. Merge Two Binary Trees (4分)Leetcode 604. Design Compressed String Iterator (5分)Leetcode 611. Valid
2017-06-12 10:57:41 1032
原创 算法细节系列(32):有趣的数学
算法细节系列(32):有趣的数学 详细代码可以fork下Github上leetcode项目,不定期更新。题目摘自leetcode:Leetcode 335. Self CrossingLeetcode 273. Integer to English WordsLeetcode 166. Fraction to Recurring DecimalLeetcode 149. Max Poi
2017-06-08 20:47:48 739
原创 算法细节系列(31):链表
算法细节系列(31):链表 详细代码可以fork下Github上leetcode项目,不定期更新。题目摘自leetcode:Leetcode 206. Reverse Linked ListLeetcode 025. Reverse Nodes in k-GroupLeetcode 148. Sort ListLeetcode 082. Remove Duplicates from S
2017-06-07 18:28:20 807
原创 算法细节系列(30):接口设计
算法细节系列(30):接口设计 详细代码可以fork下Github上leetcode项目,不定期更新。题目摘自leetcode:Leetcode 380. Insert Delete GetRandom O(1)Leetcode 381. Insert Delete GetRandom O(1) - Duplicates allowedLeetcode 432. All O`one Da
2017-06-06 20:56:36 2744
原创 算法细节系列(29):any sum
算法细节系列(29):any sum 详细代码可以fork下Github上leetcode项目,不定期更新。题目摘自leetcode:Leetcode 001. Two SumLeetcode 015. 3SumLeetcode 018. 4SumLeetcode 001. Two Sum头号种子啊,刷leetcode第一题就是它,带我入门带我飞。说说当初的思路吧,好幼稚。顺序遍历所有
2017-06-06 09:53:19 617
原创 算法细节系列(28):线段树
算法细节系列(28):线段树 详细代码可以fork下Github上leetcode项目,不定期更新。题目摘自leetcode:Leetcode 307. Range Sum Query - MutableLeetcode 307. Range Sum Query - Mutable解法1这题的特色在于不断更新的nums[i],所以我们在用累加和进行求解时,每当update一次,都需要更新s
2017-06-05 18:44:37 2159
原创 算法细节系列(27):时间复杂度为何还能优化?
算法细节系列(27):时间复杂度为何还能优化? 详细代码可以fork下Github上leetcode项目,不定期更新。以下题目非常有意思,乍一看它们的时间复杂度都是平方级的,但实际情况,却可以通过【动态数据结构】进行记忆优化降低时间复杂度,或者可以通过【分治手段】来降低时间复杂度。但为何复杂度就降低了?题目摘自leetcode:Leetcode 315. Count of Smaller N
2017-06-05 13:28:00 3331
原创 LeetCode Weekly Contest 35解题思路
LeetCode Weekly Contest 35解题思路 详细代码可以fork下Github上leetcode项目,不定期更新。赛题本次周赛主要分为以下4道题:Leetcode 605. Can Place Flowers (4分)Leetcode 606. Construct String from Binary Tree (5分)Leetcode 609. Find Duplic
2017-06-04 16:34:06 1261
原创 算法细节系列(26):区间
算法细节系列(26):区间 详细代码可以fork下Github上leetcode项目,不定期更新。题目摘自leetcode:Leetcode 056. Merge IntervalsLeetcode 057. Insert IntervalLeetcode 352. Data Stream as Disjoint IntervalsLeetcode 056. Merge Interva
2017-06-02 09:25:55 756
原创 算法原理系列:并查集
算法原理系列:并查集《算法》当中第一章节就介绍了该数据结构,但并不知道它到底有何用,也就一直没有研究它。当做过一系列数组+链表+树的题目之后,再看看这并查集似乎又有点意思了,今天就探寻下。 介绍我对并查集的具体应用还不了解,所以就从一些基本的题目引出并查集。 并查含义:合并集合,查找集合。可以有的操作如下:给定两个“结点”,检查它们是否同属一个集合。(在同一集合中,所有元素均同质,因此判断两
2017-06-01 15:43:41 1029
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人