2013年5月6日

顺时针螺旋打印数字

摘要: 从键盘输入一个整数(1~20) 则以该数字为矩阵的大小,把1,2,3…n*n 的数字按照顺时针螺旋的形式填入其中。例如: 输入数字2,则程序输出: 1 2 4 3 输入数字3,则程序输出: 1 2 3 8 9 4 7 6 5 输入数字4, 则程序输出: 1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7 解题:代码却是写的有点烂,没办法,可能现在局限与现在的思维水平。View Code 1 #include<iostream> 2 using namespace std; 3 4 int map[1000][1000]; 5 6 int main() 7 阅读全文

posted @ 2013-05-06 22:30 nigel_jw 阅读(226) 评论(0) 推荐(0)

输出上三角

摘要: 方阵的主对角线之上称为“上三角”。 请你设计一个用于填充n阶方阵的上三角区域的程序。填充的规则是:使用1,2,3….的自然数列,从左上角开始,按照顺时针方向螺旋填充。例如:当n=3时,输出:123645当n=4时,输出:12349105867当n=5时,输出:123451213146111571089程序运行时,要求用户输入整数n(3~20)程序输出:方阵的上三角部分。要求格式:每个数据宽度为4,右对齐。解题:还是一道输出问题,信心,细心。 阅读全文

posted @ 2013-05-06 22:10 nigel_jw 阅读(173) 评论(0) 推荐(0)

字母加密

摘要: 解题:做这种题目,就是细心,都能做出来的。一种Playfair密码变种加密方法如下:首先选择一个密钥单词(称为pair)(字母不重复,且都为小写字母),然后与字母表中其他字母一起填入至一个5x5的方阵中,填入方法如下:1.首先按行填入密钥串。2.紧接其后,按字母序按行填入不在密钥串中的字母。3.由于方阵中只有25个位置,最后剩下的那个字母则不需变换。如果密钥为youandme,则该方阵如下:youandmebcfghijklpqrstvwx在加密一对字母时,如am,在方阵中找到以这两个字母为顶点的矩形(红色字体):youandmebcfghijklpqrstvwx这对字母的加密字母为该矩形的另 阅读全文

posted @ 2013-05-06 22:08 nigel_jw 阅读(1170) 评论(0) 推荐(0)

整数的分划问题。

摘要: 整数的分划问题。如,对于正整数n=6,可以分划为:65+14+2,4+1+13+3,3+2+1,3+1+1+12+2+2,2+2+1+1,2+1+1+1+11+1+1+1+1+1+1现在的问题是,对于给定的正整数n,编写算法打印所有划分。用户从键盘输入n(范围1~10)程序输出该整数的所有划分。一位大神分别使用了递归和循环来做题,结果证明,还是循环比较好一点。http://blog.csdn.net/ll_0520/article/details/7461295View Code 1 #include<iostream> 2 #define MAX 100 3 using name 阅读全文

posted @ 2013-05-06 22:04 nigel_jw 阅读(329) 评论(0) 推荐(0)

放麦子

摘要: 题意:国际象棋,一共64个方格,第一个格子里放一粒麦子,第二个放2粒,第三个放4粒,第四个放8粒。。。。。(后面的数字是前面的两倍)求放满64个格子,一共需要多少粒麦子。解题:还是一个大数的问题。View Code 1 #include<iostream> 2 using namespace std; 3 int main() 4 { 5 int num[1000]; 6 int sum[1000]; 7 memset(num , 0 , sizeof(num)); 8 memset(sum , 0 , sizeof(sum)); 9 num[0] =... 阅读全文

posted @ 2013-05-06 21:59 nigel_jw 阅读(329) 评论(0) 推荐(0)

分红酒 (广度优先搜索)

摘要: 标题:分红酒 有4个红酒瓶子,它们的容量分别是:9升, 7升, 4升, 2升 开始的状态是 [9,0,0,0],也就是说:第一个瓶子满着,其它的都空着。 允许把酒从一个瓶子倒入另一个瓶子,但只能把一个瓶子倒满或把一个瓶子倒空,不能有中间状态。这样的一次倒酒动作称为1次操作。 假设瓶子的容量和初始状态不变,对于给定的目标状态,至少需要多少次操作才能实现? 本题就是要求你编程实现最小操作次数的计算。 输入:最终状态(逗号分隔) 输出:最小操作次数(如无法实现,则输出-1)例如:输入:9,0,0,0应该输出:0输入:6,0,0,3应该输出:-1输入:7,2,0,0应该输出:2当初比赛的时候做的这道题 阅读全文

posted @ 2013-05-06 21:54 nigel_jw 阅读(141) 评论(0) 推荐(0)

大数的乘法

摘要: 1 #include<iostream> 2 #include<string.h> 3 #define MAX 100 4 void change(char *st , int len); 5 using namespace std; 6 7 8 int main() 9 {10 char st1[MAX] , st2[MAX];11 int st3[2*MAX] = {0};12 scanf("%s%s" , st1 , st2);13 int len1 , len2 , len3;14 int i , j;15 len1 = strle... 阅读全文

posted @ 2013-05-06 21:46 nigel_jw 阅读(172) 评论(0) 推荐(0)

泊松分酒 (广搜)

摘要: 泊松是法国数学家、物理学家和力学家。他一生致力科学事业,成果颇多。有许多著名的公式定理以他的名字命名,比如概率论中著名的泊松分布。 有一次闲暇时,他提出过一个有趣的问题,后称为:“泊松分酒”。在我国古代也提出过类似问题,遗憾的是没有进行彻底探索,其中流传较多是:“韩信走马分油”问题。 有3个容器,容量分别为12升,8升,5升。其中12升中装满油,另外两个空着。要求你只用3个容器操作,最后使得某个容器中正好有6升油。 下面的列表是可能的操作状态记录:12,0,04,8,04,3,59,3,09,0,31,8,31,6,5 每行3个数据,分别表示12,8,6升容器中的油量 第一行表示初始状态,第二 阅读全文

posted @ 2013-05-06 21:43 nigel_jw 阅读(496) 评论(0) 推荐(0)

hdu 1518 Square (广搜)

摘要: Problem DescriptionGiven a set of sticks of various lengths, is it possible to join them end-to-end to form a square?InputThe first line of input contains N, the number of test cases. Each test case begins with an integer 4 <= M <= 20, the number of sticks. M integers follow; each gives the le 阅读全文

posted @ 2013-05-06 21:31 nigel_jw 阅读(143) 评论(0) 推荐(0)

hdu 1016 Problem Description (广搜)

摘要: Problem DescriptionA ring is compose of n circles as shown in diagram. Put natural number 1, 2, ..., n into each circle separately, and the sum of numbers in two adjacent circles should be a prime.Note: the number of first circle should always be 1.Inputn (0 < n < 20).OutputThe output format i 阅读全文

posted @ 2013-05-06 21:28 nigel_jw 阅读(146) 评论(0) 推荐(0)

导航