- 浏览: 16362 次
最新评论
文章列表
有一种很有意思的游戏,就是有物体若干堆,可以是火柴棍或是围棋子等等均可。两个
人轮流从堆中取物体若干,规定最后取光物体者取胜。这是我国民间很古老的一个游戏
,别看这游戏极其简单,却蕴含着深刻的数学原理。 ...
八数码的八境界
研究经典问题,空说不好,我们拿出一个实际的题目来演绎。八数码问题在北大在线测评系统中有一个对应的题,题目描述如下:
Eight
Time Limit: 1000MS Memory Limit: 65536K Special Judge
Description
The 15-puzzle has been aroundfor over 100 years; even if you don't
know it by that name, you've seen it. Itis const ...
第7题-【字符串扫描】-注意处理头尾
- 博客分类:
- 76道C语言题
/* 7. 读入一行文本,包含若干个单词(以空格间隔,%结尾)。将其中以 A 开头的 单词与以 N 结尾的单词,用头尾交换的办法予以置换。*/
#include "iostream"using namespace std;
#define MAX_SIZE 1001 + 1
int main(){ char str[MAX_SIZE]; gets(str);
int i=0; while(str[i]) { if((str[i-1]==' ' && str[i]=='A') || str[0]=='A') { int k = i; w ...
- 2012-05-08 22:15
- 浏览 570
- 评论(0)
/* 6. 矩阵中填数. 当给出 N*N 的矩阵,要求用程序填入下列形式的数:
① 倒填,例如N=5 ② 蛇形填数 ③ 回转填数
┌─┬─┬─┬─┬─┐ ┌─┬─┬─┬─┬─┐ ┌─┬─┬─┬─┬─┐ │25│24│23│22│21│ │ 1│ 3│ 4│10│11│ │ 1│16│15│14│13│ ├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤ │20│19│18│17│16│ │ 2│ 5│ 9│12│19│ │ 2│17│24│23│12│ ├─┼─┼─┼─┼ ...
第5题-【数制转换】
- 博客分类:
- 76道C语言题
/* 5. 输入一个十进数,将其转换成 N 进制数(0<N<=16)。*/
#include "iostream"using namespace std;
#define MAX_SIZE 17
int main(){ const char map[MAX_SIZE] = "0123456789ABCDEF"; int n, N; char dataBuf[1001+1]; int len = 0;
cin >> n >> N; int m = n; while(m / N) { dataBuf[len++] ...
第4题-【枚举】-拉丁数
- 博客分类:
- 76道C语言题
/* 4. 在N行N列的数阵中, 数K(1〈=K〈=N)在每行和每列中出现且仅 出现一次,这样的数阵叫N阶拉丁方阵。例如下图就是一个五阶拉丁方阵。 编一程序,从键盘输入N值后,打印出所有不同的N阶拉丁方阵,并统计个数。
1 2 3 4 5 2 3 4 5 1 3 4 5 1 2 4 5 1 2 3 5 1 2 3 4*/
#include "iostream"using namespace std;
#define MAX_SIZE 1001int ma ...
C99标准开辟-开辟二维数组
- 博客分类:
- 竞赛
a = new int *[N];//开辟数组新地址
for(int i=0;i<N;i++)
a[i] = new int [N];
第3题-【规律方阵】
- 博客分类:
- 76道C语言题
/* 3. 打印一个 N*N 的方阵,N为每边 N=15 打印出下面图形 字符的个数(3<N<20), 要求最 TTTTTTTTTTTTTTT 外一层为"T", 第二层为"J", 从第三层 TJJJJJJJJJJJJJT 起每层依次打印数字 1,2,3,... TJ11111111111JT (右图以N为15为例) TJ12222222221JT ...
- 2012-05-07 16:31
- 浏览 734
- 评论(0)
/* 2. A、B、C、D、E五名学生有可能参加计算机竞赛,根据下列条件判断哪些 人参加了竞赛:
(1)A参加时,B也参加;
(2)B和C只有一个人参加;
(3)C和D或者都参加,或者都不参加;
(4)D和E中至少有一个人参加;
(5)如果E参加,那么A和D也都参加。*/
#include "iostream"using namespace std;
#define MAX_ELE 5
int judge(int *arr){ int j1, j2, j3, j4, j5; j1 = !arr[0] || arr[1]; j2 ...
vs2008增量连接错误
- 博客分类:
- 错误
项目->属性->链接器->常规 下面的“启用增量链接”,将“是(/INCREMENTAL)”改为“否(/INCREMENTAL:NO)”。
不过这又引入了另外一个警 告:FormatCom.obj : warning LNK4075: 忽略“/EDITANDCONTINUE”(由于“/INCREMENTAL:NO”规范)
选择项目,属性->配置属性 ->C/C++,修改“调试信息格式”为“程序数据库(/Zi)”即可
算法之排列与组合算法
- 博客分类:
- 竞赛
1. 前言
本文介绍了常用的排列组合算法,包括全排列算法,全组合算法,m个数选n个组合算法等。
2. 排列算法
常见的排列算法有:
(A)字典序法
(B)递增进位制数法
(C)递减进位制数法
(D)邻位对换法
(E)递归法
介绍常用的两种:
(1) 字典序法
对给定的字符集中的字符规定了一个先后关系,在此基础上按照顺序依次产生每个排列。
[例]字符集{1,2,3},较小的数字较先,这样按字典序生成的全排列是:123,132,213,231,312,321。
生成给定全排列的下一个排列 所谓一个的下一个就是这一个与下一个之间没有字典顺序中相邻的字符串。这就要求这一个与下一 ...
/* 1. 给定等式 A B C D E 其中每个字母代表一个数字,且不同数字对应不 D F G 同字母。编程求出这些数字并且打出这个数字的 + D F G 算术计算竖式。
───────
X Y Z D E*/
#include "iostream"using namespace std;
void swap(int arr[], int i1, int i2){ int tmp; tmp = arr[ ...
- 2012-05-05 07:34
- 浏览 581
- 评论(0)
XML核心技术
文档描述、验证、约束技术:DTD、Schema
编程接口:DOM、SAX
文档转换:XSL
数据查询:XPath
链接技术:XLink、XPoint
eXtensible Markup Language
Document Type Definition(DTD)
XML并不描述页面元素的格式,他是文档的结构和语义
XML中的每个元素都是成对出现的
XML中元素嵌套关系要保持正确性
每个XML有且只有一个根元素(唯一的一个包含了其他所有元素的元素)
- 2012-05-04 11:47
- 浏览 525
- 评论(0)
session的本质
- 博客分类:
- Web
目录:一、术语session二、HTTP协议与状态保持三、理解cookie机制四、理解session机制五、理解javax.servlet.http.HttpSession六、HttpSession常见问题七、跨应用程序的session共享八、总结参考文档
一、术语session在我的经验里,session这个词被滥用的程度大概仅次于transaction,更加有趣的是transaction与session在某些语境下的含义是相同的。
session,中文经常翻译为会话,其本来的含义是指有始有终的一系列动作/消息,比如打电话时从拿起电话拨号到挂断电话这中间的一系列过程可以称之为一个 sess ...
1、概述
树状数组(binary indexed tree),是一种设计新颖的数组结构,它能够高效地获取数组中连续n个数的和。概括说,树状数组通常用于解决以下问题:数组{a}中的元素可能不断地被修改,怎样才能快速地获取连续几个数的和?
2、树状数组基本操作
传统数组(共n个元素)的元素修改和连续元素求和的复杂度分别为O(1)和O(n)。树状数组通过将线性结构转换成伪树状结构(线性结构只能逐个扫描元素,而树状结构可以实现跳跃式扫描),使得修改和求和复杂度均为O(lgn),大大提高了整体效率。
给定序列(数列)A,我们设一个数组C满足
C[i] = A[i–2^k+ 1] + … + A[ ...