自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 资源 (1)
  • 问答 (4)
  • 收藏
  • 关注

原创 c++小游戏 四十五中大冒险 1.0版本

c++小游戏__四十五中大冒险(1.0版本)

2022-02-19 22:59:54 2204

原创 神奇又简单的抽卡游戏c++

不想写注释#include <iostream>#include <stdlib.h>#include <unistd.h>#include <bits/stdc++.h>using namespace std;void cc(const string a){ size_t len = a.size(); for(int i = 0; i < a.size(); i++) { cout << a[i]; usl

2021-09-08 20:50:39 1635 4

转载 抖音、吃鸡、王者荣耀:你的自律,是如何被顶级产品经理一步一步毁掉的

01 你的沉迷跟这个时代有关这是个特别容易沉迷的时代。抖音、煲剧、王者荣耀、吃鸡游戏……你的时间和注意力悄悄被它们偷走,却从不说再见。或许你也纳闷,自己的自制力怎么这么差了?但我想说,这事可能不完全怪你。《欲罢不能:刷屏时代如何摆脱行为上瘾》分享到:你的沉迷跟这个时代有关。作者亚当·奥尔特,是普林斯顿大学的心理学博士。他在这本书里以大量科学研究为基础,揭示了一个细思极恐的真相:任何人都会成为瘾君子,商业公司为了让你在科技产品、网络游戏中无法自拔,布下了一个个裹在诱饵中的钩子。而与此同时,乔布斯

2021-08-08 16:56:34 103

原创 链表(超全)C++

输入链表:int creat(LinkList &L)//输入链表 { L = new LNode; L -> next = NULL; int n, i; cout << "请输入元素个数:" <<endl; cin >> n; for( i = 1; i <= n; i++) { LNode *p; p = new LNode; cout << " 请输入第" << i <<"的

2021-07-05 22:52:42 106 1

原创 原码 反码 补码

本文从原码讲起。通过简述原码,反码和补码存在的作用,加深对补码的认识。力争让你对补码的概念不再局限于:负数的补码等于反码加一。接触过计算机或电子信息相关课程的同学,应该都或多或少看过补码这哥仨。每次都是在课本的最前几页,来上这么一段:什么反码是原码除符号位,按位取反。补码等于反码加一。然后给整得莫名其妙,稀里糊涂地,接着就是翻页,反正后面的内容也跟三码没多大关系。我原来也是看了好几遍都没看懂。古人云:事不过三。学C语言的时候,看过一次。不懂?看《计算机基本组成原理》的时候看过,还是不懂!到了大...

2021-12-31 22:20:43 348

原创 FOR循环 c++

for循环的小小的解析

2021-12-31 18:03:47 1524

原创 复赛准备 - 模拟 - 公交换乘

著名旅游城市B市为了鼓励大家采用公共交通方式出行,推出了一种地铁换乘公交车的优惠方案:1. 在搭乘一次地铁后可以获得一张优惠票,有效期为45分钟,在有效期内可以消耗这张优惠票,免费搭乘一次票价不超过地铁票价的公交车。在有效期内指开始乘公交车的时间与开始乘地铁的时间之差小于等于45分钟,即: tbus- tsubway≤ 452.搭乘地铁获得的优惠票可以累积,即可以连续搭乘若干次地铁后再连续使用优惠票搭乘公交车。3.搭乘公交车时, 如果可以使用优惠票一定会使用优惠票;如果有多张优惠票满足条件,则优先..

2021-10-20 22:35:05 233

原创 复赛准备 - 图的遍历 - 广度优先搜索

广度优先搜索遍历类似于树的按层次遍历的过程。其过程为:假设从图中的某顶点v出发,在访问了v之后依次访问v的各个未曾被访问过的邻接点,然后分别从这些邻接点出发依次访问它们的邻接点,并使“先被访问的顶点的邻接点”先于“后被访问的顶点的邻接点”被访问,直至图中所有已被访问的顶点的邻接点都被访问到。若此时图中尚有顶点未被访问,则另选图中一个未曾被访问的顶点作为起始点。重复上述过程,直至图中所有顶点都被访问到为止。输入格式:输入的第一行包含一个正整数n,一个正整数m,分表表示图中共有n个顶点,m条边。.

