自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 体系结构期中试卷

1.1 cpu运行时间公式,分析各分量指标如何影响cpu运行时间。结合计算机体系结构发展,通过什么技术影响分量从而降低cpu时间1.2 三个量化原则。流水线采用哪个?

2023-04-16 20:12:50 210

原创 3.4 打牌

#include<iostream>using namespace std;int main(){ int a[10]={0}; string s; cin>>s; for(int i=0;i<(int)s.length();i++) a[s[i]-'0']++; while(cin>>s) { int flag=0; if(s.length()<5) { int x=s[0]-'0'; for(int i=x+1.

2021-09-09 16:17:15 291

原创 3.3 魔咒词典

#include<iostream>#include<map>using namespace std;int main(){ string s,magic,fun; map<string,string> book; map<string,string>::iterator it; while(1) { getline(cin,s); if(s=="@END@") break; int index=s.find("]"); m.

2021-09-09 15:43:39 249

原创 3.2 导弹防御系统

**DP法**#include<iostream>#include<algorithm>using namespace std;int main(){ int k; cin>>k; int missile[k],d[k]; for(int i=0;i<k;i++) d[i]=1; for(int i=0;i<k;i++) cin>>missile[i]; for(int i=0;i<k;i++) for(int .

2021-09-09 15:42:08 88

原创 3.1 部分A+B

#include<iostream>#include<cmath>using namespace std;int getP(long x,long X){ int p=0,c=0; while(x!=0) { int a=x%10; if(a==X) { p+=a*pow(10,c); c++; } x/=10; } return p;}int main(){ long x,X; cin>>x>>X.

2021-09-09 15:40:12 81

原创 2.8 engine字符串

版本一(错数据3、10)错误原因:题意理解不清,关键字在标题中未必要连续。该版本代码无法输出下面的内容#include<iostream>#include<vector>#include<algorithm> using namespace std;string trans(string s){ for(int i=0;i<s.length();i++) if(s[i]>='A'&&s[i]<='Z') s[

2021-07-14 18:27:51 90

原创 2.5 点球大战

#include<iostream>#include<cmath>using namespace std;int main(){ int N; while(cin>>N&&N) { cin.get(); string s,s1="",s2=""; int cnt1=0,cnt2=0; for(int i=1;i<=N;i++) { getline(cin,s); int flag=1; if(s

2021-07-13 23:05:53 160

原创 2.7 棋盘

#include<iostream>using namespace std;int main(){ int n;cin>>n; int q[n][n],cmax=1,max=0,num=0; for(int i=0;i<n;i++) { getchar();//吸收回车 for(int j=0;j<n;j++) q[i][j]=getchar()-'0'; } int LineEnd=n-1,RowEnd=n-1; for(int i=

2021-07-13 23:00:21 89

原创 2.6 飞行棋

【问题描述】 棋盘由N个格子组成,分别标记为第0格到第N-1格。格子分为两种,一种是普通格子,即表示在该格可以停留。否则是特殊的格子,一旦走到上面,就要根据上面标记的数飞到相应的格子上。如果飞到一个特殊的格子上,则可以继续飞。 除了第0格外,其他格子都只能容纳一个玩家。即一旦A玩家已经在某个格子上,B玩家又走到这里,A玩家则会被踢回第0格,而B玩家留在这个格子上面。 第N-1个格子是终点,一旦一个玩家走到这个格子上,该玩家获胜,游戏结束。 刚刚开始时,两个玩家都站在第0格上,依

2021-07-13 20:17:28 100

原创 set、map相关学习整理 && 使用set、map解题的 非原创的 2.3、2.4简洁代码

set资料参考set容器理解与基本用法set用法详解set特点如下:1、都是排好序的2、没有重复的元素3.在set中查找是使用二分查找,每次排序、插入、删除都是O(logn)(以2为底)的复杂度。但是与map容器不同,set容器不支持下标操作访问元素4.set的带有一个键参数的insert版本函数返回pair类型对象,该对象包含一个迭代器和一个bool值,迭代器指向拥有该键的元素,而bool值表明是否添加了元素...

2021-07-12 19:51:12 119

原创 2.2 487-3279

