自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(80)
  • 收藏
  • 关注

原创 实验四-Shelllab实验(csapp、计算机系统外壳实验)

一、准备工作1、首先明确实验目的:·总的来说就是让我们补充位于tsh.c中的七个函数,从而实现一个支持任务功能的shell。因此在这儿将这七个函数分为两部分:(1)实现完成内建命令(jobs、fg、bg、kill)的四个函数:接着再来了解一下tsh支持的四个内置命令:·Quit:命令终止tsh进程·jobs:命令列出所有后台进程·bg:命令会向作业发送SIGCNOT信号来重启job,并作为后台作业运行,参数可以是PID或JID·fg:同上,唯一区别是jo...

2022-05-25 20:19:35 7507 7

原创 实验一-Bomblab(炸弹实验)

炸弹实验详解

2022-05-03 20:18:47 9862 2

原创 实验三-Bufflab(缓冲区溢出攻击、buffbomb/buffbomb)实验总结

实验准备工作和踩坑总结(实验过程中有一些坑总结在前边): 准备工作:1.首先,我将userid设置为:sxl,如图所示:正在上传…重新上传取消因此可以得到专属于我的cookie:0x45f61b8d。2.然后,因为在后续试验中我们要用到bufbomb的汇编代码,因此在终端依次输入命令:(1)ssh username@10.92.13.8连接到服务器(2)objdump -d bufbomb > 1.txt (3)scp username@10.92.8:1.tx...

2022-05-03 19:40:10 8010 5

原创 并查集介绍 & 代码实现 & 优化思路详解

并:合并;查:查询;集:集合其实就是只用来进行 并 和 查 操作的集合。并查集常用来解决连通性问题。通俗来讲:就是当我们需要判断两个元素是否在同一个集合里的时候,我们就要想到用并查集。并将两个元素添加到一个集合中。查判断两个元素在不在同

2023-10-21 12:47:41 1076

原创 云服务器使用Docker+nginx部署Vue项目 (跨域处理、反向代理)

我们要运行Vue项目,如果不做挂载处理,若是项目稍有改动,就需要重新run一个新容器,很麻烦。而有了挂载,我们只需要将修改了的内容放到对应的资源目录下,再restart一下,就好啦!因为容器里边的东西不好查看与更改,那么就将其挂载到我们能看得到、改得到的地方,并且修改主机的文件,就相当于修改容器内对应的文件。如何在linux操作系统下使用Docker容器,再使用nginx这个代理服务器来运行我们的Vue项目,其中。这两个是本篇讲解最最最最重要的问题!的,目录不同的改成你自己的即可。

2023-05-14 22:57:02 2784 6

原创 linux安装Docker 以及 DockerDocker常用命令大全

linux环境下安装Docker;Docker启动、停止、重启;Docker镜像的创建、拉取、查看、删除....;Docker容器的创建、运行、查看、停止、删除....;

2023-05-10 00:46:22 1946

原创 idea集成Docker + Docker部署SpringBoot项目到云服务器 保姆级教程

本文分别讲解了:* **1、idea如何集成并使用docker*** **2、springboot项目如何引入Docker管理*** **3、如何将一个springboot项目使用Docker打包为一个镜像**不仅讲解了方法,还列出了在整个过程中会遇到的一些问题和注意事项和注意的原因!!看下去,相信你会有所收获!!

2023-05-10 00:33:56 6302 5

原创 HNU-编译原理课程学习笔记

HNU软件工程导论学习笔记+课后习题总结

2023-02-18 12:01:08 1103 1

原创 linux使用pm2后台运行hexo教程

比如说在这个终端,想要不关闭hexo而进行后续的操作,就要重开一个终端(如果是使用Xshell工具就把这个终端锁死在这个界面了,还得重新连接一次服务器新开界面)。简单来说就是一个Node后台进程管理工具,简化node应用的进程管理。注意启动的时候要在run.js所在的目录下。为了解决这个问题,引入pm2。在启动hexo时,就会。

2023-02-16 23:51:10 709

原创 SQL语法总结

总结内容1. 基本概念· 数据库的概念1)结构化查询语言(Structured Query Language)简称SQL;2)数据库管理系统(Database Management System)简称DBMS;3)数据库管理员(Database Administration)简称DBA,功能是确保DBMS的正常高效运行;· SQL常用的3个部分1)数据查询语言(DQL):其语句也称“数据库检索语句”,用以从表中获得数据,保留字SELECT经常使用,DQL也是所有SQL中用的最多...

