自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

右置心脏

代码不是情诗,写满十四行也不是。

  • 博客(95)
  • 收藏
  • 关注

原创 1034 有理数四则运算 (20分) python

[PAT] 1034 有理数四则运算 (20分) python这个写法比较好 还是用了fraction和def看起来简洁

2021-09-06 01:06:37 368

原创 1085单位排行

lambda介绍Python 字典(Dictionary) items()方法Python 字典(Dictionary) get()方法1085单位排行lambda可以解决多要求的排序问题,通过字典的写入以及items的元组返回,控制输出。

2021-09-05 22:49:14 109

原创 0905没写完-PAT (Basic Level) Practice Python解法 1083 是否存在相等的差

03没过做个N个列表明显超时 10000个数字肯定不行要改怎么在不用多重列表的情况下链接两个数字,不要再一个排序操作之后就丢失原顺序了(记得index的操作),直觉是链表相关。(睡醒了看,现在脑子不太清醒)n = int(input())ckl = list(map(int,input().split()))new = []otpsz = []#数字otpcs = []#次数otp = []for i in range(n): new.append(abs(ckl[i]-(i+1

2021-09-05 03:12:48 162

原创 PAT (Basic Level) Practice Python解法 1020 月饼(正数/正整数)

PAT (Basic Level) Practice Python解法 1020 月饼va, need = map(int,input().split())stock = list(map(float,input().split()))#这里如果是int坑点3会报错,因为是正数,不是正整数sale = list(map(float,input().split()))per = []for i in range(va): dj = float(sale[i]/stock[i]) pe

2021-09-05 02:39:21 157

原创 PAT (Basic Level) Practice Python解法 1027 打印沙漏

PAT (Basic Level) Practice Python解法 1027 打印沙漏如果想投机取巧可以直接roll出1000以内的sum直接打入list。i = 1sum = 1lsts = [1]while sum<= 1000: i = i + 2 sum = sum+ i*2 lsts.append(sum)lsts.append(1001)#直接记录了1000以内的所有sum值。cnt, flag = input().split()cnt = i

2021-09-05 02:03:27 112

原创 没写完+1010-PAT (Basic Level) Practice Python解法 1005 继续(3n+1)猜想

没写完-PAT (Basic Level) Practice Python解法 1005 继续(3n+1)猜想n = int(input())ckl =list(map(int,input().split()))for hys in ckl: while hys != 1: if hys % 2 == 0: hys = hys / 2 else: hys = (hys * 3 + 1) / 2 if

2021-09-04 07:56:32 79

原创 PAT (Basic Level) Practice Python解法 1024 科学计数法(re.split正则多标识符分割)

PAT (Basic Level) Practice Python解法 1024 科学计数法(re.split正则分解)import res = str(input())sf = float(s)a,b,c = re.split('[.|E]',s)#正则多标识符分割if a[0]=='+': flag = ''else: flag = '-'#输出的正负a = a[1]#整数部分if int(c)==0:#指数为0,直接输出原始数字 print(flag,a,'

2021-09-04 03:47:54 243

原创 PAT (Basic Level) Practice Python解法 1004 成绩排名(和1028/1004类似/平方**/开方sqrt)

PAT (Basic Level) Practice Python解法 1004 成绩排名(和1028/1004类似/平方/开方sqrt)import sysimport mathn = int(input())low = math.sqrt(2)*100high = 0lowotp = ''highotp = ''for i in range(n): s = sys.stdin.readline() sl = s.split(' ')#py中的平方是**,开方是sqrt

2021-09-03 22:02:31 84

原创 可优化-PAT (Basic Level) Practice Python解法 1004 成绩排名(和1028类似/sys/数据筛选/未知数量切片存取)

sys读入的时候会把换行符也读进去1028没想到办法怎么在不产生列表的前提下直接进行未知数量的切片存取,用re可能可以。import sysn = int(input())low = 100high = 0lowotp = ''highotp = ''for i in range(n): s = sys.stdin.readline()#readline的字符串后面跟了一个/n sl = s.split(' ')#先用split做吧 if int(sl[-1])&l

2021-09-03 21:49:50 71

原创 PAT (Basic Level) Practice Python解法 1003 我要通过!(正则/re.split/字符串匹配/多标识符切割)

1003 我要通过 python实现import re n=input() for i in range(int(n)): s=input() if re.match(r'A*PA+TA*',s): #在字符串中进行匹配 a=re.split(r'[P|T]',s) #以字符P,T进行分段 if a[0]*len(a[1])==a[2]: #条件判断 print('YES') else: .

