- 博客(37)
- 资源 (2)
- 收藏
- 关注
原创 计蒜客2018省赛B组模拟五《G合并数字》
蒜头君得到了 nn 个数,他想对这些数进行下面这样的操作,选出最左边的相邻的差的绝对值为 11 的两个数,只保留较小的数,删去较大的数,直到没有两个相邻的差的绝对值为 11 的数,问最多可以进行多少次这样的操作?输入格式输入第一行为一个整数 n(1 \leq n \leq 10^5)n(1≤n≤105),表示数字的总数第二行为 nn 个整数 x_1,x_2,...,x_n(0 \leq x_i \...
2018-03-26 16:30:01
339
原创 L2-023. 图着色问题
https://www.patest.cn/contests/gplt/L2-023#include<bits/stdc++.h>using namespace std;int main(){ int ma[505][505],v,e,k,bb[505]; set<int>st; memset(ma,0,sizeof(ma)); cin>>...
2018-03-24 16:01:35
400
原创 交换瓶子
有N个瓶子,编号 1 ~ N,放在架子上。 比如有5个瓶子: 2 1 3 5 4 要求每次拿起2个瓶子,交换它们的位置。 经过若干次后,使得瓶子的序号为: 1 2 3 4 5 对于这么简单的情况,显然,至少需要交换2次就可以复位。 如果瓶子更多呢?你可以通过编程来解决。 输入格式为两行: 第一行: 一个正整数N(N<10000), 表示瓶子的数目 第二行:N个正整数,用空格分开,表示瓶子目前...
2018-03-19 19:11:36
492
原创 凑算式
如图,这个算式中A~I代表1~9的数字,不同的字母代表不同的数字。比如: 6+8/3+952/714 就是一种解法, 5+3/1+972/486 是另一种解法。 这个算式一共有多少种解法?思路:法一:暴力求解将1~9的数字进行全排列,找到满足算式的解,则计数加一int main(){ int a[9 + 5],ans = 0; for(int i = 0;i < 9;i++) ...
2018-03-19 15:56:54
339
原创 生日蜡烛
某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。 现在算起来,他一共吹熄了236根蜡烛。 请问,他从多少岁开始过生日party的?请填写他开始过生日party的年龄数。思路:1 2 3 4 5 6……这一个等差数列的前n项和为(1+n)*n/2设从a岁开始过生日,到了b岁一共吹熄了236根蜡烛。即为:(a+b)(b-a+1)/2=236枚举求解程序:#includ...
2018-03-19 15:47:28
362
原创 煤球数目
有一堆煤球,堆成三角棱锥形。具体: 第一层放1个, 第二层3个(排列成三角形), 第三层6个(排列成三角形), 第四层10个(排列成三角形), .... 如果一共有100层,共有多少个煤球?请填表示煤球总数目的数字。思路:第一层放1个 第二层 1+2个 第三层 1+2+3......每层放的煤球数成等差数列第i层为(1+i)*i/2个煤球程序:#include<bits/stdc++.h&g...
2018-03-19 15:44:19
240
原创 回溯法
设计算法从前m个大写字母(m≤26)种取出n个字母的所有排列(组合)(排列数)#includeusing namespace std;char *a;bool check(int i){ for(int j = 0;j { if(a[i] == a[j])//相同 { ret
2017-12-07 13:52:02
977
原创 回溯法解决0-1背包问题
#includeusing namespace std;int n,c,bestp;//物品的个数,背包的容量,最大价值//物品的价值,物品的重量,x[i]暂存物品的选中情况,物品的选中情况int p[100],w[100],x[100],bestx[100];void Backtrack(int i,int cp,int cw){ if(i>
2017-12-07 13:49:35
578
原创 20171202做的题
精度!精度(精确到小树点后20位)Description如今是信息化社会,是数据大爆炸的时代,而与数据其中一个很重要的属性就是数据精度。所谓差之毫厘,谬以千里。在数据精度上便能充分体现。1991年海湾战争中,爱国者导弹因截断误差导致拦截失败,导弹击中了美军导致28人丧生。最后调查发现是因为导弹系统采用的为24位位模式,无法精确的表示0.1秒,最终导致误差达到了0.3443秒。
2017-12-02 22:01:06
358
原创 20171202做的题
运输宝石Description有一天 MR.Z 无意中来到一个藏宝洞,藏宝洞里有n中大小不同的宝石,MR.Z高兴坏了,他决定把所有的宝石都带回家。MR.Z身上刚好有两种最大容量为mm的宝石盒,而且为了保护宝石,一个宝石盒里不能同时装两种宝石,MR.Z数出了每种宝石的数量,请你帮他算一算要运多少次才能把所有的宝石带回家。Input第一行输入
2017-12-02 21:57:56
424
原创 求斐波拉契数列的任一项(如:第110项)
#includeusing namespace std;void Fibonacci(int n){ if (n == 1 || n == 2) { cout } else { int *f1 = new int[1]; f1[0] = 1; int le
2017-10-21 16:20:56
1252
转载 斐波那契数列的各种求法
斐波那契数列百科名片“斐波那契数列”是意大利数学家列昂纳多·斐波那契首先研究的一种递归数列, 它的每一项都等于前两项之和。 此数列的前几项为1,1,2,3,5等等。 在生物数学中,许多生物现象都会呈现出斐波那契数列的规律。斐波那契数列相邻两项的比值趋近于黄金分割数。此外,斐波那契数也以密码的方式出现在诸如《达芬奇密码》的影视书籍中。目录[隐藏]【奇妙的属性】【影视链接】【相关的
2017-09-24 19:40:41
1411
转载 java中命名规则
一、命名规范1、 项目名全部小写2、 包名全部小写3、 类名首字母大写,如果类名由多个单词组成,每个单词的首字母都要大写。如:public class MyFirstClass{}4、 变量名、方法名首字母小写,如果名称由多个单词组成,每个单词的首字母都要大写。如:int index=0; public void toString(){}5、 常量名全部
2017-09-02 09:26:36
311
原创 母牛的故事
有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?input输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0n=0表示输入数据的结束,不做处理。output对于每个测试实例,输出在第n年的时候母牛的数量。每个输出占一行。Sample Input245
2017-08-11 08:55:10
399
原创 蛇形填数
在n×n方阵里填入1,2,…,n×n,要求填成蛇形。例如,n=4时方阵为:10 11 12 1 9 16 13 28 15 14 37 6 5 4#include#include#define maxn 20int a[maxn][maxn];int main(){ int n,x,y,tot=0;
2017-08-07 14:50:00
275
原创 开灯问题
有n盏灯,编号为1~n。第1个人把所有灯打开,第2个人按下所有编号为2 的倍数的开关(这些灯将被关掉),第3个人按下所有编号为3的倍数的开关(其中关掉的灯 将被打开,开着的灯将被关闭),依此类推。一共有k个人,问最后有哪些灯开着?输 入n和k,输出开着的灯的编号。k≤n≤1000。样例输入:7 3样例输出:1 5 6 7#include#include#
2017-08-07 13:43:25
305
原创 排列(permutation)
用1,2,3,…,9组成3个三位数abc,def和ghi,每个数字恰好使用一次,要 求abc:def:ghi=1:2:3。按照“abc def ghi”的格式输出所有解,每行一个解。提示:不必 太动脑筋。#include void result(int num, int &result_add, int &result_mul){ int i, j, k;
2017-07-22 09:23:18
415
原创 分数化小数(decimal)
输入正整数a,b,c,输出a/b的小数形式,精确到小数点后c位。a,b≤106,c≤100。输 入包含多组数据,结束标记为a=b=c=0。样例输入:1 6 40 0 0样例输出:Case 1: 0.1667#include#includeusing namespace std;int main(){ int a,b,c; cin>>a>>b>>c
2017-07-22 09:03:06
312
原创 子序列的和(subsequence)
输入两个正整数n<m<106,输出 ,保留5位小数。输入包含多组数据, 结束标记为n=m=0。提示:本题有陷阱。样例输入:2 465536 6553600 0样例输出:Case 1: 0.42361Case 2: 0.00001陷阱是:当n很大时n*n会很大,所以应该分两次除#include#includeint main(){ int m
2017-07-21 10:24:22
375
原创 时间转换
#include#includeusing namespace std;int main(){ int startime, changertime,t,m,finallytime; cin >> startime >> changertime; t = startime / 100; m = startime % 100; if (changertime
2017-07-21 10:03:35
290
原创 十六进制a+b
#includeusing namespace std;int main(){ int a, b; while (cin >> hex >> a >> hex >> b) { cout } return 0;}
2017-07-21 10:02:43
915
原创 输入正整数n≤20,输出一个n层的倒三角形。例如,n=5时输出如下:
输入正整数n≤20,输出一个n层的倒三角形。例如,n=5时输出如下:######### ####### ##### ### ##include#includeint main(){ int i,j,k,n; scanf("%d",&n); for(i=n;i>=1;i--) {
2017-07-21 10:01:29
15123
原创 图之邻接表
#ifndef _GRAPH_H_#define _GRAPH_H#define OK 1#define ERROR 0#define INFINTY -1#define MAX_VERTEX_NUM 20typedef int VertexType;typedef int Status;//邻接表表示typedef struct ArcNode{ in
2017-01-12 10:43:33
501
原创 图的邻接矩阵
图的特点:非线性多对多#ifndef _QUEUE_H_#define _QUEUE_H_#define MAXSIZE 4#define TRUE 1#define FALSE 0#define OK 1#define ERROR 0#define OVERFLOW -2typedef int ElemType;typedef int Stat
2017-01-12 10:41:14
764
原创 二叉排序树
#ifndef _BST_H_#define _BST_H_#define TRUE 1#define FALSE 0#define OK 1#define ERROR 0#define INFEASIBLE -1#define OVERFLOW_s -2typedef int Status;typedef int TElemType;typedef s
2017-01-12 10:38:24
328
原创 二叉树的操作
二叉树特点:非线性#include"Bitree.h"#ifndef _STACK_H_#define _STACK_H_#define STACK_INIT_SIZE 100#define STACKINCREMENT 10#define TRUE 1#define FALSE 0#define OK 1#define ERROR 0#define I
2017-01-12 10:34:56
256
原创 压缩矩阵之转置
#ifndef _MASTRIX_H_#define _MASTRIX_H_#define OK 1#define ERROR 0#define MAXSIZE 12500//非零元的最大个数typedef int ElemType;typedef struct{ int i,j; ElemType e;}Triple;typedef struct{
2017-01-12 10:32:18
442
原创 字符串 数组实现
#ifndef _STRING_H_#define _STRING_H_#define OK 1#define FALSE 0#define TRUE 1#define ERROR 0#define OVERFLOW -1#define MAXSTRLEN 10typedef unsigned char SString[MAXSTRLEN + 1];//0号单元存储
2017-01-12 10:30:40
480
原创 字符串 堆实现
#ifndef _STRING_H_#define _STRING_H_#define OK 1#define ERROR 0#define TRUE 1#define FALSE 0#define OVERFLOW -1typedef int Status;typedef struct{ char *ch; int length;}HString;
2017-01-12 10:29:06
493
原创 用数组存两个栈
#ifndef _FUNC_H#define _FUNC_H#include#includeusing namespace std;#define MAX 10#define TRUE 1#define FASLE 0#define OK 1#define ERROR 0#define INFEASIBLE -1#define OVERFLOW_s -2
2017-01-12 10:26:30
575
原创 循环队列
队列的特点:先进先出核心算法#ifndef _QUEUE_H_#define _QUEUE_H_#define MAXSIZE 4#define TRUE 1#define FALSE 0#define OK 1#define ERROR 0#define OVERFLOW -2typedef int ElemType;typedef int
2017-01-12 10:23:46
304
原创 栈运用之括号匹配
栈的特点:后进先出核心算法#ifndef _STACK_H_#define _STACK_H_#define STACK_SIZE 100#define INCREMENT 10#define TRUE 1#define FALSE 0#define OK 1#define ERROR 0#define INFEASIBLE -1#define OV
2017-01-12 10:20:17
284
原创 栈的运用
1.进制转换(如十六进制)核心算法//进制转换void conversion(SqStack &S ,int n){ ElemType e; cout cout while(n) { Push(S,n%16); n/=16; } cout while(!StackEmpty(S)) { Pop(S,e); if(0
2016-12-03 21:03:13
403
原创 数据结构之栈
栈的特点:后进先出(入栈和出栈均在尾部进行操作)栈得顺序存储表示几个主要算法//构造空栈Status InitStack(SqStack &S){ S.base=(ElemType*)malloc(STACK_INIT_SIZE*sizeof(ElemType)); if(!S.base) { return OVERFLOW; }
2016-12-03 20:52:29
312
原创 线性表得链式表示和实现
结点=元素+指针数据域:存储数据元素信息的域。特点:非随机存取。空链表:只存在头结点。基本算法//int length;//构造一个空的链表Status InitList(LinkList &L){ //int length; L=(LinkList)malloc(sizeof(LNode)); if(!L) { return OVERFLOW
2016-12-03 20:48:19
328
转载 c++const用法
C++中的const关键字的用法非常灵活,而使用const将大大改善程序的健壮性,本人根据各方面查到的资料进行总结如下,期望对朋友们有所帮助。Const 是C++中常用的类型修饰符,常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。 一、Const作用 1可以定义const常量 const int Max = 100; 2便于进
2016-12-03 20:33:46
248
原创 数据结构学习笔记
线性表的结构特点:(1)存在惟一的一个被称做“第一个”的数据元素;(2)存在惟一的一个被称做“最后一个”的数据元素;(3)除第一个元素以外,集合中的每一个数据元素均只有一个前驱;(4)出最后一个元素之外,集合中的每一个元素均只有一个后继。线性表的顺序表示和实现(结构特点:随机存取)头文件(变量最好定义在主函数里)#ifndef _SQliST_H_//防止重复编译#define
2016-11-01 21:17:10
396
PictureSafe\test.cpp
2019-09-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人