自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 【MYSQL】连续出现的数字

连续出现的数字,使用自连接和窗口函数实现

2023-01-09 21:52:15 348

转载 【MYSQL】由排序问题引申到窗口函数

窗口函数和排序

2023-01-09 20:17:49 132

转载 【MYSQL】第N高薪水实现方式

第N高薪水的实现

2023-01-09 16:46:22 206

原创 较复杂算法设计-电力供应

题目描述某个地区的电力供应突然中断,某工厂暂时陷入了瘫痪。为了避免停工造成的损失,工厂决定调用备用发电机临时供电。已知工厂中共有????条不同规格的生产线,分别至少需要????????的功率1 ≤ ???? ≤ ????。同一条生产线同时只能通过一台发电机进行供电。首批调用的备用发电机有????台,每台最多能够提供????????的功率(1 ≤ ???? ≤ ????)。请你帮忙计算首批最多能够给多少条生产线进行供电。输入共(n + m + 2)行。 第一行为一个正整数 n,为生产线的数量。 接下来

2021-01-06 16:54:17 405 2

原创 较复杂算法设计-排队接水

题目描述有 n个人在一个水龙头前排队接水,假如每个人接水的时间为Ti,请找出这 n个人排队的一种顺序,使得n个人的平均等待时间最小。输入两行。 第一行,一个整数n,表示排队的人数。(n<=100) 第二行,用空格分隔的n个整数,分别表示每个人接水的时间Ti。输出两行。 第一行,为一种平均等待时间最短的排队顺序。 第二行,最短的平均等待时间(保留两位小数)。输入样例11056 12 1 99 1000 234 33 55 99 812输出样例11 12 33 55 56 99 99.

2021-01-06 16:45:06 1167

原创 期中练习-查询单词

题目描述给定一个由n个单词(可能重复)组成的单词表,进行m次查询,每次查询一个单词s,求该单词在单词表中的数量。如果查询的单词不在单词表里,则输出Not Found!输入包含n+m+1行: 第一行为两个整数n,m,表示单词表中单词数量和查询次数; 接下来n行,每行一个单词表内的单词w; 接下来m行,每行一个需要查询的单词s。输出一个字典,表示所有被查询单词在单词表内的数量。主要利用了字典和列表进行答题n,m = map(int,input().split())ans = 1ans1 =.

2021-01-06 15:25:15 280

原创 期中练习-队列的使用

题目描述给定一个只有正整数的队列,有一个计数器,计数器的值一开始为0。执行下面的操作: 如果队列长度为1,则输出计数器的值并结束程序; 如果队列长度大于1,则将队列的前两个数出队,计算它们的异或值,并在队尾放入该异或值,同时让计数器加上该值。 请模拟上面的流程,并输出最后的结果。输入输入数据共2行。 第一行为一个整数n,表示这个序列的长度。 第二行为一个正整数序列,各数之间用一个空格分隔。保证该序列的长度大于1。输出输出数据共一行,为一个正整数,表示计数器最后的值。这一题主要是利用了队列的知.

2021-01-06 15:25:08 170

原创 期中练习-计算三角形面积

题目描述给出n个三角形的三条边长,请你计算它们的面积并输出。建议使用海伦公式来计算。 海伦公式:设三角形三边长为a,b,c,令p=(a+b+c)/2,则三角形面积的平方s2=p(p-a)(p-b)(p-c)。输入输入数据共n+1行: 第一行为一个正整数n(1≤n≤100),表示三角形的个数; 接下来的n行,每行包含三个正整数,分别表示三角形的三边长,各个数之间以一个空格分隔。输出输出数据共n行,每行包含一个实数,保留2位小数,表示三角形面积。这道题主要是应用了列表进行存储数据以及计算,将n个.

2021-01-06 15:24:59 501

原创 期中练习-简单算术运算

