主页 > 创业  > 

蓝桥杯牛客1-10重点(自用)

蓝桥杯牛客1-10重点(自用)

1

import math def lcm(a,b): return a * b // math.gcd(a, b) # math.gcd(a, b)最小公倍数 a,b = map(int,input().split()) # a = int(input()) # 只读取一个整数 # print(a) print(lcm(a,b))

2

import os import sys def fly(lists,n): count = 0 flag = False for i in range(1,n): if lists[i] > lists[i-1] : flag = True elif lists[i] < lists[i - 1] and flag : flag = False count += 1 return count n = int(input()) lists = list(map(int, input().split())) print(fly(lists,n))

3.1

# Bob搜索 import os import sys def find(s): #字母 最大最小 s = s.upper() # s = s.lower() return s.find("BOB") s = input().strip() # 去掉首位两个字符 print(find(s))

3.2

# Bob搜索找到多个 import os import sys def find(s): s = s.upper() # s = s.lower() count = 0 index = 0 positions = [] while True: index = s.find("BOB", index) if index == -1: break count += 1 positions.append(index) # 记录位置 index += 1 return count,positions s = input().strip() # 去掉首位两个字符 print(find(s))

4

import os import sys def finish(n, r, p): n = n % p # 对 n 进行取模操作 res = 1 # 初始结果为 1 while r > 0: if r % 2 == 1: # 如果 r 是奇数 res = (res * n) % p # 更新结果 n = (n * n) % p # 对 n 平方 r = r // 2 # B 右移 return res # 读取测试数据组数 T T = int(input()) # 处理每组测试数据 # 在 Python 中,_ 是一个惯例,表示一个"占位符"或"不关心的变量"。当你不需要使用循环变量时,可以使用 _ 来代替。l for _ in range(T): a, b, c = map(int, input().split()) # 输入 A, B, P print(finish(a, b, c)) # 输出结果

5

import os import sys def saolei(n,m,array): direction = [(-1,-1),(-1,0),(-1,1),(0,1),(0,-1),(1,1),(1,-1),(1,0)] result =[["0" for _ in range(m)] for _ in range(n)] for i in range(n): for j in range(m): if array[i][j] == "*": result[i][j]="*" else: sum = 0 for x,y in direction: dx,dy = i+x,j+y if 0<=dx<n and 0<=dy<m and array[dx][dy]=="*": sum += 1 result[i][j]=str(sum) for row in result: # "".join(row) 的作用是 将 row 中的所有字符合并成一个字符串,不添加任何分隔符。 print("".join(row)) n , m = map(int,input().split()) # n , m = map(int , input().strip()) array = [input().strip() for _ in range(n)] saolei(n,m,array) # 2 3 # qw e r # r s g # ['qw e r', 'r s g'] # print(array)

6

n,a=int(input()),0 for i in range(2,n+1): while n%i==0: n/=i a+=1 if n>1: a+=1 if a%2==1: print("Nancy") else: print("Johnson")

7

import math n = int(input()) # 读取数字的个数 nums = list(map(int, input().split())) # 读取所有数字并转换为列表 # 计算最大差值 max_diff = max(nums) - min(nums) print(max_diff)

8

n,m=map(int,input().split()) times=list(map(int,input().split())) times.sort() c=0 for t in times: if m>=t: m-=t c+=1 else: break print(c)

9

a=int(input()) b=a**(1/3) print(f"{3*b:.3f}") print(f"{3*b}") n = 42 print(f"{n:d}") # 输出: 42 pi = 3.14159 print(f"{pi:.2f}") # 输出: 3.14 # f:用于格式化浮点数。 # .nf:表示保留 n 位小数。 value = 12.3456789 print(f"{value:.3f}") # 输出: 12.346 large_number = 1234567890 print(f"{large_number:e}") # 输出: 1.234568e+09 ratio = 0.75 print(f"{ratio:.2%}") # 输出: 75.00% # f"..." 表示这是一个格式化字符串。 # {name:s}:name 是要嵌入字符串中的变量,而 s 是格式说明符,表示将 name 格式化为字符串。 # 其实这里的 s 是多余的,因为 name 本身已经是一个字符串,默认就会被当作字符串处理。所以,{name} 和 {name:s} 的效果是一样的。 name = "Alice" print(f"Hello, {name:s}") # 输出: Hello, Alice

10.1

import heapq n,m,k=map(int,input().split()) a=list(map(int,input().split())) a=list(map(lambda x:-x, a)) # map(lambda x: -x, a) # 通过 lambda x: -x 这个匿名函数,把列表 a 中的每个元素都取负值。 # map() 函数会对 a 中的每个元素执行 -x 操作,并返回一个 迭代器。 # list(...) # map() 返回的是一个迭代器,需要用 list() 转换为列表 a。 heapq.heapify(a) for _ in range(m): # O(m log n) while len(a)>k: heapq.heappop(a) s=list(map(int,input().split())) if s[0]==1: heapq.heappush(a,-s[1]) else: if len(a)>=k: print(-a[0]) else: print(-1)

10.2

n, m, k = map(int, input().split()) # 读取 n, m, k a = list(map(int, input().split())) # 读取初始数组 for _ in range(m): # O(n * m log n) s = list(map(int, input().split())) # 读取操作 if s[0] == 1: # 插入元素 a.append(s[1]) # 直接追加到数组中 else: # 查询第 k 小的数 if len(a) >= k: a.sort() # 先排序(O(n log n)) print(a[k - 1]) # 取第 k 小的元素 else: print(-1) # 数组元素不足 k 个

标签:

蓝桥杯牛客1-10重点(自用)由讯客互联创业栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“蓝桥杯牛客1-10重点(自用)