编程设计
泥瓦罐
跟随大神的脚步,前进....
展开
-
6174问题
描述 假设你有一个各位数字互不相同的四位数,把所有的数字从大到小排序后得到a,从小到大后得到b,然后用a-b替换原来这个数,并且继续操作。例如,从1234出发,依次可以得到4321-1234=3087、8730-378=8352、8532-2358=6174,又回到了它自己!现在要你写一个程序来判断一个四位数经过多少次这样的操作能出现循环,并且求出操作的次数 比如输入1234执行顺序是123原创 2014-10-23 16:29:38 · 815 阅读 · 0 评论 -
图的深度及广度搜索
今天来学习下,图的遍历方法,我们以下面这个图为例。 开始之前呢,先说个题外话,我们用最常用的二维数组来存这个图,专业的叫法是邻接矩阵法,这好像不是题外话吧!!^_^要不要先自己想一下,上面这个图用邻接矩阵怎么存呢! 废话不多说,先来个深度的吧: 那什么叫深度搜索呢:以一个未访问过的顶点(图由顶点和边组成,不要说你不知道哦!)为起点,沿着当前顶点边走到未访问过的顶点,当没有未访问过的顶点时原创 2015-05-02 14:21:31 · 724 阅读 · 0 评论 -
搜索之“炸弹人”
先来说说题目意思吧,如图,帮助小人找到一个放炸弹的坐标,使之一颗炸弹炸死最多的敌人。 我们用字符G表示敌人,#表示墙, . 表示可以走的路,特别说明下,那种一推就倒的墙,就把它看做路吧。 下面就来搜索来一下吧:/* 来让我们小小的说明下深搜的要点: 1、解决当前任务是什么。 2、什么时候我该休息。 3、当前任务做完了,下一步怎么做。 怎么样很好理解的吧 */ #include<stdio.h原创 2015-04-23 21:41:02 · 712 阅读 · 0 评论 -
一个例子让你明白一个算法-Dijkstra(求源点到各顶点最短路径)
算法思想1.在一个图中,把所有顶点分为两个集合P,Q(P为最短路径集合,Q为待选集合),用dis数组保存源点到各个顶点的最短路径(到自身为0)。 2.初始化P集合,就是加入源点到该集合,并在mark数组标记(代码中的mark[y]=1),那么Q集合就是剩下的顶点构成了。 3.在Q集合中找到这样一个顶点:源点到该顶点(记为u)的路径最短,把该点加入P集合,列出以u为起点的所有边(终点记为v),判断原创 2015-04-22 10:36:48 · 11823 阅读 · 0 评论 -
十六进制---十进制转换
一、十六--->十 思路:把十六进制的字符串看做十进制的字符串,按照十进制字符串转换为数字的方法,从高位到地位逐个字符处理。 代码: #include #include /*根据需要跟换 M 的值,以处理更多位数的十六位字符*/ #define M 10 /* 处理字符串,返回10进制数字 */ long long toTen(char s[]){ int i; /* long原创 2015-03-13 19:20:10 · 2171 阅读 · 0 评论 -
动态规划 - 金矿模型
问题描述: 有people个人和num个,包的容量为m,每个物品都有各自的体积和价值,问当从这n个物品中选择多个物品放在包里而物品体积总数不超过包的容量m时,能够得到的最大价值是多少原创 2014-10-28 21:14:49 · 1691 阅读 · 0 评论 -
喷水装置(一)
喷水装置(一) 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述现有一块草坪,长为20米,宽为2米,要在横中心线上放置半径为Ri的喷水装置,每个喷水装置的效果都会让以它为中心的半径为实数Ri(0<Ri<15)的圆被湿润,这有充足的喷水装置i(1<i<600)个,并且一定能把草坪全部湿润,你要做的是:选择尽量少的喷水装置,把整个草坪的全部湿润。原创 2014-10-27 22:12:00 · 1043 阅读 · 0 评论 -
分数加减法
描述 编写一个C程序,实现两个分数的加减法 输入输入包含多行数据 每行数据是一个字符串,格式是"a/boc/d"。 其中a, b, c, d是一个0-9的整数。o是运算符"+"或者"-"。 数据以EOF结束 输入数据保证合法 输出对于输入数据的每一行输出两个分数的运算结果。 注意结果应符合书写习惯,没有多余的符号、分子、分母,并且化简至最简分数 样例原创 2014-10-27 20:30:07 · 1275 阅读 · 0 评论 -
单链表的初始化心得
问题基于 单链表的原创 2014-09-21 21:13:30 · 1027 阅读 · 0 评论