2022-05-10 00:01:51 1433

原创 各种排序算法汇总

(1)冒泡排序#include<iostream>using namespace std;int main() { //利用冒泡排序实现升序排列,排序的次数为元素数-1//每轮对比次数:元素个数-排序轮数-1; int A[6]= {4,3,1,5,3},i; for(i=0; i<6; i++) { cout<<A[i]<<" "; } cout<<endl;//开始冒泡排序//总共排序轮数为6-1 for(int i=

2022-03-29 23:55:47 562

原创 8.ab串(前缀和)

【问题描述】 给定一个由字符'a'和字符'b'组成的字符串,可以删除若干字符,使得剩下来的字符串满足前后段为a,中间段为b(aaa....aaabbbb.....bbbbaaa.....aaa),区段可以没有字符(ba,ab,b,aa都是合法的),求最长剩下字符串的长度。【输入形式】 输入为一行一个长度不超过5000的非空字符串,字符串仅由字符'a'和字符'b'组成。【输出形式】 输出为一个整数,表示符合要求的最长剩下字符串长度【样例输入1】abba...

2021-09-19 10:57:50 443

原创 笔记(前缀和)(二维)

1.前缀和释义: 查询以(x1,y1)为左上角端点,(x2,y2)为右下角端点的子矩阵之和2.公式一:(这里是二维前缀和数组公式) s[i][j]=s[i-1][j]+s[i][j-1]-s[i-1][j-1]+a[i][j];3.公式二:(这里是 查询以(x1,y1)为左上角端点,(x2,y2)为右下角端点的子矩阵之和的公式)ans = s[x2][y2] - s[x1-1][y2] - s[x2][y1 - 1] + s[x1 - 1][y1 - 1]3....

2021-09-16 11:20:38 310

原创 笔记(前缀和)(一维数组)

1.前缀和释义: 前缀和就是从位置1到位置i这个区间内的所有的数字之和。2.公式: s[i]=s[i-1]+arr[i];3.具体见如下代码:#include<bits/stdc++.h>using namespace std;//前缀和一维//前缀和释义://前缀和就是从位置1到位置i这个区间内的所有的数字之和//公式:s[i]=s[i-1]+a[i];const int N=100010;int arr[N];int s[N];int ...

2021-09-16 10:25:15 399

转载 9. 相等的多项式

问题描述小明现在在学习多项式的展开:就是把一个形如(x+a1) (x+a2) ... (x+an)展开成如下形式:xn+ b1xn-1+ b2xn-2+ ... + bn-1x + bn比如 (x+1)(x+2)=x2+ 3x + 2 (x+1)3= x3+3x2+3x + 1小明做了很多练习,但是不知道对错,现在请求你的帮助,判断小明的展开式是否正确。输入格式有多组测试数据。每组测试数据有三行,第一行是一个正整数N,表示多项式最高指数。N...

2021-09-16 10:02:52 807

转载 笔记 (map)

1,map简介map是STL的一个关联容器,它提供一对一的hash。第一个可以称为关键字(key),每个关键字只能在map中出现一次; 第二个可能称为该关键字的值(value); 比如说:简单数组就是一个map,其中下标为key,所对应的结果为value;2,map的功能自动建立key- value的对应。key 和 value可以是任意你需要的类型,包括自定义类型。3,使用map使用map得包含map类所在的头文件#include <map>//注意,STL...

2021-09-15 16:25:58 110

原创 6.数塔(动态规划 )

【问题描述】给定一个数塔,如下图所示。在此数塔中,从顶部出发,在每一节点可以选择走左下或右下,一直走到底层。请找出一条路径,使路径上的数值和最大。 9 12 15 10 6 8 2

2021-09-15 10:13:54 581

原创 21.回文串(暴力解法)

问题描述“回文串”是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就是回文串。给你一个字符串,问最少在字符串尾添加多少字符,可以使得字符串变为回文串。输入格式有多组测试数据。每组测试数据第一行是一个正整数N,表示字符串长度,接下来一行是长度为N的字符串,字符串中只有小写字母。N=0表示输入结束,并且不需要处理。40%的数列元素个数N 1 ≤ N≤ 100;30%的数列元素个数N 1 ≤ N≤ 1000;20%的数列元素个数N 1 ≤ N≤ 10000;

2021-09-15 10:09:57 267

原创 8.最小钱币数(动态规划)