2021-09-03 21:25:35 95

原创 PAT (Basic Level) Practice Python解法 1040 有几个PAT(find逆序遍历查找/重复计量算法)

PAT (Basic Level) Practice Python解法 1040 有几个PAT(find逆序遍历查找/重复计量算法)import syss = sys.stdin.readline()s = s[s.find('P'):s.find('T',len(s)-1,-1)]#先卡掉开头不是P的,结尾不是T的#字符串反应太快了,截取花的时间超过了测试用例里的无效字符判断时间cnT = 0cnA = 0cnP = 0for i in s[::-1]: if i == 'T':

2021-09-03 18:23:11 121

原创 PAT (Basic Level) Practice Python解法 1039 到底买不买(str中replace用法)

存档0009PAT (Basic Level) Practice Python解法 1039 到底买不买(replace用法)import syssale = sys.stdin.readline()goal = sys.stdin.readline()cnt = 0sale1 = salegoal1 = goalfor i in goal: if i in sale1: cnt+=1 sale1 = sale1.replace(i, '',1)#rep

2021-09-03 17:37:26 78

原创 override超控/覆写

override超控/覆写失控玩家free guy里key在硬重启之前写了一个override的程序,超控改了物理引擎造桥。Java中override和overload的区别与使用覆写-重写(override)子类定义与父类完全相同(不算权限)的方法或者属性称为覆写。...

2021-09-02 23:55:57 106

原创 PAT (Basic Level) Practice Python解法 1062 最简分数(最简分数判定gcd/分子范围控制)

PAT (Basic Level) Practice Python解法 1062 最简分数(最简分数判定gcd/分子范围控制)import matha, b, fm =input().split(' ')fm = int(fm)a1 = a.split('/')b1 = b.split('/')num1 = int(a1[0])/int(a1[-1])num2 = int(b1[0])/int(b1[-1])if num1>num2: num1,num2 = num2,num1

2021-09-02 01:43:44 111

原创 PAT (Basic Level) Practice Python解法 1072 开学寄语

PAT (Basic Level) Practice Python解法 1072 开学寄语stu, things = map(int,input().split())bad = input().split()cntxs = 0cntdx = 0for i in range(stu): info = input().split() kck = [] dx = info[2:]#这个设置真的很有必要,防止我后面颠来倒去看不清楚 for sth in dx:

2021-08-31 05:43:23 146

原创 PAT (Basic Level) Practice Python解法 1042 字符统计

PAT (Basic Level) Practice Python解法 1042 字符统计ckl = [0]*26import sysinfo = sys.stdin.readline()info = info.lower()for s in info: if s.islower(): ckl[ord(s)-97]+=1num = ckl.index(max(ckl))print(chr(num+97),max(ckl))

2021-08-31 05:20:28 155

原创 炸坑超时 PAT (Basic Level) Practice Python解法 1032 挖掘机技术哪家强(不要连等指向/+=1)

炸坑超时 PAT (Basic Level) Practice Python解法 1032 挖掘机技术哪家强(不要连等指向/+=1)很明显坑点3是因为容器存取超时了,暂时懒得解决了。三分留给10月的我。import sysn=int(input())xxdata = []cjdata = []#不要写连等,会相同指向疯狂报错!!!for i in range(n): info = sys.stdin.readline() school = info[0:info.find("

2021-08-31 05:11:52 198

原创 PAT (Basic Level) Practice Python解法 1033 旧键盘打字(str大小写转换判断)

PAT (Basic Level) Practice Python解法 1033 旧键盘打字(str大小写转换判断)bad = input()ckl = input()if ('+' in bad):#大写打不出来 for item in ckl: if (not item.isupper()) and (item.lower() not in bad) and (item.upper() not in bad): print(item,end='')

2021-08-31 05:03:25 159

原创 PAT (Basic Level) Practice Python解法 1019 数字黑洞(前导零/sorted)

炸坑 PAT (Basic Level) Practice Python解法 1019 数字黑洞这题还能运行超时,我服了。num = input()if len(set(list(num)))==1: print(num,'-',num,'= 0000')else: cha = '' while cha != "6174": s1 = ''.join(sorted(list(num),reverse=False))#升序 s2 = ''.joi

2021-08-30 08:18:21 147

原创 炸坑 PAT (Basic Level) Practice Python解法 1014 福尔摩斯的约会

