摘要: A. Shell Game time limit per test:0.5 seconds memory limit per test:256 megabytes input:standard input output:standard output Bomboslav likes to look 阅读全文
posted @ 2017-02-24 21:34 Angel_Kitty 阅读(764) 评论(0) 推荐(0) 编辑
摘要: 本文在写作过程中参考了大量资料,不能一一列举,还请见谅。贪心算法的定义:贪心算法是指在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,只做出在某种意义上的局部最优解。贪心算法不是对所有问题都能得到整体最优解,关键是贪心策略的选择,选择的贪心策略必须具备无后效性,即某个 阅读全文
posted @ 2017-02-24 19:48 Angel_Kitty 阅读(2470) 评论(0) 推荐(6) 编辑
摘要: 1283 最小周长 题目来源: Codility 基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题 一个矩形的面积为S,已知该矩形的边长都是整数,求所有满足条件的矩形中,周长的最小值。例如:S = 24,那么有{1 24} {2 12} {3 8} {4 6}这4种矩 阅读全文
posted @ 2017-02-23 22:24 Angel_Kitty 阅读(400) 评论(0) 推荐(0) 编辑
摘要: 容斥原理 对容斥原理的描述 容斥原理是一种重要的组合数学方法,可以让你求解任意大小的集合,或者计算复合事件的概率。 描述 容斥原理可以描述如下: 要计算几个集合并集的大小,我们要先将所有单个集合的大小计算出来,然后减去所有两个集合相交的部分,再加回所有三个集合相交的部分,再减去所有四个集合相交的部分 阅读全文
posted @ 2017-02-23 17:41 Angel_Kitty 阅读(1940) 评论(0) 推荐(1) 编辑
摘要: 给定一个素数集合 S = { p[1],p[2],...,p[k] },大于 1 且素因子都属于 S 的数我们成为丑数(Humble Numbers or Ugly Numbers),记第 n 大的丑数为 h[n]。 算法 1: 一种最容易想到的方法当然就是从 2 开始一个一个的判断一个数是否为丑数 阅读全文
posted @ 2017-02-23 17:25 Angel_Kitty 阅读(797) 评论(0) 推荐(0) 编辑
摘要: 1284 2 3 5 7的倍数 基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题 给出一个数N,求1至N中,有多少个数不是2 3 5 7的倍数。 例如N = 10,只有1不是2 3 5 7的倍数。 1284 2 3 5 7的倍数 基准时间限制:1 秒 空间限制:131 阅读全文
posted @ 2017-02-23 17:10 Angel_Kitty 阅读(404) 评论(0) 推荐(1) 编辑
摘要: 1305 Pairwise Sum and Divide 题目来源: HackerRank 基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题 有这样一段程序,fun会对整数数组A进行求值,其中Floor表示向下取整: 1305 Pairwise Sum and Div 阅读全文
posted @ 2017-02-23 16:46 Angel_Kitty 阅读(360) 评论(2) 推荐(2) 编辑
摘要: 1347 旋转字符串 基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题 S[0...n-1]是一个长度为n的字符串,定义旋转函数Left(S)=S[1…n-1]+S[0].比如S=”abcd”,Left(S)=”bcda”.一个串是对串当且仅当这个串长度为偶数,前半段 阅读全文
posted @ 2017-02-23 15:41 Angel_Kitty 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 壮志难酬 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 12541 Accepted Submission(s): 4166 Problem D 阅读全文
posted @ 2017-02-22 22:55 Angel_Kitty 阅读(473) 评论(0) 推荐(0) 编辑
摘要: 一、预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数 阅读全文
posted @ 2017-02-22 20:16 Angel_Kitty 阅读(735) 评论(0) 推荐(2) 编辑