8.最少钱币数【问题描述】这是一个古老而又经典的问题。用给定的几种钱币凑成某个钱数,一般而言有多种方式。例如:给定了 6 种钱币面值为 2、5、10、20、50、100,用来凑 15 元,可以用 5 个 2 元、1个 5 元,或者 3 个 5 元,或者 1 个 5 元、1个 10 元,等等。显然,最少需要 2 个钱币才能凑成 15 元。 你的任务就是,给定若干个互不相同的钱币面值,编程计算,最少需要多少个钱币才能凑成某个给出的钱数。【输入形式】输入可以有多个测试用例。每个测试用例的第...

2021-09-15 09:37:45 1274 1

原创 11. 蛇行矩阵

【问题描述】蛇形矩阵是由 1 开始的自然数依次排列成的一个矩阵上三角形【输入形式】正整数 N表示层数,N 不大于 100【输出形式】输出一个 N 行的蛇形矩阵,矩阵三角中同一行的数字用一个空格分开,行尾不要多余的空格。【样例输入】5【样例输出】1 3 6 10 152 5 9 144 8 137 1211写在前边:总结规律,进行模拟输出详情见如下代码(AC):#include<bits/stdc++.h>using namespace std;.

2021-09-10 19:54:10 234

原创 笔记 stack(栈)

栈的定义栈(stack)是限定仅在表尾进行插入或者删除的线性表。对于栈来说,表尾端称为栈顶(top),表头端称为栈低(bottom)。不含元素的空表称为空栈。因为栈限定在表尾进行插入或者删除,所以栈又被称为后进先出的线性表基本函数://empty() 堆栈为空则返回真////pop() 移除栈顶元素////push() 在栈顶增加元素////size() 返回栈中元素数目////top() 返回栈顶元素 m////swap()...

2021-09-09 20:32:40 166

原创 21. Web导航

【问题描述】标准的Web浏览器具有在最近访问的页面中前后移动的特性。实现这些特性的一种方法是使用两个堆栈来跟踪可以通过前后移动到达的页面。在这个问题中,我们要求实现这一点。 需要支持以下命令: BACK:将当前页面压入前向堆栈的顶部;从后向堆栈的顶部弹出该页,使其成为新的当前页。如果后向堆栈为空,则该指令忽略。 FORWARD:将当前页面压入后向堆栈的顶部;从前向堆栈的顶部弹出该页,使其成为新的当前页。如果前向堆栈为空,则该指令忽略。 VI...

2021-09-09 17:37:34 144

原创 20. 挖掘机技术哪家强

【问题描述】为了用事实说明挖掘机技术到底哪家强,组织一场挖掘机技能大赛。现请你根据比赛结果统计出技术最强的那个学校。【输入形式】输入在第1行给出不超过105的正整数N,即参赛人数。随后N行,每行给出一位参赛者的信息和成绩,包括其所代表的学校的编号、及其比赛成绩(百分制),中间以空格分隔。【输出形式】在一行中给出总得分最高的学校的编号、及其总分,中间以空格分隔。题目保证答案唯一,没有并列。【样例输入】63 652 801 1002 703 403 0【样例输出】

2021-09-09 17:10:54 112

原创 19. 到底买不买

小红想买些珠子做一串自己喜欢的珠串。卖珠子的摊主有很多串五颜六色的珠串,但是不肯把任何一串拆散了卖。于是小红要你帮忙判断一下,某串珠子里是否包含了全部自己想要的珠子?如果是,那么告诉她有多少多余的珠子;如果不是,那么告诉她缺了多少珠子。为方便起见,我们用[0-9]、[a-z]、[A-Z]范围内的字符来表示颜色。例如在图1中,第3串是小红想做的珠串;那么第1串可以买,因为包含了全部她想要的珠子,还多了8颗不需要的珠子;第2串不能买,因为没有黑色珠子,并且少了一颗红色的珠子。【输入形式】每个输入

2021-09-09 17:10:02 81

原创 18. 写出来吧

【问题描述】读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。【输入形式】每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10的100次方。【输出形式】在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格。【样例输入】1234567890987654321123456789【样例输出】yisanwu【样例说明】友情提示汉语拼音0~9:lingyi er san si wu li...

2021-09-09 17:09:01 65

原创 17. 字符串数字置换