2021-10-12 20:19:52 157 1

原创 复赛准备 - 图的遍历 - 深度优先搜索

#include "iostream"using namespace std;const int N = 1e2;int g[N][N];//邻接矩阵int flag[N];//标记数组int n;void dfs(int v){ flag[v] = 1; cout<<v<<" "; for (int i = 1; i <= n ; ++i) {//沿着该结点的边遍历图 if(g[v][i] && !.

2021-10-12 20:10:58 95 1

原创 复赛准备 - 二叉树的遍历

#include <bits/stdc++.h>using namespace std;const int N = 1e3;int cnn;int root;struct node{ char data; int left, right, father;} tree[N];map<char, int> mem;int createnode(char p){ if(p == '-') { return 0; } if(mem[p]) { re.

2021-10-12 20:03:39 300

原创 复赛准备 - 最短路径问题(dijkstra)

#include "iostream"#include "vector"#include "cmath"#include "queue"using namespace std;const int N = 1e3;const double INF = 1e10;struct dist{ int x; double l;};priority_queue<dist> qu;bool operator < (const dist d1,const dist d2).

2021-10-05 21:53:54 93 1

原创 根据一个朋友的建议对迷宫的更改(不用车了)

不想写注释原迷宫:极为简单滴迷宫游戏c++_素有凌云志,我为代码狂-CSDN博客#include <iostream>#include <conio.h>using namespace std;int main(){ cout << "wsad = 上下左右" << endl; char a[10][10] = { {'#','#','#','#','#','#','#','#','#','#'}, {'#',' ','

2021-09-09 22:25:50 67

原创 极为简单滴迷宫游戏c++

不想写注释代码:#include <iostream>using namespace std;int main(){ cout << "wsad = 上下左右" << endl; char a[10][10] = { {'#','#','#','#','#','#','#','#','#','#'}, {'#',' ',' ','#','#',' ','#','#',' ',' '}, {'#',' ','#',' ',' ',' ','

2021-09-04 17:09:17 556 8

原创 任意进制的整数转换成十进制数

输入任意进制的整数,要求转换成十进制数并输出。输入格式:输入两个数,a表示任意进制的整数,N表示进制。输出格式:输出a的十进制数。限制:空间限制:128MByte时间限制:1秒样例:输入:100110 2输出:38提示:注意,最多16进制数,如果某位是10,用字符A表示,11用B表示.... 例如,十六进制数AB,表示十进制数171 因为最多16进制,所以就可以按照 转进制原理 直接肝#include <iostre

2021-07-31 14:29:09 2362

转载 埃氏筛法C++

主要我想讲讲 “ 碍事(埃氏) ” 筛法(一)介绍埃氏筛法这是一个我感觉和辗转相除法一样NB的算法。原理也很简单。首先将2到n范围内的整数写下来。其中2是最小的素数。将表中所有的2的倍数划去,表中剩下的最小的数字就是3,他不能被更小的数整除,所以3是素数。再将表中所有的3的倍数划去…… 以此类推,如果表中剩余的最小的数是m,那么m就是素数。然后将表中所有m的倍数划去,像这样反复操作,就能依次枚举n以内...

2021-07-17 14:55:02 1497 2

原创 2的幂次方C++

(一)干货 (1)审题任何一个正整数都可以用2的幂次方表示.。 例如:137=2^7+2^3+2^0同时约定次方用括号来表示,即a^b可表示为a(b)。由此可知,137可表示为:2(7)+2(3)+2(0)进一步:7=2^2+2+2^0 (2^1用2表示) 3=2+2^0所以最后137可表为:2(2(2)+2+2(0))+2(2+2(0))+2(0) 又如:1315=2^1...

2021-07-11 21:29:51 2665

转载 快速排序(漫画)

