自定义博客皮肤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)
  • 收藏
  • 关注

原创 朴素贝叶斯分类汽车

import pandas as pdimport numpy as npdef naive_bayes(train_data, train_label): classification = train_data.columns possibility = {} num = [] label = train_label.unique() for i in label: each_num = train_data[train_label == i

2022-04-13 16:44:54 561 1

原创 计算机系统基础课程实验课bomb--phase_6

首先压栈减栈指针,把栈顶地址给到%r13和%rsi第二参数然后依旧是输入六个数把栈顶地址给到%r14,把0给到%r12,再把%r13(栈顶地址)给到%rbp和%eax%eax减1,和5比较,小于等于5就跳转否则的话,还是跳转之后,给%r12加1,%r12就为1和6比较,比6小,不跳转把%r12的1给到%ebx,然后再给到%rax,现在%rax为1把输入6个数的第2个给到%rax然后和第一个元素比较,不相等,跳转否则还还还是接着给%ebx加1,为2和5比较,小于5,往回跳转

2021-11-24 23:38:38 376

原创 计算机系统基础课程实验课bomb--phase_5

首先还是栈指针自减和%rbx入栈而后将第一个参数的值放入%rbx再有在%eax中设置了一个哨兵防止越界而后将%rax中的值放入0x18(%rsp)接着%eax ^= %eax然后调用函数<string_length>,

2021-11-22 17:19:32 1000 1

原创 计算机系统基础课程实验课bomb--phase_4

首先还是栈指针减24,应该也是为了存储多个值然后和phase_3一样,把输入的值放在了%rcx和%rdx输入格式也和phase_3一样,如图然后将返回值与2作比较,如果不等于2就爆炸,所以只能输入两个数字然后将第一个输入值d1与14作比较,如果d1<=14就跳转,否则就爆炸跳转之后把14放入%edx,0放入%esi,d1放入%edi,并调用函数func4现在跳到func4继续看反汇编代码首先栈指针减8,把14放入%eax,并自减0,然后%ecx被放入14,%ecx继续逻辑右移31位,接

2021-11-21 21:17:58 749

原创 计算机系统基础课程实验课bomb--phase_3

首先栈指针减去24,应该是为了存储数组所需要,%rcx存储栈指针加12的地址,%rdx存储栈指针加8的地址分别作为第四第三参数,并且把0放入了返回值%eax中然后可以看到输入函数的第二个参数地址为0x4025cf通过x/s查看内存的值为即输入的值为两个整数然后根据sscanf函数的返回值与1比较小于1就爆炸,大于1继续(即有没有按照格式输入)紧接着跳转到0x400f6a,比较7和(%rsp+8)中值的大小,即输入的第一个值,不小于7就跳转爆炸接着继续把第一个输入值放入返回值里面然后就是

2021-11-21 17:36:39 571

原创 计算机系统基础课程实验课bomb--phase_1

首先呢,栈顶减8个字节然后将$0x402400放入第二个参数以调用<strings_not_equal>,对于这个函数稍后再看(函数名可以看出就是比对字符串相不相等)通过查看其内存中的内容即判断这个输入语句是否和这个语句相同相同就返回0到寄存器%eax然后判断%eax是否为0,是的话就跳转,否则向下继续执行爆炸函数所以要输入的即为Border relations with Canada have never been better.最后对于<strings_not_equ

2021-11-21 16:54:16 387 1

原创 计算机系统基础课程实验课bomb--phase_2

对于phase_2还是首先看phase_2的反汇编代码首先将两个寄存器压入栈然后栈顶减去40个字节,把栈指针,应该是一个地址放入第二参数并调用read_six_numbers,使得该地址访问的内存赋值对于该函数的输入形式暂不做讨论,继续看反汇编代码然后将1和%rsp中地址指向内存中的值比较大小,可以看出数据类型应该为int,因为后缀为cmpl的l,如果该值等于1就跳转到400f30,否则结束,所以可以看出该值就为1从400f30继续看,分别将%rsp+4和%rsp+24的地址放入了%rbx和%rb

2021-11-21 01:22:19 388

原创 红黑树的插入(插入结点一定为红结点)

1.叔叔结点存在且为红结点2.叔叔结点不存在或为黑结点,并且插入结点的父亲结点使祖父节点的左子节点情况①:新结点插在左边情况②:新结点插在右边3.叔叔结点为空或者为黑色,并且插入结点的父节点是祖父结点的右子节点情况①:新插入结点为父节点的右子节点情况②:新插入结点为父节点的左子节点...

2021-09-14 21:45:46 203

原创 18724 二叉树的遍历运算

时间限制:1000MS 代码长度限制:10KB提交次数:0 通过次数:0题型: 编程题 语言: G++;GCCDescription二叉树的三种遍历都可以通过递归实现。如果我们知道一棵二叉树的先序和中序序列,可以用递归的方法求后序遍历序列。输入格式两行,第一行一个字符串,表示树的先序遍历,第二行一个字符串,表示树的中序遍历。树的结点一律用小写字母表示。输出格式一个字符串,树的后序序列。输入样例abcdebcade输出样例cbeda#include<iostream&

2021-06-16 20:10:34 522

原创 1008 数组元素循环右移问题 (20 分)

一个数组A中存有N(>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(≥0)个位置,即将A中的数据由(A​0​​ A​1​​ ⋯A​N−1​​ )变换为(A​N−M​​ ⋯A​N−1​​ A​0​​ A​1​​ ⋯A​N−M−1​​ )(最后M个数循环移至最前面的M个位置)。如果需要考虑程序移动数据的次数尽量少,要如何设计移动的方法?输入格式:每个输入包含一个测试用例,第1行输入N(1≤N≤100)和M(≥0);第2行输入N个整数,之间用空格分隔。

2021-06-02 20:09:45 157 2

原创 1001 A+B Format (20 分)

Calculate a+b and output the sum in standard format – that is, the digits must be separated into groups of three by commas (unless there are less than four digits).Input Specification:Each input file contains one test case. Each case contains a pair of i

2021-06-01 11:51:32 77

原创 1019 数字黑洞 (20 分)

给定任一个各位数字不完全相同的 4 位正整数,如果我们先把 4 个数字按非递增排序,再按非递减排序,然后用第 1 个数字减第 2 个数字,将得到一个新的数字。一直重复这样做,我们很快会停在有“数字黑洞”之称的 6174,这个神奇的数字也叫 Kaprekar 常数。例如,我们从6767开始,将得到7766 - 6677 = 10899810 - 0189 = 96219621 - 1269 = 83528532 - 2358 = 61747641 - 1467 = 6174… …现给定任意 4

2021-06-01 11:26:34 82

原创 1004 成绩排名 (20 分)

读入 n(>0)名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。输入格式:每个测试输入包含 1 个测试用例,格式为第 1 行:正整数 n第 2 行:第 1 个学生的姓名 学号 成绩第 3 行:第 2 个学生的姓名 学号 成绩… … …第 n+1 行:第 n 个学生的姓名 学号 成绩其中姓名和学号均为不超过 10 个字符的字符串,成绩为 0 到 100 之间的一个整数,这里保证在一组测试用例中没有两个学生的成绩是相同的。输出格式:对每个测试用例输出 2 行,第

2021-06-01 10:52:39 249

原创 1002 写出这个数 (20 分)

读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。输入格式:每个测试输入包含 1 个测试用例,即给出自然数 n 的值。这里保证 n 小于 10​100​​ 。输出格式:在一行内输出 n 的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格。输入样例:1234567890987654321123456789输出样例:yi san wu#include<iostream>#include<cstdio>#incl

2021-05-29 16:04:20 134 1

原创 1001 害死人不偿命的(3n+1)猜想 (15 分)

卡拉兹(Callatz)猜想:对任何一个正整数 n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把 (3n+1) 砍掉一半。这样一直反复砍下去,最后一定在某一步得到 n=1。卡拉兹在 1950 年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证 (3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学与科研的进展……我们今天的题目不是证明卡拉兹猜想,而是对给定的任一不超过 1000 的正整数 n,简单

2021-05-29 15:40:28 160

原创 19009 后缀表达式

时间限制:1000MS 代码长度限制:10KB提交次数:0 通过次数:0题型: 编程题 语言: G++;GCCDescription人最熟悉的是中缀表达式,但计算机比较难处理中缀表达式,所以往往将中缀表达式改为后缀表达式。后缀表达式,又称逆波兰式。现在从键盘读入一个后缀表达式,只含有0-9组成的运算数及加(+)、减(—)、乘(*)、除(/)四种运算符。每个运算数之间用一个空格隔开,题目所使用的运算数均小于10,并确保所给的表达式合法。以@作为结束标志。输入格式一个后缀表达式。输出格式

2021-05-29 15:23:45 237

原创 19011 小猿的依赖循环

时间限制:1000MS 代码长度限制:10KB提交次数:0 通过次数:0题型: 编程题 语言: G++;GCCDescription猿辅导2021校园招聘笔试(算法二)小猿在加载一个网页,这个网页共需要N个相关资源,这些资源之间有一些依赖关系。如果这些资源中存在循环依赖,我们认为这个网页不能加载成功,否则可以加载成功。存在循环依赖是指,这些资源中存在资源X,X依赖的资源Y直接或间接依赖于X。你能帮助小猿判断一下这个网页能否加载成功吗?输入格式第一行输入T(T ≤ 10),表示输入T

2021-05-28 16:33:59 208

原创 18923 二叉树的直径

Description给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过也可能不穿过根结点。1/ 2 3/ \4 5答案为3, 它的长度是路径 [4,2,1,3] 或者 [5,2,1,3]。输入格式共n行。第一行一个整数n,表示有n个结点,编号为1至n。第二行至第n行,每行有两个整数x和y,表示在二叉树中x为y的父节点。x第一次出现时y为左孩子输出格式输出二叉树的直径。输入样例51 21 32 42 5

2021-05-24 21:16:35 281 2

原创 8645 归并排序(非递归算法)

时间限制:1000MS 代码长度限制:10KB提交次数:2398 通过次数:1192题型: 编程题 语言: G++;GCCDescription用函数实现归并排序(非递归算法),并输出每趟排序的结果输入格式第一行:键盘输入待排序关键的个数n第二行:输入n个待排序关键字,用空格分隔数据输出格式每行输出每趟排序的结果,数据之间用一个空格分隔输入样例105 4 8 0 9 3 2 6 7 1输出样例4 5 0 8 3 9 2 6 1 70 4 5 8 2 3 6 9 1 70

2021-05-24 13:57:40 228

原创 18942 偏爱字母

时间限制:1000MS 代码长度限制:10KB提交次数:0 通过次数:0题型: 编程题 语言: 不限定Description美团2021校招笔试-编程题(通用编程试题,第8场)小美喜欢字母E,讨厌字母F。在小美生日时,小团送了小美一个仅包含字母E和F的字符串,小美想从中选出一个包含字母E数量与字母F数量之差最大的子串。*子串:从字符串前面连续删去若干个字符,从后面连续删去若干个字符剩下的字符串(也可以一个都不删),例如abcab是fabcab的子串,而不是abcad的子串。我们将空串看作

2021-04-27 12:56:48 358

原创 8621 二分查找

时间限制:1000MS 代码长度限制:10KB提交次数:4655 通过次数:1446题型: 编程题 语言: G++;GCCDescription 编写Search_Bin函数,实现在一个递增有序数组ST中采用折半查找法确定元素位置的算法.输入格式第一行:元素个数n第二行:依次输入n个元素的值(有序)第三行:输入要查找的关键字key的值输出格式输出分两种情形:1.如果key值存在,则输出其在表中的位置x(表位置从0开始),格式为The element position is x.2

2021-04-24 17:30:38 438

原创 18443 除法等式

时间限制:2000MS 代码长度限制:10KB提交次数:0 通过次数:0题型: 编程题 语言: G++;GCC;VCDescription输入正整数n,按从小到大的顺序输出所有形如abcde/fghij=n的表达式,其中aj各代表09中的一个数字除了0可以重复外,其它数字不能重复,2<=n<=90000。输入格式多case,每行一个数字,最后一个数字是0输出格式除了最后一行0不用处理,其它每个case,按被除数由小到大输出所有满足等式的情况注:如果没有满足条件的等式,

2021-04-20 22:20:14 206

原创 18769 不完整的排序

时间限制:1000MS 代码长度限制:10KB提交次数:0 通过次数:0题型: 编程题 语言: 不限定Description一个数组只包含正负整数,请使用一个O(n)级别的算法对其进行排序。只需将负数全部放前面,正数全部放后面即可,无需进行严格排序。题目包含T组数据。输入格式第一行一个整数T,表示数据的组数。(1<=T<=10)下面共2*T行,每两行为一组数据。第i组数组的第一行为整数n,(1<=n<=100000)表示数组的大小,第二行为n个整数。输出格

2021-04-15 22:33:49 1153

原创 8591 计算next值

时间限制:1000MS 代码长度限制:10KB提交次数:0 通过次数:0题型: 编程题 语言: 不限定Description来源于POJ3704。在某个字符串(长度不超过100)中有左括号、右括号和大小写字母;规定(与常见的算数式子一样)任何一个左括号都从内到外与在它右边且距离最近的右括号匹配。写一个程序,找到无法匹配的左括号和右括号,输出原来字符串,并在下一行标出不能匹配的括号。不能匹配的左括号用"$“标注,不能匹配的右括号用”?"标注.输入格式输入包括多组数据,每组数据一行,包

2021-04-12 23:06:45 218

原创 18933 括号匹配问题

来源于POJ3704。在某个字符串(长度不超过100)中有左括号、右括号和大小写字母;规定(与常见的算数式子一样)任何一个左括号都从内到外与在它右边且距离最近的右括号匹配。写一个程序,找到无法匹配的左括号和右括号,输出原来字符串,并在下一行标出不能匹配的括号。不能匹配的左括号用"$“标注,不能匹配的右括号用”?"标注.输入格式输入包括多组数据,每组数据一行,包含一个字符串,只包含左右括号和大小写字母,字符串长度不超过100。输出格式对每组输出数据,输出两行。第一行包含原始输入字符,第二行由

2021-04-12 21:59:04 265

原创 18005 It is not ugly number

时间限制:2000MS 代码长度限制:10KB提交次数:0 通过次数:0题型: 编程题 语言: G++;GCCDescriptionUgly numbers are numbers whose only prime factors are 2, 3 or 5. The sequence 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, … shows thefirst 10 ugly numbers. By convention, 1 is included. Then, he

2021-04-12 21:16:47 198

空空如也

空空如也

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

TA关注的人

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