每个人都喜欢有令人难忘的电话号码。要想让电话号码变得令人难忘的一种方法是拼出一个令人难忘的单词或短语。例如,你可以拨打滑铁卢大学的电话,拨打令人难忘的电话号码TUT-GLOP。 有时只有一部分号码被用来拼写一个单词,例如,你可以拨打310-gino从Gino's订购披萨。 要使电话号码令人难忘的另一种方法是以一种令人难忘的方式对数字进行分组。你可以从比萨饼小屋中订购比萨饼,方法是拨打他们的“3个10”,即号码3-10-10-10。 电话号码的标准格式是七位的十进制数字,第三和第四..

2021-07-12 17:27:51 81

原创 2.1 字符串反转2

【问题描述】 给定一个句子(只包含字母和空格), 将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格。 比如: “hello xiao mi”-> “mi xiao hello”#include<iostream>#include<sstream>#include<stack>using namespace std;int main(){ string s; while(getline(cin,s)) {

2021-07-12 17:25:36 114

原创 1.8 买房与选房

数据3和9输出错误其余数据、样例数据都对了这题给爷整吐了,太恶心了。思路倒是不难,但是写起来太罗嗦了,自己的代码自己都看不下去。蹲一个有缘人帮忙找bug【问题描述】 在 X 国许多一线城市住房非常紧张,政府部门制定了相关的政策,重点满足住房刚性需求(住房面积为0,社保缴纳必须超过2年),然后才能照顾改善性需求(住房面积大于0)。 具体的原则为:对于刚性需求,缴纳社保月数多者优先对于改善性需求,现有自有住房面积小者优先 由于房源有限,为公平起见,开发商在不违背上述原则下特

2021-07-08 20:05:33 427

原创 1.21 计算机校验码

