03 2019 档案

摘要:盒子取球方法二今盒子里有 n 个小球,A、B 两人轮流从盒中取球,每个人都可以看到另一个人取了多少个, 也可以看到盒中还剩下多少个,并且两人都很聪明,不会做出错误的判断。 我们约定:每个人从盒子中取出的球的数目必须是:1,3,7 或者 8 个。轮到某一方取球时不能弃权! A 先取球,然后双方交替取球 阅读全文
posted @ 2019-03-21 19:59 月为暮 阅读(881) 评论(3) 推荐(0)
摘要:众所周知,数据在计算机中的存储都是以二进制存储的,整数都可以转化为二进制的形式, 可以完美转化,不损失精度。那么分数呢?是怎么存储的呢?答案肯定不是完美存储,是有部分 精度损失的,近似存储的。例如整形数8和浮点数8.0是不一样的,有微小的差别,一般进行运算时 不会体现出来,但如果需要大量计算时就会发 阅读全文
posted @ 2019-03-19 20:22 月为暮 阅读(354) 评论(0) 推荐(0)
摘要:排序是最基础也是重要的一种排序,在C语言中,排序有很多种:冒泡排序、选择排序、 桶排序、快速排序等等,其中一般不经过优化的排序算法时间复杂度为O(n^2),或者空 将复杂度比较夸张,其中快速排序是经过优化的一种算法,一般数据的复杂度为O(nlogn) 快排思想:首先是一段数据例如:8 9 5 1 3 阅读全文
posted @ 2019-03-19 20:09 月为暮 阅读(156) 评论(0) 推荐(0)
摘要:进制转化是刷题的时候比较常见遇到的问题,而且变化也比较多。 题目难度不同,下边是接简单题目题目最简单的方法。 #include<stdio.h>//十进制转化八进制int main(){ int n; scanf("%d",&n); printf("%o",n);//注意不可是大写字母 return 阅读全文
posted @ 2019-03-17 20:28 月为暮 阅读(571) 评论(0) 推荐(0)
摘要:今天看到一个比较有意思的解法来接全排列问题,能够将代码优化的比较多。 问题描述是这样的: 对于长度为 5 位的一个 01 串,每一位都可能是 0 或 1,一共有 32 种可能 。它们的前几个是: 00000 00001 00010 00011 00100 请按从小到大的顺序输出这 32 种 01 串 阅读全文
posted @ 2019-03-17 20:20 月为暮 阅读(532) 评论(0) 推荐(0)
摘要:这是一道较难的题目,我刚开始用排列组合的方式来做,并没有做出来,故运用了的深搜算法。 深搜算法的概念: 选其中一条路,遍历完成后,逐步返回直至全部遍历,最后返回起点。 解题思路 : 题目中对零的个数没有要求,只是说不能有两个零相邻,所以可以用深搜找出这个数不同位置上有零 数的种类,最后在进行阶乘运算 阅读全文
posted @ 2019-03-16 20:27 月为暮 阅读(267) 评论(0) 推荐(0)
摘要:判断IP地址的合法性, 1.不能出现除数字和点字符以外的的其他字符 2.数字必须在0-255之间,要注意边界。 题目分析: 因为一个IP是又四个数字组成,且可能存在符号和其他字符,故不能用整型数组处理,应该用字符串的形式存储, 将字符串分为四个部分,逐一处理。 代码如下: #include<stdi 阅读全文
posted @ 2019-03-16 20:08 月为暮 阅读(602) 评论(0) 推荐(0)
摘要:这道题是比较简单的输出字符图形的题,但是有几个坑还是要注意下。 1.题中所述的X是大写的,不要看成小写了。(我就错了好几次) 2.每一行输出最后的X后不能在输出空格。 3.输出两个DNA中间有一个空行。 解题思路: 只需要求出一个图形X的排列即可,后边直接重复输出,定义一个数组用来存放X, 注意观察 阅读全文
posted @ 2019-03-16 19:54 月为暮 阅读(422) 评论(0) 推荐(0)