炸坑 PAT (Basic Level) Practice Python解法 1014 福尔摩斯的约会a = input()b = input()c = input()d = input()for i in range(min(len(a),len(b))): if a[i].isupper() and a[i]==b[i]: days = a[i] cdd = i breakfor i in range(cdd+1,min(len(a),

2021-08-30 07:54:56 131

原创 PAT (Basic Level) Practice Python解法 1013 数素数(空格输出+换行输出/素数判定算法)

PAT (Basic Level) Practice Python解法 1013 数素数(空格输出+换行输出/素数判定算法)import mathdef isprime(n): if n == 2 or n == 3: return True if n % 2 == 0 or n % 3 == 0: return False for k in range(6, int(math.sqrt(n)) + 2, 6): if n % (

2021-08-30 07:10:48 208

原创 炸坑 PAT (Basic Level) Practice Python解法 1067 试密码(读到特定字符停止/while)

炸坑 PAT (Basic Level) Practice Python解法 1067 试密码(读到特定字符停止/while)很奇怪啊,倒数第二个1分没过去,想不通啊。pw,n = input().split()n = int(n)cnt = 0cklist = []while True: msg = input() if msg != '#': cklist.append(msg) else: breakfor id in range

2021-08-30 06:04:25 97

原创 PAT (Basic Level) Practice Python解法 1028 人口普查(年龄比较/sys读取/列表存取/input与列表超时解决办法)

这个题最后一个点会疯狂报错超时,原因有2,一是列表存取,二是输入。#这是第一版本n = int(input())people = []for i in range(n): info = input().split(' ') birth = list(map(int,info[1].split('/'))) people.append([birth, info[0]])for i in range(len(people)-1,-1,-1): if people[i][

2021-08-30 04:40:10 215

原创 PAT (Basic Level) Practice Python解法 1029 旧键盘(原顺序输出/大小写转换upper)

PAT (Basic Level) Practice Python解法 1029 旧键盘(原顺序输出/大小写转换upper)old = list(input().upper())new = list(input().upper())oldset = set(old)newset = set(new)bad = oldset-newsetotp = list(bad)otp.sort(key=old.index)#按照原序列原顺序输出for i in otp: print(i,end=

2021-08-30 03:22:23 106

原创 3个点超时 PAT (Basic Level) Practice Python解法 1045 快速排序

3个点超时 PAT (Basic Level) Practice Python解法 1045 快速排序n = int(input())otp = []cnt = 0lstin = list(map(int, input().split()))min1 = min(lstin)max1 = max(lstin)if lstin[0] == min1: cnt = cnt+1 otp.append(lstin[0])if lstin[-1] == max1: cnt =

2021-08-30 03:00:42 199

原创 PAT (Basic Level) Practice Python解法 1044 火星数字(进制转换的进位问题)

PAT (Basic Level) Practice Python解法 1044 火星数字(进制转换的进位问题)marsg = ['tret', "jan", "feb", "mar", "apr", "may", "jun", "jly", "aug", "sep", "oct", "nov", "dec",'tam']marss = ["tam", 'hel', 'maa', 'huh', 'tou', 'kes', 'hei', 'elo', 'syy', 'lok', 'mer', 'jou']

2021-08-30 02:34:41 92

原创 912待更新 TXT文件里的换行符乱码覆写 Python

一篇獒龙文里的换行符全都是是'?/n',word没办法替换所以就想着文件覆写试试。text = open('7-1111.txt','rt')textnew = open('7-2222.txt', 'wt')t = text.readlines()for lines in t: if lines != '?\n': textnew.write(lines)text.close()textnew.close()好像需要文件默认在目前的文件夹处理目录下才可以运行,暂时不

2021-08-30 00:13:33 168

原创 报错来的莫名其妙-PAT (Basic Level) Practice Python解法 1010 一元多项式求导

报错来的莫名其妙-PAT (Basic Level) Practice Python解法 1010 一元多项式求导data = list(map(int,input().split(' ')))ckout = []if len(data)!=0 and data[-1]==0: data.pop() data.pop()#pop()O==1for i in range(len(data)): if i%2 == 0: ckout.append(data[i]*

2021-08-29 02:32:06 65

原创 PAT (Basic Level) Practice Python解法 1008 数组元素循环右移问题

PAT (Basic Level) Practice Python解法 1008 数组元素循环右移问题n, move = map(int,input().split())ckl = input().split(' ')move = move%nif move==0: print(' '.join(ckl))else: cknew = ckl[(n-move):]+ckl[:(n-move)] print(' '.join(cknew))...

2021-08-29 01:06:39 83

原创 PAT (Basic Level) Practice Python解法 1007 素数对猜想

PAT (Basic Level) Practice Python解法 1007 素数对猜想import mathdef isprime(n): n = int(n) if n==1 or (n!=2 and n%2 == 0): return False if n==2 or n==3: return True prime = True for k in range(3,int(math.sqrt(n)+1),2):

2021-08-29 00:57:04 110

原创 可优化-PAT (Basic Level) Practice Python解法 1094 谷歌的招聘(素数判定)

可优化-PAT (Basic Level) Practice Python解法 1094 谷歌的招聘(素数判定)import mathdef isprime(n): n = int(n) if n==1 or (n!=2 and n%2 == 0): return False if n==2 or n==3: return True prime = True for k in range(3,int(math.sqrt(

2021-08-29 00:07:26 103

原创 PAT (Basic Level) Practice Python解法 1087 有多少不同的值(循环)

PAT (Basic Level) Practice Python解法 1087 有多少不同的值(循环)n = int(input())otplst = []for i in range(1, n+1):#从1开始算的 k = i//2+i//3+i//5 if (k) not in otplst: otplst.append(k)print(len(otplst))上面的粗糙算法超时了,想了一想发现这个应该是30做一个循环,2*3*5=30最小公倍数。每个循环

2021-08-28 20:14:45 163

原创 PAT (Basic Level) Practice Python解法 1086 就不告诉你(list的倒序以及range的逆序遍历判定格式)

PAT (Basic Level) Practice Python解法 1086 就不告诉你(list的倒序以及range的逆序遍历判定格式)a, b = map(int,input().split())k = a*botp = list(str(k))for i in range(len(otp)-1,-1,-1):#list的逆序判定格式 if otp[i]=='0': otp.pop(i) else: breakotp.reverse()fo

2021-08-28 18:04:21 93

原创 PAT (Basic Level) Practice Python解法 1061 判断题

PAT (Basic Level) Practice Python解法 1061 判断题n, m = input().split()weight = list(map(int,input().split(' ')))right = list(map(int,input().split(' ')))cklist = []otplst = []for i in range(int(n)): cklist.append(list(map(int,input().split(' '))))f

2021-08-26 22:24:26 135

原创 PAT (Basic Level) Practice Python解法 1063 计算谱半径

PAT (Basic Level) Practice Python解法 1063 计算谱半径import mathn = int(input())pbj = []for i in range(n): a,b = map(int,input().split()) pbj.append(math.sqrt(a*a+b*b))print("{:.2f}".format(max(pbj)))

2021-08-25 17:09:01 92

原创 PAT (Basic Level) Practice Python解法 1064 朋友数

PAT (Basic Level) Practice Python解法 1064 朋友数n = int(input())frlist = input().split(' ')otplst = []numid = [0]*37for num in frlist: numid[(sum(list(map(int,list(num)))))] = sum(list(map(int,list(num))))for ans in numid:#本来想用01判定但是好像报错了 if ans

2021-08-25 17:03:46 154

原创 存档没写完 1065 单身狗

存档没写完 1065 单身狗n = int(input())cplist = []single = []dsgcnt = 0for i in range(n): a,b = input().split() cplist.append(a) cplist.append(b)total = int(input())check = input().split(' ')for per in check: if per not in cplist: s

2021-08-25 16:43:30 42

原创 PAT (Basic Level) Practice Python解法 1081 检查密码

PAT (Basic Level) Practice Python解法 1081 检查密码n = int(input())cklist = []for i in range(n): cklist.append(input()) for ck in cklist: if len(ck)<6: print("Your password is tai duan le.") else: inv = num = alp = poi = 0

2021-08-24 17:08:33 96

原创 PAT (Basic Level) Practice Python解法 1057 数零壹(进制转换)

PAT (Basic Level) Practice Python解法 1057 数零壹sample = input()cnt = 0otp = 0for i in sample: if ord(i) in range(65,91): otp = otp+ord(i)-64 cnt = cnt+1 elif ord(i) in range(97,123): otp = otp+ord(i)-96 cnt = cnt +

2021-08-23 19:17:32 89

原创 PAT (Basic Level) Practice Python解法 1056 组合数的和

PAT (Basic Level) Practice Python解法 1056 组合数的和data = list(map(int,input().split()))data.pop(0)otplst = []for i in data: for k in data: if i != k: otplst.append(int(i*10+k))print(sum(otplst))

2021-08-23 19:00:10 106

空空如也

空空如也

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

TA关注的人

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