————— 第二天 —————————————————同冒泡排序一样,快速排序也属于交换排序,通过元素之间的比较和交换位置来达到排序的目的。不同的是,冒泡排序在每一轮只把一个元素冒泡到数列的一端,而快速排序在每一轮挑选一个基准元素,并让其他比它大的元素移动到数列一边,比它小的元素移动到数列的另一边,从而把数列拆解成了两个部分。这种思路就叫做分治法。每次把数列分成两部分,究竟有什么好处呢?假如给定8个元素的数列,一般情况下冒泡排序需要比较8轮...

2021-07-07 22:11:17 171

原创 a ^ 3 = b ^ 3 + c ^ 3 + d ^ 3

#include <iostream>#include <map>using namespace std;const int N = 1e3 + 100;int pow3[N];map <int,int> vis;int main(){ int n; cin >> n; int ans = 0; for(int i = 1; i <= n; i++) { pow3[i] = i * i * i; } for(int a .

2021-07-05 18:24:42 371

原创 后缀表达式

所谓后缀表达式是指这样的一个表达式:式中不再引用括号,运算符号放在两个运算对象之后,所有计算按运算符号出现的顺序,严格地由左而右新进行(不用考虑运算符的优先级)。如:3*(5–2)+7对应的后缀表达式为:3.5.2.-*7.+@。’@’为表达式的结束符号。‘.’为操作数的结束符号。输入格式:输入:后缀表达式 字符串长度,1000内。 输出格式:输出:表达式的值限制:空间限制:128MByte时间限制:1秒样例:输入:3.5.2.-*7.+@#

2021-07-05 18:08:09 254

原创 表达式转换

大学霸英子又来了,这次她想计算一个很长的表达式的值:3+5/7-67-(324-72)....为了偷懒,她想利用siri,于是有了下面的一段对话:“siri,请告诉我3+5/7-67-(324-72)....的结果”?“这对我太难了,请先转成后缀表达式”!......于是,英子来请教你,怎么把中缀表达式转化成后缀表达式输入格式:只有一行数据,中缀表达式的字符串,含有正整数,操作符号:+,-,*,/,(,)。输出格式:后缀表达式,每个操作数和操作符后面请输入一个“,”作为分割.

2021-07-05 18:04:11 210

原创 表达式树(代码)

中缀表达式也可以看成一颗二叉树,这棵二叉树的各个结点要么表示四则运算+、-、*、/,要么表示一个非负整数。给出一个表达式树的结点信息,请输出中缀表达式以及该表达式的计算结果。输入格式:只包含一组数据: 第一行一个正整数N(N<=30),代表二叉树的结点个数(结点编号为1到N)。第二行按结点编号从小到大的顺序给出N个结点的值(用空格隔开),其要么是四则运算符+、-、*、/的其中一个,要么是一个非负整数。接下来按结点编号从小到大的顺序给出N行,每行为两个编号,分别代表该结点的左孩

2021-07-05 17:59:47 176

原创 STL - map

现实中的数据很多是关联的,例如书本名称和价格,每条数据都含有两部分:信息学竞赛一本通 :¥80高等数学 :¥27.5生物信息分析 :¥35.5我们可以使用map存储这类一对一的数据:第一个可以称为关键字(key),每个关键字只能在map中出现一次;第二个可能称为该关键字的值(value);另外需要注意的是,使用 map 容器存储的各个键-值对,键的值既不能重复也不能被修改。换句话说,map 容器中存储的各个键值对不仅键的值独一无二,键的类型也会用 const 修饰,这意味着只要键值对

2021-07-05 17:48:13 81

转载 0/1背包

问题描述:0-1背包问题:给定n种物品和一背包。物品 i 的重量似乎 wi,其价值为 vi,背包的容量为 c。问应该如何选择装入背包中的物品,使得装入背包中物品的总价值最大?另一种风格的描述:假设你是一个小偷,背着一个可装下4磅东西的背包,你可以偷窃的物品如下:为了让偷窃的商品价值最高,你该选择哪些商品?简单算法最简单的算法是:尝试各种可能的商品组合,并找出价值最高的组合。这样显然是可行的,但是速度非常慢。在只有3件商品的情况下,你需要计算8个不同的集合;当有4件商品

