自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (1)
  • 收藏
  • 关注

原创 蓝桥杯 01背包

思路动态规划基础题目。关于动态规划的详解点击这里。代码#include<iostream>#include<cstring>using namespace std;int max(int x,int y){ if(x>y) return x; return y;}int main(){ //freopen("data.txt","r",stdin); int n

2017-10-16 20:30:35 509 1

原创 马踏棋盘(贪心)

描述国际象棋共有8行8列,64个单元格,无论将马放在棋盘的哪个单元格,都可以让马踏遍棋盘的每个单元格。要求编程实现马踏棋盘的过程,输出马在棋盘上走过的次序。思路使用循环逐个处理棋盘的64个单元格将当前步数写入棋盘数组中,开始探测下一步该走的位置分别测试八个方向,将可走的位置记录再next数组中对可走位置进行再探测,找出每个位置的下一步可走步数,将步数最少的可走位置作为下一步的位置(每次都将步

2017-10-07 10:01:09 1310

原创 蓝桥杯12-1三角形

题目 为二维空间中的点设计一个结构体,在此基础上为三角形设计一个结构体。分别设计独立的函数计算三角形的周长、面积、中心和重心。输入三个点,输出这三个点构成的三角形的周长、面积、外心和重心。结果保留小数点后2位数字。思路这是数学题面积用海伦公式:a=AB,b=BC,c=AC,p=(a+b+c)/2, 三角形面积s=sqrt(p*(p-a)(p-b)(p-c));外心点击这里或者:重心:x=(x1+x

2017-09-27 18:00:01 796

原创 C语言长整型相乘

思路用数组strA,strB存储数字,将两个大数对应位置(i、j)上的数相乘,乘积直接放在数组strC的第(i+j)位,待所有位置上的数都相乘后,对strC进行进位。#include<iostream>#include<cstring>using namespace std;int main(){ int strA[4000],strB[4000],strC[4000]={0};

2017-09-24 21:47:12 2855

原创 蓝桥杯 因式分解

问题描述  设计算法,用户输入合数,程序输出若个素数的乘积。例如,输入6,输出2*3。输入20,输出2*2*5。数据规模和约定   输入数据中每一个数在int表示范围内。思路先求出2~n的所有素数,再进行分解 求素数的方法代码#include<iostream>using namespace std;int len;int prime[4000];//1~n的所有素数 int a[4000

2017-09-24 21:32:03 515

原创 蓝桥杯摩尔斯电码

问题描述  摩尔斯电码破译。类似于乔林教材第213页的例6.5,要求输入摩尔斯码,返回英文。请不要使用”zylib.h”,只能使用标准库函数。用’ * ‘表示’ . ‘,中间空格用’ | ‘表示,只转化字符表。   摩尔斯码定义见:http://baike.baidu.com/view/84585.htm?fromId=253988。提示  清橙进行评测时,输入是以EOF结尾的,而不是换行符。(E

2017-09-24 21:25:51 900 1

原创 筛选法求素数

Eratosthenes算法假设有一个筛子,用来存放2~N,例如:2、3、4、5、6、7、8、9、10、11……N由于偶数都能被2整除,因此偶数都不是素数(2除外),那么将这些数筛去,得到:2、3、5、7、9、11……N接着再将3的倍数筛去,得到:2、3、5、7、11……N接下来再将5、7、11、……的倍数筛去,到最后留下来的就都是素数了 代码#include<stdio.h>#de

2017-09-24 21:20:28 387

原创 C/C++生成随机数

C/C++生成随机数srand()、time() 与rand()用time(NULL)作为srand()的随机数种子来初始化随机数发生器,然后使用rand()生成随机数,要使用这三个函数,须在源程序头部包含”time.h”头文件。#include<time.h>……int n;srand(time(NULL));n=rand();

2017-09-16 20:29:02 377

原创 哈夫曼树的构造与哈夫曼编码

#include<stdio.h>#include<string.h>#include<stdlib.h>#define N 20//叶子结点最大值#define M 2*N-1//所有结点最大值 //静态三叉链表实现哈夫曼树 typedef struct Huffman{ int weight; int parent; int lchild; int r

2017-05-23 17:39:07 2409

原创 理财计划

问题描述  银行近期推出了一款新的理财计划“重复计息储蓄”。储户只需在每个月月初存入固定金额的现金,银行就会在每个月月底根据储户账户内的金额算出该月的利息并将利息存入用户账号。现在如果某人每月存入k元,请你帮他计算一下,n月后,他可以获得多少收益。 输入格式   输入数据仅一行,包括两个整数k(100<=k<=10000)、n(1<=n<=48)和一个小数p(0.001<=p<=0.01),分别

2017-03-29 08:15:16 1063

原创 兰顿蚂蚁

问题描述  兰顿蚂蚁,是于1986年,由克里斯·兰顿提出来的,属于细胞自动机的一种。  平面上的正方形格子被填上黑色或白色。在其中一格正方形内有一只“蚂蚁”。   蚂蚁的头部朝向为:上下左右其中一方。  蚂蚁的移动规则十分简单:   若蚂蚁在黑格,右转90度,将该格改为白格,并向前移一格;   若蚂蚁在白格,左转90度,将该格改为黑格,并向前移一格。  规则虽然简单,蚂蚁的行为却十分复杂。刚

2017-03-29 00:17:24 338 1

原创 出现次数最多的整数

问题描述编写一个程序,读入一组整数,这组整数是按照从小到大的顺序排列的,它们的个数N也是由用户输入的,最多不会超过20。然后程序将对这个数组进行统计,把出现次数最多的那个数组元素值打印出来。如果有两个元素值出现的次数相同,即并列第一,那么只打印比较小的那个值。   输入格式:第一行是一个整数N,N £ 20;接下来有N行,每一行表示一个整数,并且按照从小到大的顺序排列。   输出格式:输出只

2017-03-27 16:19:52 614 3

原创 八皇后改DFS

逐行判断,在当前行放置皇后之后递归进入下一行#include<stdio.h>int queen[9]={0};int count=1;int base[8][8];int max=0; int abs(int i){ if(i<0) return -i;}//输出最大解 int visit(){ int i,sum=0; for(i=1;i<9;i++){

2017-03-26 10:18:54 423

原创 全排列的递归算法

分析对 1 2 3 进行全排列: 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1 共有六种情况,可以发现:对1 2 3 的全排列可以分成以1为首的全排列、以2为首的全排列、以3为首的全排列三个子问题,而每个子问题又可以分成以其余两个数为首的全排列。把问题转化为规模缩小了的同类问题的子问题,这样一来我们就可以通过递归来解决这个问题了。代码#include<stdi

2017-03-12 11:50:46 320

原创 最长上升子序列

问题:给出n个数,求出其最长上升子序列的长度(不要求子序列连续),比如n=5,5个数是4,6,5,7,3 其最长下降子序列就是4,6,7,长度为3。思路将问题分解为求以a[i] ((i=1,2……n))为终点的最长上升子序列,当n个子问题全部求解完成后,n个子问题的解的最大值就是该问题的解。算法使用max[]保存各个终点的最长上升子序列长度(即为各个子问题的解)。max[]的值,就是在a[i]左边,

2017-03-11 16:17:40 234

原创 蓝桥杯基础练习FJ的字符串

问题描述   FJ在沙盘上写了这样一些字符串:   A1 = “A”   A2 = “ABA”   A3 = “ABACABA”   A4 = “ABACABADABACABA”   … …   你能找出其中的规律并写所有的数列AN吗? 输入格式   仅有一个数:N ≤ 26。 输出格式   请输出相应的字符串AN,以一个换行符结束。输出中不得含有多余的空格或换行、回车符。

2017-03-08 23:20:07 1599 1

原创 蓝桥杯基础练习字符串对比

四种情况分开讨论 其中: strcmp()函数用来判断两个字符串是否相同(区分大小写); tolower()函数可以将字母转化为小写。#include<stdio.h>#include<string.h>#include<ctype.h>void case1(int la,int lb){ if(la!=lb){ printf("1"); }}voi

2017-03-08 20:56:19 829

转载 二维数组与指针

“数组名被改写成一个指针参数”规则并不是递归定义的。数组的数组会被改写成“数组的指针”,而不是“指针的指针”——《c专家编程》http://www.cnblogs.com/stoneJin/archive/2011/09/21/2184211.html  二维数组和指向指针的指针

2017-03-02 08:55:09 412

原创 删除字符串中的空格、逗号等

#include<stdio.h>void dele(char *a){ int i,j=0; for(i=0;a[i]!='\0';i++){ if(a[i]>='0'&&a[i]<='9'){//只保留字符0~9 a[j]=a[i]; j++; } } a[j]='\0';}in

2017-03-01 16:34:22 2768

原创 八皇后问题(递归)

在n*n的方格棋盘上,放置n个皇后,要求每个皇后不同行,不同列,不同对角线。 解:对于皇后问题,每一行只能放一个皇后,用(k,q[k]) (1<=k<=n)表示皇后的位置,设place(k,n)表示已在前面放置好了第1~k-1个皇后,用于放置第k~n个皇后,则place(k+1,n)表示需要放置第k+1~n个皇后,所以place(k,n)是“大问题”,place(k+1,n)是“小问题”,假设p

2017-03-01 15:41:53 654

转载 C语言中如何将二维数组作为函数的参数传递

转自:http://hi.baidu.com/outsmile/blog/item/38db95ede27206d2b31cb11d.html 今天写程序的时候要用到二维数组作参数传给一个函数,我发现将二维数组作参数进行传递还不是想象得那么简单里,但是最后我也解决了遇到的问题,所以这篇文章主要介绍如何处理二维数组当作参数传递的情况,希望大家不至于再在这上面浪费时间。 正文:   

2017-02-23 21:45:36 1935

转载 google chrome adobe flash player过期解决方法

最近使用谷歌Chrome浏览器提示adobe flash player已过期,浏览网页时一些flash元素的东西都无法正常显示,在网上尝试寻找很多方法,都不能解决,最后,经测试有效方法如下:一:下载最新版本adobe flash player插件:(注意,对应系统) 地址:http://www.adobe.com/support/flashplayer/debug_downlo

2017-01-08 19:27:08 3610 1

原创 蓝桥杯的回形取数(C语言)

题目说明代码及注释题目问题描述   回形取数就是沿矩阵的边取数,若当前方向上无数可取或已经取过,则左转90度。一开始位于矩阵左上角,方向向下。 输入格式   输入第一行是两个不超过200的正整数m, n,表示矩阵的行和列。接下来m行每行n个整数,表示这个矩阵。 输出格式   输出只有一行,共mn个数,为输入矩阵回形取数得到的结果。数之间用一个空格分隔,行末不要有多余的空格。 样例输入

2016-12-28 09:55:50 8200 6

原创 贪吃蛇游戏(C语言)(在Dev c++、vc中运行通过)

贪吃蛇游戏(C语言)在大一计算机实训时写的,其中较难理解的应该是句柄,需要自己网上查找资料 以下是代码片段:#include<stdio.h>#include<conio.h>#include<windows.h>#include<time.h>#define framex 5#define framey 5#define wide 20#define high 20int i,j

2016-12-26 22:40:29 34215 14

原创 蓝桥杯huffuman树

思路是首先把得到的数组进行排序,这里使用插入法排序,然后用s存放最小的两个数字之和(即为费用Pa+Pb),在数组元素第二小的地址上存放最小两数值和,最小一位清零,循环结束时s即为最终费用。#include"stdio.h"int main(){ int n,i,t,tt,j,x=0,s=0; scanf("%d",&n); int a[n]; for(i=0;i<n

2016-12-10 12:21:23 1663

原创 蓝桥杯 基础练习 高精度加法

问题描述  输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。算法描述  由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。  定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数组B来存储b。  计算c = a + b的时候,首先将A[0]与B[0]相加,如果有

2016-12-08 19:36:17 536

Visual C++游戏编程基础PDF

Visual C++ 游戏编程基础。适用于C++初学者的游戏开发书籍

2017-10-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除