输入输入数据包含一行,用一个空格隔开的待计算的两个非负整数a、b。a、b为不超过10^10的非负整数。输出输出数据包含一行,为一个浮点数,表示给定两个整数的几何均值减去算术均值的结果,保留小数点后两位。主要考察超级简单的算术运算乘法*开方**保留两位小数’%.2f’a,b= map(int,input().split())r1 = (a*b)**(1/2)r2 = (a+b)/2result = r1-r2print('%.2f'%result)...

2021-01-05 18:27:10 107

原创 基本算法的设计与实现-逛超市

有两个超市,优购和超市发。每次去优购的人有20%下次仍然去优购,其余的80%去超市发;每次去超市发的人有40%下次仍然去超市发,其余60%去优购。若已知第一次去两个超市的人数,求第n次去优购和超市发的人数。 中间计算时可不用取整,只有在最后计算第n次的人数时向下取整。输入两行,第一行为n,一个正整数,表示去两个超市的次数; 第二行包含2个正整数,依次为第一次去优购和去超市发的人数,用空格隔开; 1≤n≤1000。输出一行,第n次去优购和去超市发的人数,向下取整,中间用一个空格隔开。在这里主要应.

2021-01-05 18:18:40 237 2

原创 基本算法的设计与实现-史莱姆通话

题目描述有n只史莱姆在数轴上站成一列,距离小于等于K的两只史莱姆之间可以相互通话。请问有多少对史莱姆之间能通话?输入两行,第一行,两个整数n和K,其中n<=500; 第二行,一个长度为n的递增整数序列,每个整数表示某只史莱姆的坐标,各整数之间用一个空格分隔。输出一行,一个整数,表示能通话的史莱姆对数。主要知识点主要应用了枚举法,i是从i到len(a),到len(a)-1也是可以的,因为最后一个元素后面没有可比的j的范围是从i+1到len(a),从i+1开始的原因是不要让元素自身进行.

2021-01-05 17:47:50 300

原创 自定义数据结构-括号匹配

