经典算法
慕一春
这个作者很懒,什么都没留下…
展开
-
打印蛇形矩阵-题解
按照格式:"打印蛇形矩阵"Sample Input5Sample Output:21 22 23 24 25 20 7 8 9 10 19 6 1 2 11 18 5 4 3 12 1716 15 14 13 Sample Input7Sample Output:43 44 45 46 47 48 49原创 2015-01-15 19:49:41 · 1525 阅读 · 0 评论 -
21位水仙花数—题解
一个N位的十进制正整数,如果它的每个位上的数字的N次方的和等于这个数本身,则称其为花朵数。 例如: 当N=3时,153就满足条件,因为1^3+5^3+3^3=153,这样的数字也被称为水仙花数(其中,“^”表示乘方,5^3表示5的3次方,也就是立方)。 当N=4时,1634满足条件,因为1^4+6^4+3^4+4^4=1634. 当N=5时,92727满足条件。 实际上,对N的每个取值,可原创 2015-05-15 17:58:19 · 1257 阅读 · 0 评论 -
方块游戏—题解
1590 - 方块游戏Time Limit: 1s Memory Limit: 128MBSubmissions: 33 Solved: 13 DescriptionBG和ZZ一起玩一个游戏,游戏规则如下: 游戏开始时画在一张纸上,纸上画有n*m个方块组成的格子,BG和ZZ轮流玩这个游戏,BG先开始。每一轮玩家都会在上一次的方框内框出一个小方框作为下一轮原创 2015-05-14 18:25:00 · 2234 阅读 · 0 评论 -
生命之树—题解
生命之树在X森林里,上帝创建了生命之树。他给每棵树的每个节点(叶子也称为一个节点)上,都标了一个整数,代表这个点的和谐值。上帝要在这棵树内选出一个非空节点集S,使得对于S中的任意两个点a,b,都存在一个点列 {a, v1, v2, ..., vk, b} 使得这个点列中的每个点都是S里面的元素,且序列中相邻两个点间有一条边相连。在这个前提下,上帝要使得S中的原创 2015-05-20 07:49:35 · 901 阅读 · 0 评论 -
垒骰子—题解
垒骰子赌圣atm晚年迷恋上了垒骰子,就是把骰子一个垒在另一个上边,不能歪歪扭扭,要垒成方柱体。经过长期观察,atm 发现了稳定骰子的奥秘:有些数字的面贴着会互相排斥!我们先来规范一下骰子:1 的对面是 4,2 的对面是 5,3 的对面是 6。假设有 m 组互斥现象,每组中的那两个数字的面紧贴在一起,骰子就不能稳定的垒起来。 atm想计算一下有多少种不同的可能的垒骰子方式。两原创 2015-05-07 14:34:46 · 1113 阅读 · 0 评论 -
稍大的串—题解
标题:稍大的串 串可以按照字典序进行比较。例如: abcd 小于 abdc 如果给定一个串,打乱组成它的字母,重新排列,可以得到许多不同的串,在这些不同的串中,有一个串刚好给定的串稍微大一些。科学地说:它是大于已知串的所有串中最小的串。你的任务就是求出这个“稍大的串”。例如:输入串:abfxy程序应该输出:abfyx再例如:原创 2015-05-22 18:25:43 · 1310 阅读 · 0 评论 -
1002—列变位法解密
列变位法解密 Accepts: 1393 Submissions: 5460 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Problem Description列变位法是古典密码算法中变位加密的一种方法,具体过程如原创 2015-05-25 13:56:12 · 1527 阅读 · 0 评论 -
1001—大搬家
大搬家 Accepts: 1506 Submissions: 6255 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Problem Description近期B厂组织了一次大搬家,所有人都要按照指示换到指定的座位上原创 2015-05-25 23:49:38 · 751 阅读 · 0 评论 -
1003—IP聚合
IP聚合 Accepts: 1898 Submissions: 4972 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Problem Description当今世界,网络已经无处不在了,小度熊由于犯了错误,当上了度原创 2015-05-25 09:18:20 · 1169 阅读 · 0 评论 -
1004—放盘子
放盘子 Accepts: 857 Submissions: 2260 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Problem Description小度熊喜欢恶作剧。今天他向来访者们提出一个恶俗的游戏。他和来访原创 2015-05-25 09:44:51 · 945 阅读 · 0 评论 -
最快过桥问题—题解
题目:在漆黑的夜里,N位旅行者来到了一座狭窄而且没有护栏的桥边。如果不借助手电筒的话,大家是无论如何也不敢过桥去的。不幸的是,N个人一共只带了一只手电筒,而桥窄得只够让两个人同时过。如果各自单独过桥的话,N人所需要的时间已知;而如果两人同时过桥,所需要的时间就是走得比较慢的那个人单独行动时所需的时间。问题是,如何设计一个方案,让这N人尽快过桥。 抽象:N个人过桥,原创 2016-06-14 10:31:46 · 2532 阅读 · 0 评论 -
兰顿蚂蚁—题解
问题描述:兰顿蚂蚁,是于1986年,由克里斯·兰顿提出来的,属于细胞自动机的一种。 平面上的正方形格子被填上黑色或白色。在其中一格正方形内有一只“蚂蚁”。 蚂蚁的头部朝向为:上下左右其中一方。 蚂蚁的移动规则十分简单: 若蚂蚁在黑格,右转90度,将该格改为白格,并向前移一格; 若蚂蚁在白格,左转90度,将该格改为黑格,并向前移一格。原创 2015-03-09 21:49:28 · 939 阅读 · 0 评论 -
打印蛇形和顺序方阵—题解
import java.text.DecimalFormat;/** * * @author: muyichun * @date : 2016-3-14下午2:36:32 * @function:顺序打印方阵 */public class Main1 { public static void main(String[] args) { int rank = 3;原创 2016-03-14 21:09:01 · 653 阅读 · 0 评论 -
高僧斗法—题解
标题:高僧斗法 古时丧葬活动中经常请高僧做法事。仪式结束后,有时会有“高僧斗法”的趣味节目,以舒缓压抑的气氛。 节目大略步骤为:先用粮食(一般是稻米)在地上“画”出若干级台阶(表示N级浮屠)。又有若干小和尚随机地“站”在某个台阶上。最高一级台阶必须站人,其它任意。(如图1所示) 两位参加游戏的法师分别指挥某个小和尚向上走任意多级的台阶,但会被站原创 2015-05-05 11:05:17 · 2124 阅读 · 0 评论 -
N阶台阶
有n级台阶。从地面(第0级)出发,首先连续的上台阶,上到不超过第n级的某一个位置后再连续的下台阶,直到回到地面。若每次上下台阶只允许走1级或2级,请问可能的上下台阶的方案数是多少?特别地,在0级站着不动也算一种方案。数据格式:输入一行包含两个正整数n和m。输出一个整数,表示n级台阶有多少种合法的走楼梯方案,答案对m取余。例如:输入:2 10007原创 2015-04-08 02:01:55 · 1858 阅读 · 0 评论 -
九宫重排—题解
历届试题 九宫重排 时间限制:1.0s 内存限制:256.0MB 问题描述 如下面第一个图的九宫格中,放着 1~8 的数字卡片,还有一个格子空着。与空格子相邻的格子中的卡片可以移动到空格中。经过若干次移动,可以形成第二个图所示的局面。 我们把第一个图的局面记为:12345678. 把第二个图的局面记为:123.46758原创 2015-03-26 16:56:09 · 1513 阅读 · 0 评论 -
取球游戏-题解
“取球游戏” 三种题解方式 题目描述:今盒子里有n个小球,A、B两人轮流从盒中取球,每个人都可以看到另一个人取了多少个,也可以看到盒中还剩下多少个,并且两人都很聪明,不会做出错误的判断。 我们约定: 每个人从盒子中取出的球的数目必须是:1,3,7或者8个。 轮到某一方取球时不能弃权! A先取球,然后双方交替取球,直到取完。 被迫拿到最后一个球的一方原创 2014-12-31 20:42:36 · 1186 阅读 · 0 评论 -
数的读法-题解
基础练习 数的读法 时间限制:1.0s 内存限制:512.0MB问题描述 Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它们从0开始编号,到几百万,几千万,甚至上亿。 比如说,在对学生讲解第1234567009号位置上的碱基时,光看着数字是很难准确的念出来的。 所以,他迫切地需要一个系统,然原创 2015-01-22 10:44:25 · 1150 阅读 · 0 评论 -
完美的代价-题解
基础练习 完美的代价 时间限制:1.0s 内存限制:512.0MB 问题描述 回文串,是一种特殊的字符串,它从左往右读和从右往左读是一样的。小龙龙认为回文串才是完美的。现在给你一个串,它不一定是回文的,请你计算最少的交换次数使得该串变成一个完美的回文串。 交换的定义是:交换两个相邻的字符 例如mamad 第一次交换 ad原创 2015-01-23 12:16:08 · 3182 阅读 · 0 评论 -
匪警请拨110—题解
问题描述:为了保障社会秩序,保护人民群众生命财产安全,警察叔叔需要与罪犯斗智斗勇, 因而需要经常性地进行体力训练和智力训练! 某批警察叔叔正在进行智力训练: 1 2 3 4 5 6 7 8 9 = 110; 请看上边的算式,为了使等式成立,需要在数字间填入加号或者减号(可以不填,但不能填入其它符号)。 之间没有填入符号的数字组合成一个数, 例如:12+34+56+7-8原创 2015-03-01 00:47:58 · 2255 阅读 · 0 评论 -
李白打酒—题解
标题:李白打酒 话说大诗人李白,一生好饮。幸好他从不开车。 一天,他提着酒壶,从家里出来,酒壶中有酒2斗。他边走边唱: 无事街上走,提壶去打酒。 逢店加一倍,遇花喝一斗。 这一路上,他一共遇到店5次,遇到花10次,已知最后一次遇到的是花,他正好把酒喝光了。 请你计算李白遇到店和花的次序,可以把遇店记为a,遇花记为b。原创 2015-03-05 21:46:45 · 1332 阅读 · 0 评论 -
数独问题—题解
你一定听说过“数独”游戏。如【图1.png】,玩家需要根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行、每一列、每一个同色九宫内的数字均含1-9,不重复。数独的答案都是唯一的,所以,多个解也称为无解。本图的数字据说是芬兰数学家花了3个月的时间设计出来的较难的题目。但对会使用计算机编程的你来说,恐怕易如反掌了。本题的要求就是输入数独题目,程序输出数独的唯一解。我们保证...原创 2015-03-08 11:08:38 · 1503 阅读 · 0 评论 -
字母移动—题解
1. 字母移动2x3=6个方格中放入ABCDE五个字母,右下角的那个格空着。如图所示。 和空格子相邻的格子中的字母可以移动到空格中,比如,图中的C和E就可以移动,移动后的局面分别是: A B D E C A B CD E 为了表示方便,我们把6个格子中字母配置用一个串表示出来,比如上边的两种局面分别表示为: AB*DEC原创 2015-03-07 13:48:27 · 1500 阅读 · 0 评论 -
简单单位分数—题解
形如:1/a 的分数称为单位分数。可以把1分解为若干个互不相同的单位分数之和。例如:1 = 1/2 + 1/3 + 1/9 + 1/181 = 1/2 + 1/3 + 1/10 + 1/151 = 1/3 + 1/5 + 1/7 + 1/9 + 1/11 + 1/15 + 1/35 + 1/45 + 1/231等等,类似这样的分解无穷无尽。我们增加一个约束条件:最大原创 2015-03-08 10:13:47 · 793 阅读 · 0 评论 -
第39级台阶—题解
目描述:小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!站在台阶前,他突然又想着一个问题:如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?输出格式:输出一个整数解题思路: 1.基础的动态规划2.暴力搜索3.将动...原创 2015-03-08 21:04:57 · 1114 阅读 · 0 评论 -
01背包问题—题解
背包问题有n个物品,每个物品的重量为weight[i],每个物品的价值为value[i]。现在有一个背包,它所能容纳的重量为total,问:当你面对这么多有价值的物品时,你的背包所能带走的最大价值是多少?程序输入输出格式要求:程序输入3行:第一行是物品总数n, 第2行是每个物品的重量,第3行是每个物品的价值,第3行是背包的容量程序输出2行:第1行是背包所能带走的最大价值原创 2015-03-06 22:38:52 · 887 阅读 · 0 评论 -
剪格子—题解
1. 剪格子 如图p1.jpg所示,3 x 3 的格子中填写了一些整数。 我们沿着图中的红色线剪开,得到两个部分,每个部分的数字和都是60。 本题的要求就是请你编程判定:对给定的m x n 的格子中的整数,是否可以分割为两个部分,使得这两个区域的数字和相等。 如果存在多种解答,请输出包含左上角格子的那个区域包含的格子的最小数目。原创 2015-03-21 00:33:12 · 1011 阅读 · 0 评论 -
六角幻方—题解
标题:六角幻方 把 1 2 3 ... 19 共19个整数排列成六角形状,如下: * * * * * * * * * * * * * * * * * * * 要求每个直线上的数字之和必须相等。共有15条直线哦! 再给点线索吧!我们预先填好了2个数字,第一行的头两个数字是:15 13,参见图【p1.原创 2015-03-22 01:29:40 · 5212 阅读 · 3 评论 -
地宫取宝—题解
问题描述 X 国王有一个地宫宝库。是 n x m 个格子的矩阵。每个格子放一件宝贝。每个宝贝贴着价值标签。 地宫的入口在左上角,出口在右下角。 小明被带到地宫的入口,国王要求他只能向右或向下行走。 走过某个格子时,如果那个格子中的宝贝价值比小明手中任意宝贝价值都大,小明就可以拿起它(当然,也可以不拿)。 当小明走到出口时,如果他手中的宝贝恰好是k件,则这些宝贝就可以送原创 2016-06-15 16:23:42 · 667 阅读 · 0 评论