2021-07-05 17:34:55 499

原创 求后序排列

题意:给定一棵二叉树的先序遍历结点序列和中序遍历结点序列,求其后序遍历结点序列。分析:由于遍历都是递归定义的,所以不难得到以下结论:树的任意子树的遍历结点序列一定是该树的遍历结点序列的一个连续子序列。有了这个结论后,我们的任务就是确定子树遍历结点序列的起点和终点,而这个可以根据preorder和inorder得到。例如,preorder的第一个结点是根,设为root,root这个结点会把inorder分为2部分(可能某部分为空),左边的就是左子树的中序遍历结点序列,右边的就是右子树的中序遍历结点序.

2021-07-05 14:48:00 182

原创 求先序排列

题目给出一棵二叉树的中序与后序排列。求出它的先序排列。(约定树结点用不同的大写字母表示,长度<=8)。输入格式:每个测试文件只包含一组测试数据,每组输入包含两行,第一行输入一个字符串表示二叉树的中序排列,第二行输入一个字符串表示二叉树的后序排列。输出格式:对于每组输入数据,输出二叉树的先序排列。限制:空间限制:125MByte时间限制:1秒样例:输入:BADCBDCA输出:ABCD看到题目,我们首先要了解怎么用

2021-07-05 14:33:10 316

原创 表达式求值

给定一个只包含加法和乘法的算术表达式,请你编程计算表达式的值。输入格式:每组输入数据仅有一行,为需要你计算的表达式,表达式中只包含数字、加法运算符“+”和乘法运算符“*”,且没有括号,所有参与运算的数字均为0到231-1之间的整数。输入数据保证这一行只有0~9、+、*这12种字符。数据规模:对于30%的数据,0≤表达式中加法运算符和乘法运算符的总数≤100;对于80%的数据,0≤表达式中加法运算符和乘法运算符的总数≤1000;对于100%的数据,0≤表达式中加法运算符

2021-07-05 14:28:49 730

转载 STL - vector

#include<iostream>#include<algorithm>using namespace std;const int N = 1e5;int a[N];int n;int cmp(int a, int b){ return a > b;}int main(){ cin >> n; for(int i = 1; i<= n; i++) { cin >> a[i]; } sort(a + 1, a .

2021-07-04 19:24:07 2778

转载 指针变量的定义与使用

数据在内存中的地址也称为指针,如果一个变量存储了一份数据的指针,我们就称它为指针变量。 在C语言中,允许用一个变量来存放指针,这种变量称为指针变量。指针变量的值就是某份数据的地址,这样的一份数据可以是数组、字符串、函数,也可以是另外的一个普通变量或指针变量。 现在假设有一个char 类型的变量 c,它存储了字符 'K'(ASCII码为十进制数 75),并占用了地址为 0X11A 的内存(地址通常用十六进制表示)。另外有一个指针变量 p,它的值为 0X11A,正好等于变量...

2021-07-03 11:08:02 847

原创 机器调度问题 - 区间覆盖

[问题描述]有多台机器处理n个作业,设作业i的开始时间为si,结束时间为ti,则对n个作业进行机器分配,设计算法进行合理调度,使得处理n个作业所需要的机器数最少。[基本要求](1)一台机器同一时刻只能处理一个作业;(2)一个作业不能同时由两台机器上处理;[实现提示]...

2021-07-03 11:02:05 84

原创 完全背包问题

问题描述有n种物品,每种物品的单件重量为w[i],价值为c[i]。现有一个容量为V的背包,问如何选取物品放入背包,使得背包内物品的总价值最大。其中每种物品都有无穷件。先放出综合代码#include <bits/stdc++.h>using namespace std;const int N = 1e3;int dp[N][N];//二维 int n, m;int w[N],v[N];int cp[N];//一维 int main(){ cin >>.

2021-07-02 11:53:36 230 2

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

TA关注的人

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