【问题描述】从键盘接收用户输入的字符串,对用户输入的每个字符串的处理是:将字符串内的每一个十进制数字字符置换成下列表格中右边所对应的一个字符串(所有其他字符不变),然后将转换的结果显示在屏幕上;并分别计算每个数字的置换次数。 十进制数字字符 置换成 0 (Zero) 1 (One) 2 (Two) 3 (.

2021-09-09 17:07:52 516

原创 2. 导弹防御系统(动态规划)

【问题描述】某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,并观测到导弹依次飞来的高度,请计算这套系统最多能拦截多少导弹。拦截来袭导弹时,必须按来袭导弹袭击的时间顺序,不允许先拦截后面的导弹,再拦截前面的导弹。【输入形式】每组输入有两行,第一行,输入雷达捕捉到的敌国导弹的数量k(k<=25),第二行,输入k个正整数,表示k枚导弹的高度.

2021-09-09 17:05:51 457

原创 3. 魔咒词典

【问题描述】哈利波特在魔法学校的必修课之一就是学习魔咒。据说魔法世界有100000种不同的魔咒,哈利很难全部记住,但是为了对抗强敌,他必须在危急时刻能够调用任何一个需要的魔咒,所以他需要你的帮助。给你一部魔咒词典。当哈利听到一个魔咒时,你的程序必须告诉他那个魔咒的功能;当哈利需要某个功能但不知道该用什么魔咒时,你的程序要替他找到相应的魔咒。如果他要的魔咒不在词典中,就输出“what?”【输入形式】首先列出词典中不超过100000条不同的魔咒词条,每条格式为:[魔咒] 对应功能其中“魔

2021-09-09 17:04:23 180

原创 12. 多项式加法

【问题描述】一个多项式可以表示为一组数对,数对中第一个数始终为整数,且唯一,表示多项式的次数,另一数表示为对应的系数且不为0。输入两组数对,每组以0 0作为结束,实现对两个多项式的加法并按降幂输出结果数对【输入形式】每行输入一个数对,以空格为分隔符,以0 0结束【输出形式】每行输出一个数对,以空格为分隔符【样例输入】51238121550100031230115500【样例输出】3011510512320120...

2021-09-09 16:48:48 333

原创 7. 愚人节的礼物

【问题描述】四月一日快到了,Vayko 想了个愚人的好办法——送礼物。嘿嘿,不要想的太好,这礼物可没那么简单,Vayko 为了愚人,准备了一堆盒子,其中只有一个盒子里面装了礼物。盒子里面可以再放零个或者多个盒子。假设放礼物的盒子里不再放其他盒子。用()表示一个盒子,B表示礼物,Vayko 想让你帮她算出愚人指数,即最少需要拆多少个盒子才能拿到礼物。【输入形式】本题目包含多组测试,请处理到文件结束。每组测试包含一个长度不大于 1000, 只包含'(',')'和'B'三种字符的字符串,代表 Vayk

2021-09-09 16:42:49 66

原创 9. 占座位

【问题描述】sun所在学校的教室座位每天都是可以预占的。一个人可以去占多个座位,而且一定是要连续的座位,如果占不到他所要求的这么多座位,那么他就一个座位也不要了。为了降低难度,每次分配座位按座位号从小到大查找,采用最先适配法分配座位。【输入形式】输入有多组数据。每组数据输入座位排数n,0<n<=100(座位的排列数相等,座位是按每行从左到右依次排序的, 第1行的最右边一个座位与第二行的第一个座位视为连续座位),m( 0<m<=min(100,n*n) )个人。然后输入k(0

2021-09-08 17:19:03 256

原创 10.Maya历法

【问题描述】在学术休假期间,M.A. Ya教授在古老的Maya历法上有一个惊人的发现。从一个古老的令人棘手的信息中,教授发现Maya文明以365天为一年,称为Haab,包含19个月。前18个月每月有20天,月份名字为:pop、no、zip、zotz、tzec、xul、yoxkin、mol、chen、yax、zac、ceh、mac、kankin、muan、pax、koyab、cumhu。每月的天数使用数字来表示,从0~19,而不是用名字。Haab的最后一个月叫做uayet,有5天,表示为0、1、2、3、4

2021-09-08 17:15:03 343

原创 5.最大报销额(动态规划)

【问题描述】现有一笔经费可以报销一定额度的发票。允许报销的发票类型包括买图书(A类)、文具(B类)、差旅(C类),要求每张发票的总额不得超过1000元,每张发票上,单项物品的价值不得超过600元。现请你编写程序,在给出的一堆发票中找出可以报销的、不超过给定额度的最大报销额。【输入形式】测试输入包含若干测试用例。每个测试用例的第1行包含两个正数 Q 和 N,其中 Q 是给定的报销额度,N(N<=30)是发票张数。随后是 N 行输入,每行的格式为: m Type_1:price_1 Typ...

2021-09-07 16:43:55 1335 6

原创 5.最大报销额(看清题目条件!!)

【问题描述】现有一笔经费可以报销一定额度的发票。允许报销的发票类型包括买图书(A类)、文具(B类)、差旅(C类),要求每张发票的总额不得超过1000元,每张发票上,单项物品的价值不得超过600元。现请你编写程序,在给出的一堆发票中找出可以报销的、不超过给定额度的最大报销额。【输入形式】测试输入包含若干测试用例。每个测试用例的第1行包含两个正数 Q 和 N,其中 Q 是给定的报销额度,N(N<=30)是发票张数。随后是 N 行输入,每行的格式为: m Type_1:price_1 Typ...

2021-09-07 09:20:22 411 1

原创 11. 液晶数码管(利用map<int,string>进行模拟判断)

【问题描述】液晶数码管用七笔阿拉数字表示的十个数字,把横和竖的一个短划都称为一笔,即7有3笔,8有7笔等。对于十个数字一种排列,要做到两相邻数字都可以由另一个数字加上几笔或减去几笔组成,但不能又加又减。比如7→3是允许的,7→2不允许。任意输入一组数,判断是否符合上述规则,注意,1在右边。【输入形式】每行输入一个0~9的排列,数字之间用空格分隔,以-1作为输入结束【输出形式】输出YES或NO【样例输入】410739568235162790...

2021-09-06 19:17:01 273

原创 4. 打牌(map+string)

问题描述】牌只有1到9,手里拿着已经排好序的牌a,对方出牌b,用程序判断手中牌是否能够压过对方出牌。规则:出牌牌型有5种[1]一张 如4 则5…9可压过[2]两张 如44 则55,66,77,…,99可压过[3]三张 如444 规则如[2][4]四张 如4444 规则如[2][5]五张 牌型只有12345 23456 34567 45678 56789五个,后面的比前面的均大。【输入形式】输入有多行,第一行代表手中的牌,长度不超过200个数字。接下来的每一行代表每次对...

2021-09-06 16:32:55 3576

原创 笔记 string型也能相加()

#include<bits/stdc++.h>using namespace std;int main() { string str=""; str+="123456"; cout<<str; }输出为:123456;再例如:#include<bits/stdc++.h>using namespace std;int main() { string str="00000"; for(int i=0; i<10; i++) { .

2021-09-06 10:28:16 396

原创 3.相同生日(此题有个注意点:cmp函数的正确写法)

【问题描述】在一个有n个人的大班级中,存在两个人生日相同的概率非常大,现给出每个学生的学号,出生月日,试找出所有生日相同的学生。【输入形式】第一行为整数n,表示有n个学生,n<=200。此后每行包含一个字符串和两个整数,分别表示学生的学号(字符串长度为11位)和出生月(1<=m<=12)日(1<=d<=31),学号、月、日之间用一个空格分隔。【输出形式】对每组生日相同的学生,输出一行,其中前两个数字表示月和日,后面跟着所有在当天出生的学生的学号,数字、学号之

2021-09-05 18:13:23 330

原创 4.20. 恺撒Caesar密码

【问题描述】Julius Caesar 生活在充满危险和阴谋的年代。为了生存,他首次发明了密码,用于军队的消息传递。假设你是Caesar 军团中的一名军官,需要把Caesar 发送的消息破译出来、并提供给你的将军。消息加密的办法是:对消息原文中的每个字母,分别用该字母之后的第5个字母替换(例如:消息原文中的每个字母A都分别替换成字母F),其他字符不 变,并且消息原文的所有字母都是大写的。 密码字母:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 原

2021-09-05 10:22:34 583

原创 笔记 vector(向量)

1向量的初始化方法:// vector<int> a(10);//定义了10个整型元素的向量(尖括号中为元素类型名,它可以是任何合法的数据类型),但没有给出初值,其值是不确定的。// vector<int> a(10,1); //定义了10个整型元素的向量,且给出每个元素的初值为1// vector<int> a(b); //用b向量来创建a向量,整体复制性赋值// vector<int> a(b.b...

2021-07-20 13:08:34 181

空空如也

空空如也

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

TA关注的人

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