上一页 1 ··· 3 4 5 6 7 8 9 10 下一页
摘要: 个人心得:日了狗,WR了俩个小时才发现是少了个vector清理,我也是醉了,不过后面还是对这个有了更好得了解,一是我得算法,而是学长改进 后的算法,改进后得算法还要判断所有村庄是否在连在一起,其实我觉得实必要性不大。 省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的 阅读全文
posted @ 2017-08-07 19:28 余生漫漫浪 阅读(337) 评论(0) 推荐(0) 编辑
摘要: 个人心得:最基础的并查集经典题。借此去了解了一下加深版的即加权并查集,比如食物链的题目,这种题目实行起来还是有 一定的难度,不仅要找出与父节点的关系,还要在路径压缩的时候进行更新,这一点现在还是没那么上手,不过先知道思维 还是好的吧。这道水题就不多提了...就是注意合并的时候以数小的为跟节点就好了 阅读全文
posted @ 2017-08-06 20:05 余生漫漫浪 阅读(240) 评论(0) 推荐(1) 编辑
摘要: 个人心得:单纯用二分法一直超时,后面发现我的那种方法并没有节省多少时间,后面看了大神的代码,真的是巧妙, 俩个数组分别装a+b,c+d。双指针一个指向最后,从第一个开始想加,加到刚好大于0停止,再看是否存在和为0的情况。 很巧妙,因为此时i,j所指想加刚好大于0,因为是排完序的,所以i往后面走的时候 阅读全文
posted @ 2017-08-04 18:58 余生漫漫浪 阅读(525) 评论(0) 推荐(0) 编辑
摘要: 个人心得:题目意思就是每次给出可以互换的字母,如果每次命令的时候就执行的话一定会超时。 所以我就是将输入的字母从a到z的数目和路径依次保存,再建立一个book数组表示字母现在所指的字母 ,一开始就直接数组转换结果超时了,有一点并查集的思想。 就比如说 a b转换,a 此时有3个,分别为1,3,5。b 阅读全文
posted @ 2017-08-04 18:52 余生漫漫浪 阅读(384) 评论(0) 推荐(0) 编辑
摘要: 子串就是要连在一起的,而子序列就是满足这同时在1-n的母串中存在就好了。 比如abcdefg 子串有abc 子序列acdfg 动态规划 假设Z=<z1,z2,⋯,zk>是X与Y的LCS, 我们观察到 如果Xm=Yn,则Zk=Xm=Yn,有Zk−1是Xm−1与Yn−1的LCS; 如果Xm≠Yn,则Zk 阅读全文
posted @ 2017-08-03 20:15 余生漫漫浪 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 给定k个整数的序列{N1,N2,...,Nk },其任意连续子序列可表示为{ Ni, Ni+1, ..., Nj },其中 1 <= i <= j <= k。最大连续子序列是所有连续子序中元素和最大的一个,例如给定序列{ -2, 11, -4, 13, -5, -2 },其最大连续子序列为{11,- 阅读全文
posted @ 2017-08-02 20:42 余生漫漫浪 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 新年快到了,“猪头帮协会”准备搞一个聚会,已经知道现有会员N人,把会员从1到N编号,其中会长的号码是N号,凡是和会长是老朋友的,那么该会员的号码肯定和N有大于1的公约数,否则都是新朋友,现在会长想知道究竟有几个新朋友?请你编程序帮会长计算出来。 Input第一行是测试数据的组数CN(Case num 阅读全文
posted @ 2017-08-02 15:10 余生漫漫浪 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 在计数时,必须注意没有重复,没有遗漏。为了使重叠部分不被重复计算,人们研究出一种新的计数方法,这种方法的基本思想是:先不考虑重叠的情况,把包含于某内容中的所有对象的数目先计算出来,然后再把计数时重复计算的数目排斥出去,使得计算的结果既无遗漏又无重复,这种计数的方法称为容斥原理。 也可表示为 设S为有 阅读全文
posted @ 2017-08-02 15:07 余生漫漫浪 阅读(334) 评论(0) 推荐(0) 编辑
摘要: 监狱有连续编号为1...N的N个房间,每个房间关押一个犯人,有M种宗教,每个犯人可能信仰其中一种。如果相邻房间的犯人的宗教相同,就可能发生越狱,求有多少种状态可能发生越狱 Input 输入两个整数M,N.1<=M<=10^8,1<=N<=10^12 Output 可能越狱的状态数,模100003取余 阅读全文
posted @ 2017-08-02 10:40 余生漫漫浪 阅读(334) 评论(0) 推荐(0) 编辑
摘要: 快速幂,顾名思义,快速幂就是快速算底数的n次幂。其时间复杂度为 O(log₂N), 与朴素的O(N)相比效率有了极大的提高。 快速幂运用了位运算。 例如 11的二进制是1011 11 = 2³×1 + 2²×0 + 2¹×1 + 2º×1 因此,我们将a¹¹转化为算 这样就大大的减少了运算的步数。 阅读全文
posted @ 2017-08-02 10:37 余生漫漫浪 阅读(248) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 下一页