【问题描述】传送一个B(B≤16)进制的数值N时,最后加上一个一位(B进制的)校验码,使得N加上校验位后能被B-1整除。比如十进制的数值12310,其校验码就是3,因为十进制数值123310能被9整除。16进制的数7816,其校验码为0,因为16进制的78016是15的倍数。超过十进制后,用字母a表示10,字母b表示11,字母c表示12,字母d表示13,字母e表示14,字母f表示15。告诉你进制B,以及一个B进制的正整数N,要求你计算正整数N在B进制下的校验码。【输入形式】输入第一行正整数t (10

2021-07-08 13:16:00 366

原创 1.20 电能消耗

【问题描述】 汤姆对他最喜欢的笔记本电脑的耗电量很感兴趣。他的笔记本电脑有三种模式。在正常模式下,笔记本电脑每分钟消耗P1瓦。在汤姆最后一次移动鼠标或触摸键盘后的T1分钟,屏幕保护程序启动,每分钟的功耗变化为P2瓦。最后,从屏幕保护程序启动到T2分钟后,笔记本电脑切换到“睡眠”模式,每分钟消耗P3瓦。 当笔记本电脑处于第二或第三模式时,如果汤姆移动鼠标或触摸键盘,则切换到第一种(正常)模式。 汤姆使用笔记本电脑工作的时间可以分为n个时间间期[l1, r1]、[l2, r2]、...、[ln, rn]。在

2021-07-08 13:14:54 167

原创 1.19 循环数

循环数测试数据:(来源百度百科:https://baike.baidu.com/item/%E5%BE%AA%E7%8E%AF%E6%95%B0/2519004?fr=aladdin)如果前导0不被允许,142857将是唯一一个十进制循环数。如果允许前导0,前几个循环数是:142857 (6位)0588235294117647 (16位)052631578947368421 (18位)0434782608695652173913 (22位)0344827586206896551724137931

2021-07-07 22:00:56 178

原创 1.18 三角形的面积

【问题描述】已知三角形的三个顶点的坐标,求该三角形的面积。【输入形式】有多组测试数据。每组测试数据占一行,6个用空格分隔开的浮点数:x1,y1,x2,y2,x3,y3。表示三角形三个顶点的坐标。一行6个0(形如0 0 0 0 0 0),表示输入结束,并且不需要处理。【输出形式】对于每组测试数据,输出对应三角形面积,保留小数点后6位。#include<iostream>#include<cmath>#include<iomanip>using name

2021-07-07 19:24:11 104

原创 1.17 字符串排序

问题描述】 定义一个字符串的无序度为所有位置后面的字母比该位置的字母小的总数之和。比如"DAABEC''这个字符串的无序度是5,因为D后面有4个位置比它小(AABC),E后面有1个比它小(C),其它位置后面没有比自己小的。" AACEDGG "的无序度为1(E后面有一个D比它小)。" ZWQM "的无序度为6,每个位置后面所有的字母都比它小。 现在你的任务是给定一些字符串(只由大写字母组成),把他们按照无序度从小到大排序,如果无序度一样,那么就按照输入的相对顺序排序。【输入形式】 单组测试

2021-07-07 19:23:09 160 1

原创 1.16 n, 还是n

【问题描述】输出 包含n 或者是n的倍数的所有数【输入形式】正整数 m,n(0<m,n<1000000)【输出形式】从小到大排列的不大于 m 的特殊正整数(包含n,或者是n的倍数)。#include<iostream>#include<sstream>#include<cmath>using namespace std;int main(){ int n,m; string N; cin>>m>>N; st

2021-07-07 19:22:29 116

原创 1.15 字符串反转3

注意点用getline输入字符串前,记得吸收回车(getline相关参考:https://blog.csdn.net/qq_45700494/article/details/111560695?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-0&spm=1001.2101.3001.4242)测试数据五运行时间过长,翻了群聊天记录,添加ios::sync_with_stdio(false);解决【问题描述】

2021-07-07 11:56:31 381 2

原创 1.14 可删除的点

问题描述】平面上有n个不同的点,没有在Y轴的点,检查是否存在这样一个点,将其删除后其余所有的点均位于Y轴的同一边。【输入形式】输入第一行包含一个正整数n(2<=n<=105)。接下来的n行,包含所有点的坐标,第i行包含两个整数xi和yi(|xi|、|yi|<=109,xi<>0)。【输出形式】如果存在这样的点,则输入"Yes",否则输出"No"。#include<iostream>#include<algorithm>using nam

2021-07-07 11:14:02 104

原创 1.13开关与灯

【问题描述】 给定n个开关和m个灯,第i个开关只能打开部分灯。矩阵a包含n行m列,当aij=1时表示开关i可以打开灯j,否则aij=0。开始时所有的m个灯都是关着的。开关只能从状态"关"到"开"。这意味着,对于每个可以打开某个灯的开关,无论你按多少次,这个灯都是开的。确保当你按下所有开关时,所有的灯都能打开,考虑是否可以忽略其中某个开关也能打开所有的灯。你的任务是确定是否存在这样的开关可以忽略,而使用其余的n-1个开关来打开所有m个灯。【输入形式】 输入第1行包含两个整数n和m

2021-07-06 22:50:31 211 2

原创 1.12 IP地址

一个IP地址由32位二进制的数组成,比如:111111111111111111111111000000002为了便于记忆,我们将8个二进制位用一个十进制数表示,一个IP地址由四个十进制数表示,上述的IP地址表示为:255.255.255.0现在给你一个上述形式的IP地址,请回答IP地址的32个二进制位中,有多少位是1。如IP地址为255.255.255.0,其中24位是1。#include<iostream>#include<sstream> using namesp

2021-07-06 22:50:19 480 2

原创 1.11 平均方差

【问题描述】一个数列的平均方差是指数列中的每个元素与数列的平均值的差的平方和的平均值,比如下面数列:1 2 3 4 5 6 7其平均值为4,每个元素与平均值的差的平方为9 4 1 0 1 4 9其平方和为28,所以该数列的平均方差为4。对给定的数列,求出其平均方差【输出形式】对于每组测试数据,输出一个整数:平均方差。平均方差不是整数的,输出其向下取整的整数。比如平均方差是4.5,输出4。#include<iostream>using namespace std;int ma

2021-07-06 22:49:10 162

原创 1.10内存管理

提交上去第一个数据点错了,烦死看不进去【问题描述】 离第一个操作系统HNU-OS发布已经没有多少时间了,但它的一些组件还没有完成,内存管理器就是其中之一。根据开发人员的计划,在第一个版本中,内存管理器将非常简单和直观。它将支持三个操作: alloc n —— 分配n个字节内存,返回已分配块的正整数标识符x(x初始值为0,每次分配增长1)erase x —— 删除标识符x所在的块defragment —— 整理空余内存碎片,将所有块尽量靠近内存的开始位置,并保持各自的顺序 在此情况下,内

2021-07-06 20:05:36 274

原创 1.9 二叉树遍历,从前序、中序到后序

【问题描述】前序遍历:根结点 —> 左子树 —> 右子树中序遍历:左子树—> 根结点 —> 右子树后序遍历:左子树 —> 右子树 —> 根结点已知一个二叉树的前序遍历和中序遍历的结果,给出该二叉树的后序遍历的结果【输入形式】有多组测试数据,每组测试数据三行,每组测试数据第一行只有一个正整数n,表示二叉树节点的数目,n=0意味着输入结束并且不需要处理。每组测试数据第二行是二叉树的前序遍历的结果,是一个长度为n的字符串,每个节点由一个字符表示,字符是大小写英文字

2021-07-06 16:48:50 150 1

原创 1.7 F1方程式冠军

【问题描述】一级方程式F1锦标赛由一系列称为大奖赛的分站赛组成。每一场比赛的车手都根据他们的最后位置获得积分。只有前10名车手按以下顺序获得分数:25、18、15、12、10、8、6、4、2、1。在锦标赛结束时,得分最多的车手是冠军。如果有平分,则冠军是赢的最多的人(即排位第一)。如果还是平分,则选择得到排位第二最多的人,依此类推,直到没有更多的排位进行比较。后来又提出了另一个得分制度,其中冠军是赢的最多的。如果有平手,冠军是得分最多的。如果仍然存在平手,则按原来的得分制度进行,即比较第二、第三、第四、

2021-07-06 00:00:56 405

原创 1.6世界杯

题目:【问题描述】2018年俄罗斯世界杯结束了,法国获得冠军,全世界球迷度过了一个非常愉快的夏天。作为中国球迷,不能总是看别人踢球,这不福利来了,根据FIFA(国际足联)及全体成员协会的一致决定,2118年世界杯将在中国举办,作为东道主,中国队将无需参加预选赛而直接参加决赛阶段的比赛。比赛规则如下:总共n(n为偶数)个球队参加比赛按照分组赛积分排名,前n/2的球队进入淘汰赛积分排名的规则如下:球队获胜得3分,平局得1分,失利得0分,按照积分递减、净胜球递减以及进球数递减方式排名编写一个程序

2021-07-05 19:28:20 169

原创 1.5 括号

#include<iostream>#include<stack>using namespace std;bool match(char a,char b){ if(a=='('&&b==')') return true; else if(a=='<'&&b=='>') return true; else if(a=='['&&b==']') return true; else if(a=='{'&&

2021-07-05 15:32:23 147

原创 1.4欧冠

每个小组中四支球队。每个小组中的球队按照如下规则排序:球队会根据比赛结果获得积分。一场比赛的双方被称为主队和客队。如果其中一方进球数多于另一方,那么进球较多的一方获得3 分,另一方获得0 分。如果双方打成平手,则各得1分。球队的净胜球数是其进球数减去失球数(不考虑该球队在比赛中作为主队还是客队)。积分较高的球队排名更加靠前。如果两支球队积分相同,那么净胜球数较多的球队排名靠前。 小组的各队伍进行循环赛 给定一个小组内12 场比赛的结果 请求出小组的排名第一和第二的两支球队。#incl

2021-07-05 15:04:48 177 4

原创 1.3 拳王阿里

他只记得比赛的第一天是星期几(S),最后一场比赛的最后一天是星期几(E)。他还记得比赛的总天数(包括第一和最后一天)不少于L天,也不多于R天。给定S和E,能否唯一确定参加比赛总天数(包含该段时间内比赛间的间隔天数)?#include<iostream>using namespace std;int trans(string s){ if(s=="monday") return 1; else if(s=="tuesday") return 2; else if(s=="wednes

2021-07-05 15:03:19 226

原创 1.2 里程表

里程表上每一位都不显示数字3和数字8,也就是说直接从数字2跳到数字4,直接从数字7跳到数字9。根据里程表显示的数字,给出真实的行驶里程。#include<iostream>#include<cmath>using namespace std;int main(){ int T;cin>>T; for(int x=0;x<T;x++) { long long int num=0,m; cin>>m; for(int k=0;;

2021-07-05 15:02:25 100

原创 1.1众数

一组数据中也可能有多个众数,以最先出现的作为众数。#include<iostream>using namespace std;int a[10001];int main(){ int n,m; while(1) { for(int i=0;i<10001;i++) a[i]=0; cin>>n; if(n==0) break; for(int i=0;i<n;i++) { cin>>m; a[m]++;

2021-07-05 15:00:27 64

原创 实验七 12 小数化分数

题目【问题描述】 任何小数都能表示成分数的形式,对于給定的小数,编写程序其化为最简分数输出,小数包括简单小数和循环小数。【输入形式】 第一行是一个整数N,表示有多少组数据。 每组数据只有一个纯小数,也就是整数部分为0。小数的位数不超过9位,循环部分用()括起来。【输出形式】 对每一个对应的小数化成最简分数后输出,占一行【样例输入】30.(4)0.50.32(692307)【样例输出】4/91/217/52代码#include<iostream

2021-01-17 10:17:11 583

原创 实验七 5 字符串左删除

这里写自定义目录标题**实验七 字符串 字符串左删除**题目代码实验七 字符串 字符串左删除题目【问题描述】 给定两个字符串s和t,每一次处理将从两个字符串中任选一个,删除第一个字符(也就是最左边字符),显然删除后字符串的长度减1,当然不能再从一个空字符串中去删除。 例如: 对字符串"where"处理后,结果为"here";对字符串"a"处理后,结果为""。 我们需要在经过最少次数的处理后,使得两个字符串相等。当然,经过处理后,两个字符串都可能为空串,这也是相等的

2021-01-17 10:00:42 245

原创 实验七 9 炸弹

题目【问题描述】 这是一个军事阵地,为具有 n × m 个分块单元的方形区域,每个单元既可以是空(用“.”表示),或者可以被墙(用“*”表示)占用。 有一颗炸弹,如果将其放在单元 (x, y)上,引爆后将摧毁 x 行和 y 列上所有的墙。 请确定放置并引爆一颗炸弹是否可以摧毁所有的墙,其中炸弹可以放置在空的单元,也可以放置在被墙占用的单元。【输入形式】 输入的第一行一个整数 T,表示测试用例数。 对于每个测试用例,输入的第一行包含两个整数 n 和 m (1 ≤ n,

2021-01-14 17:22:25 1067

原创 实验七 11 E-mail地址

题目【问题描述】 e 妹儿公司的一个主要业务是提供电子邮件服务,每天都有数以万计的用户在使用该平台收发电子邮件e-mail。然而不幸的是,最近公司的邮件服务器遭受到了网络攻击,几乎所有的邮件内容都受到了破坏,每个邮件都只留下了一个长长的字符串。恢复所有邮件是不可能完成的任务,但似乎从这串留下的字符串中还可以解析出一些可能的e-mail地址,这样公司可以通过向这些解析出的e-mail地址发送邮件以减少用户的损失。 一个有效的e-mail地址的形式符合以下原则: 1、邮件开始部分必

2021-01-09 00:14:05 4416

原创 实验七 10 加密与解密

题目【问题描述】 一个长度为n(1=<n<=1000)的字符串s(原文,可能包括空格)可以通过以下算法进行加密 a). 按递减顺序迭代n的所有因子,也就是从n到1 b). 对于每个因子d,反转字符串s的前d个字符s[0,...,d-1],从而形成新的s 给定一个已加密的字符串t(密文),你的任务是找出原始字符串s(原文),输入保证字符串s是存在且唯一的。【输入形式】 输入为一行一个字符串t,表示密文【输出形式】 输出原文字符串s【样例输入

2021-01-09 00:12:13 467

原创 实验七 8 激光镜像

题目【问题描述】 有一个 n×m 的网格,其中包含一些实心单元和一些空心单元。网格左上角的坐标为(1, 1),而右下角的坐标为(n, m)。其中有 k 个实心单元,而其他的则是空心的。这时从坐标为( xs,ys )的单元中心向四个对角方向之一(也就是东北、西北、东南和西南)的方向发射一个激光束,如果激光束遇到实心单元或网格边缘则形成反射或折射,方式如下: 一段时间后,激光束将进入一个死循环,计算在进入死循环之前激光束穿越至少一次的空单元格总数,穿越是指穿过单元中心。【输入形式】 输

2021-01-09 00:08:04 1714

原创 实验七 7 杠杆

题目【问题描述】 可以将一个杠杆描述为一个字符串,将字符串的长度表示为|s|,那么杠杆看起来很像具有一个支点的水平棒,可以看成是在OX轴上的点0到|s-1|之间的一段。 杠杆描述的解码如下:如果字符串的第 i 个字符为“^”,意指在坐标 i 的位置水平棒下是支点如果字符串的第 i 个字符为“=”,意指在坐标 i 的位置水平棒上面没有任何内容如果字符串的第 i 个字符为c(1-9),意指在坐标 i 的位置上的水平棒上有一个质量为c的重量 给出杠杆的描述,输出它平衡与否。忽略杠杆

2021-01-09 00:00:58 952

空空如也

空空如也

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

TA关注的人

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