题目描述满足如下条件的字符串称为括号匹配的字符串:空字符串是括号匹配的字符串。若A是括号匹配的串,则(A)、[A]是括号匹配的字符串。若A、B是括号匹配的字符串,则AB也是括号匹配的字符串。 例如:()、[]、([])、()()都是括号匹配的字符串,而][、[(])则不是。 现在对于输入的字符串,判断它是否是括号匹配的字符串。输入:一行,为一个仅由“(”、“)”、“[”、“]”组成的非空字符串。输出:一行,“YES”或“NO”,分别表示输入的字符串括号匹配或不匹配。括号匹配的主要思路是.

2021-01-05 17:22:20 450

原创 自定义数据结构-字符串删除

Ender得到了一个字符串,但是他非常讨厌字符串,因此他准备把字符串中的字符按以下顺序一个一个的删除。请你输出每个删除的顺序。 对于字符串a1a2…an ,每次依次进行以下操作: (1) 删除第一个字符。 (2) 进行(1)后将现在的第一个字符移动到最后。 例如字符串“abcd”进行一次操作后将变成“cdb”。 重复以上操作直到字符串为空,输出字符串中每个字符被删除的顺序。输入:一行,一个字符串。输出:N行(N为输入字符串的长度),表示每个字符被删除的顺序。a = list(input())wh.

2021-01-05 16:32:12 427

原创 基本数据结构-仿二进制密文系统**

写个0-1序列密文系统,给的程序提出了以下要求:明确使用具体某个长度的0-1序列来作为密文系统中的密文。每个密文对应一个明文字符。对于输入的密文序列,能够判断密文序列长度是否符合上述定义的密文系统,密文序列为0-1字符串且长度能被密文系统中的定义的0-1序列长度整除时认为该密文序列符合此系统。若符合上述密文系统,则将密文序列破解并输出对应字符序列;若不符合上述密文系统,则输出"Type Error,Please Check!"(逗号以及感叹号全为英文格式)。主要得程序详解都在代码中主要应.

2021-01-05 15:40:20 190

原创 基本数据结构-字母统计与缩写

写一段程序,能够在给出一段全称的情况下,输出它的缩写,同时计算其中使用到的字母种类的数量(不区分大小写,也就是说A和a算作同一种字母)。 要求:全称中的and、the、for、of计入用到的字母种类数量,但在缩写时忽略它们(例如:Industrial and Commercial Bank of China缩写为ICBC,而仅在of中出现的字母f仍需计入到该全称所使用的字母种类数中而仅在of中出现的字母f仍需计入到该全称所使用的字母种类数中。)进行缩写时无论这4个虚词为大写或小写都忽略。此时要注意题目.

2021-01-05 14:57:20 778

原创 基本数据结构-砍树

某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都1米。我们可以把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置;数轴上的每个整数点,即0,1,2,…,L都种有一棵树。 由于马路上有一些区域要用来建地铁。这些区域用它们在数轴上的起始点和终止点表示。已知任一区域的起始点和终止点的坐标都是整数,区域之间可能有重合的部分。现在要把这些区域中的树(包括区域端点处的两棵树)移走。你的任务是计算将这些树都移走后,马路上还有多少棵树。输入共两行。 第一行有两个整数,马路的长度L(L<.

2021-01-05 14:18:00 183

原创 基本数据结构-字母的ASCII码

把每个字母赋予了一个价值(value),想要计算出不同的单词/短语会有多少价值,“不如就用每个字母小写形式的ASCII码作为它的价值吧!”写出一个程序帮助他们快速计算出每个单词/短语的价值来让他们事先得到答案。 空格的价值为0。用ord转化ASCII码,用i对a遍历后得到的是单词,此时要接着用j对i进行遍历得到字母。主要是在列表中进行了操作a = input().split()b = []r = 0for i in a: for j in i: c = ord(j) .

2021-01-05 13:37:20 346

原创 程序控制结构-3n+1问题

对任何一个大于0的自然数n,如果它是偶数,那么把它除以2;如果它是奇数,那么把它变成(3n+1)。这样一直变换下去,最后一定在某一步得到n=1。例如: 3 -> 33+1=10 -> 10/2=5 -> 53+1=16 ->16/2=8 -> 8/2=4 -> 4/2=2 -> 2/2=1 现在输入一个大于0的整数,请你用计算机模拟出它变换到1的过程。主要应用了while循环,注意更新n,也就是判断条件,不然while循环无法结束n = int(input(.

2021-01-05 13:35:08 286

原创 程序控制结构-输出矩阵三角

输入包含一行,一个正整数N,N<=10。输出一个N行的矩阵三角。矩阵三角中同一行分数之间用一个空格隔开,行尾不要有多余的空格!输入样例4输出样例1/1 1/2 1/3 1/42/1 2/2 2/33/1 3/24/1这么写主要是因为不想让每一行后面出现空格n=int(input())for i in range(1,n+1): print(i,'/',1,sep='',end='') for j in range(1,n+1-i): print.

2021-01-04 22:20:10 399

原创 程序控制结构-飞机超速报警系统

飞机是通过空速管测量飞行速度的。其原理是通过空速管测得动压Pd,通过公式V=sqrt(2Pd/ρ0)求得指示空速V,其中ρ0为空气密度,约为1.29kg/m3。现打算开发一飞机超速报警系统,已知当飞机速度大于152m/s(340mph)时就算超速。我们获得了多组空速管读取的动压,请你编程判断一下这些情况中飞机是否超速。若超速则输出Alert,若安全则输出Safe。因为需要同时监控多架飞机的情况,你的程序需要能处理多组数据。输入一共T+1行。 第一行:一个整数T表示飞机的数量(数据的组数)。 接下来T行.

2021-01-04 18:07:32 414

原创 程序控制结构-登陆验证系统

登录验证系统。输入一共有四行,前两行由管理员分别录入某同学的账户与密码。后两行则由用户输入自己的账户和密码。若用户输入的账户与密码和管理员输入的账户密码两两匹配,则输出 login successfully ;若用户输入的账户存在但密码无法对应,则输出 wrong password;若账户不对应或账户和密码都不对应,则输出 invalid account 。输入四行:前两行由管理员分别录入某同学的账户与密码。后两行则由用户输入自己的账户和密码。输出表示登录的结果。主要就是要用if函数进行条件判断.

2021-01-04 17:37:54 120

原创 python基础语法-行列式计算

计算三阶行列式。输入数据包含三行,依次对应三阶矩阵的三行。 每行包含三个数,依次对应该行的三个数。输出数据包含一个数,为该矩阵行列式的值,保留两位小数。输入主要用map函数进行输入,注意要转换为浮点数a11,a12,a13 = map(float,input().split())a21,a22,a23 = map(float,input().split())a31,a32,a33 = map(float,input().split())r = a11*a22*a33+a12*a23*a31.

2021-01-04 17:31:06 1437

原创 python基础语法-字母转换

输入一个字母,若为小写字母,输出其对应的大写字母,若为大写字母输出对应的小写字母。若输入的字符不是字母,输出“Input Error”此题的重点在判断如果输入的是数字:.isdigit()如果输入的是字母:.isalpha()是否全小写:.islower()是否全大写:.isupper()判断首字母是否大写:.istitle()a = input()if a.isalpha(): if a.islower(): print(a.upper()) else:.

2021-01-04 16:57:36 2784

原创 python基础语法-绘制奖状

题目输入两行,一行是期末成绩,一行是平时成绩,输出奖状,利用ASCII码的转换主要考察了(1)引号的表示单引号常常表示单词双引号常表示词组或句子三引号不仅保留字符串的内容,还保留字符串的格式(2)ASCII码的转换获取字符的ASCII码值:ord()获取数字的ASCII码值:chr()(3)逻辑运算&是按位与运算|是按位或运算a = int(input())b = int(input())c = a&b #逻辑运算,&是按位与运算,|是按位或运算d.

2021-01-04 16:48:07 477 1

原创 python基础语法-温度转换

华氏度转化为摄氏度题目描述输入一个以华氏度为单位的温度f,试输出摄氏度c,并保留两位小数。转换公式为:c = (f-32) * (5/9)输入一个正数f,代表华氏度输出对应的摄氏度,要求保留两位小数主要注意输入时要利用float函数强制转换为浮点数,以及最后输出时限制小数位数f = float(input())#注意input默认的是字符类型,不能进行下一步运算,必须要强制转换为float类型c = (f-32) * (5/9)print('%.2f'%c)#保留两位小数的写法

2021-01-04 16:25:31 4461

原创 python基础语法-命题生成器

题目描述斯太芬最近学到了命题的描述。他发现很多命题都可以被表述为“如果……,那么……”的形式,但是斯太芬并不能够很好的将命题转换为这个形式。 请你编写一个程序,帮助斯太芬将命题转换为“如果……,那么……”的形式。输入输入包含两行。 第一行是命题的条件; 第二行是命题的结论。 条件和结论只含有英文字母和空格。输出输出包含一行,为转换之后的命题。格式如下: If condition, then conclusion. 注意全部使用英文符号标点符号,注意空格的添加。 逗号后有空格,If和then之后有.

2021-01-04 16:20:38 533

原创 GUI系列-anchor的使用

anchor是表示对齐方式的组件,W表示左,右对齐为E,顶对齐N,底对齐S,具体使用方法如下import tkinterroot = tkinter.Tk()label_title = tkinter.Label(root,text="1、你对本课程的评价是").pack(anchor = tkinter.W)R1 = tkinter.Radiobutton(root,text="好").pack(anchor = tkinter.W,padx=20)#anchor就是位置,W表示左,右对齐为E,

2020-12-26 16:14:09 689 1

原创 GUI系列-MVC思想

控制变量关联组件,是MVC的精髓import tkinter def show():#当我的radiobutto按下之后就会触发,调用show Description.delete("1.0", tkinter.END)#第一行第0列开始删除,所有都清除完毕之后结束 Description.insert(tkinter.INSERT, address.get())#tkinter.INSERT索引表示在光标处插入,默认是1.0位置app = tkinter.Tk() app.tit

2020-12-24 17:10:36 210 1

原创 GUI系列-简单计算器

简单计算器的制作,可以实现加减乘除import tkinter#导入包 root = tkinter.Tk()#窗体对象 def get_opt(event): text_opt = opt.get() if text_opt == '+':#识别加减乘除 result = float(add1.get()) + float(add2.get())#一定要强制转换类型,刚开始默认是string

2020-12-24 16:24:59 410 1

原创 GUI系列-响应菜单事件

响应菜单事件,并不用bind方法,而是用command,但是command不能设置事件类型,只是普通的事件触发import tkinter def pop(event): menubar.post(event.x_root, event.y_root)#Menu类里面有一个post方法,把munu显示出来,它接收两个参数,即x和y坐标,它会在相应的位置弹出菜单。 def display(): #可以不带event tkinter.Label(root, text =

2020-12-24 16:14:30 334 1

原创 GUI系列-用户登录

创建一个简单的输入用户名和密码然后进行登录的组件import tkinter def reg(event): name = E1.get()#在entry组件里面用get方法获取,获取的都是字符串类型,get函数使用的时候不需要任何参数,它的返回值就是该输入框的内容 pwd = E2.get()#默认返回的是字符串类型 if name == "admin" and pwd == "buaa":#如果都一致的话显示登陆成功 L3["text"] = "登录成功" #

2020-12-24 16:07:39 1050 4

原创 GUI系列-python相应鼠标事件

相应鼠标事件python代码import tkinter #导入包 root = tkinter.Tk() #窗体对象 def button1Click(event): #自定义事件处理函数 if myButton1["background"] == "green": myButton1["background"] = "yellow" else: myButton1["background"] = "green" myButto

2020-12-24 15:33:51 364 1

原创 自定义数据结构(栈、队列)-最长括号匹配

第三题 最长括号匹配满足如下条件的字符串称为括号匹配的字符串: 1. 空字符串是括号匹配的字符串。 2. 若A是括号匹配的串,则(A)、[A]是括号匹配的字符串。 3. 若A、B是括号匹配的字符串,则AB也是括号匹配的字符串。 例如:()、[]、([])、()()都是括号匹配的字符串,而][、[(])则不是。 现在对一个由“(”、“)”、“[”、“]”括号组成的字符串,求出其中最长的括号匹配子串。 字符串A的子串是指由A中连续若干个字符组成的字符串。 例如,‘A’, ‘B’, ‘C’, ‘ABC’, ‘C

2020-11-15 16:05:16 162 1

原创 自定义数据结构(栈、队列)-括号匹配

第二题 括号匹配满足如下条件的字符串称为括号匹配的字符串: 1. 空字符串是括号匹配的字符串。 2. 若A是括号匹配的串,则(A)、[A]是括号匹配的字符串。 3. 若A、B是括号匹配的字符串,则AB也是括号匹配的字符串。 例如:()、[]、([])、()()都是括号匹配的字符串,而][、[(])则不是。 现在对于输入的字符串,判断它是否是括号匹配的字符串。输入一行,为一个仅由“(”、“)”、“[”、“]”组成的非空字符串。输出一行,“YES”或“NO”,分别表示输入的字符串括号匹配或不匹配。

2020-11-15 16:03:04 171

原创 自定义数据结构(栈、队列)

第一题 考察栈Ender得到了一个字符串,但是他非常讨厌字符串,因此他准备把字符串中的字符按以下顺序一个一个的删除。请你输出每个删除的顺序。 对于字符串a1a2…an ,每次依次进行以下操作: (1) 删除第一个字符。 (2) 进行(1)后将现在的第一个字符移动到最后。 例如字符串“abcd”进行一次操作后将变成“cdb”。 重复以上操作直到字符串为空,输出字符串中每个字符被删除的顺序。输入一行,一个字符串。输出N行(N为输入字符串的长度),表示每个字符被删除的顺序。输入样例1abcd输出

2020-11-15 15:54:54 131

空空如也

空空如也

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

TA关注的人

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