N皇后问题的变种,要求直接输出N皇后的解法数目。这道题可以在N-Queens I的基础上增加计数功能,在每求得一个成功的解时(行数为N时)使计数变量递增即可。题目不要求输出具体的解法,因此可以做一点优化,使用position数组用来表示皇后的位置,position[i]的值表示第i行的皇后所处的列,这样子省却字符串数组的开销同时判断是否合法的isValid函数也更加简洁。...
分类:
其他好文 时间:
2014-08-17 13:08:22
阅读次数:
238
描述
涵涵有两盒火柴,每盒装有 n 根火柴,每根火柴都有一个高度。现在将每盒中的火柴各自排成一列,同一列火柴的高度互不相同,两列火柴之间的距离定义为:∑ i=1 n (a i ?b i ) 2 ,其中
a i
表示第一列火柴中第 i 个火柴的高度,b i
表示第二列火柴中第 i 个火柴的高度。
每列火柴中相邻两根火柴的位置都可以交换,请你通过交换使得两列火柴之间的距离...
分类:
其他好文 时间:
2014-08-17 13:08:03
阅读次数:
178
题目大意:
计算[m,n]之间所有数字有多少个零。
解题思路:
可以用[0,m)之间和[0,n]之间有多少个零然后作差。
规律是计算所有位置在到当前数时有多少个零。
下面是代码:
#include
#include
#include
#include
#include
#include
#include
#include
#include
#...
分类:
其他好文 时间:
2014-08-17 11:47:52
阅读次数:
194
Josephu问题,设编号分别为:1, 2 , . . . . , n的n个人围坐一圈。约定序号为k(1≤k≤n)的人从1开始计数,数到m的那个人出列,他的下一位又从1开始计数,数到m的那个人又出列,依次类推,直到所有人出列位置。 输出结果为:
分类:
其他好文 时间:
2014-08-17 11:41:32
阅读次数:
208
布局:在 android 中我们常用的布局方式有这么几种:1.LinearLayout ( 线性布局 ) :(里面只可以有一个控件,并且不能设计这个控件的位置,控件会放到左上角)线性布局分为水平线性和垂直线性二者的属性分别为: android:orientation= "horizontal and...
分类:
移动开发 时间:
2014-08-17 11:39:42
阅读次数:
306
题目:给定一棵二叉树,将所有的结点都放到左儿子的位置,即除了root结点外,每一个结点都是其他某一个结点的左儿子。不用保持某种顺序,不能递归,O(1)空间。思路:我的想法是,维持一个遍历指针p,另一个指针tail永远指向向左遍历到底的结点;初始化p和tail都为root,开始循环:如果p为叶子结点,...
分类:
其他好文 时间:
2014-08-17 11:34:42
阅读次数:
198
模式匹配
基本原理
?在编辑文本程序的过程中,经常需要在文本中找到某个模式的所有出现位置,典型情况是,一段正在被编辑的文本构成一个文件,而所要搜索的模式是用户正在输入的特定关键字,有效地解决这个问题...
分类:
其他好文 时间:
2014-08-17 09:16:42
阅读次数:
145
插入排序(Insertion Sort)的基本思想是:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子文件中的适当位置,直到全部记录插入完成为止。
一、直接插入排序...
分类:
其他好文 时间:
2014-08-17 09:12:02
阅读次数:
211
一个序列a1,a2,a3...aN,求出满足:ai > aj 且 i
一个最容易想到的方法就是枚举所有的i,j看看是否满足,显然是O(n^2)的复杂度。不够好。
可以这样考虑,开一个数组保存这n个数出现的位置和对应的次数,这个数组要开到a数组里最大的那个数MAX,也就是hash,初始状态数组里没有元素,每个数对应的个数都是0.
如果考虑第i个数,找到比它大的所有的数 的个数,查找的范围即 ...
分类:
其他好文 时间:
2014-08-16 23:52:31
阅读次数:
425
题意:给你一个无限的棋盘,里面有n×n的棋子,每个棋子可以跳过一个相邻(4个方向)棋子跳到下一个位置,并把他的相邻位(他跳过的那一位)删除。解题思路:判断n%3 是否等于 0 , 原因未知。解题代码: 1 #include 2 int main(){ 3 int n ; 4 whil...
分类:
其他好文 时间:
2014-08-16 23:49:01
阅读次数:
290