蓝桥杯3.8模拟赛2-5题

python 复制代码
n=int(input())
s="2026"
for i in range(1,n+1):
    line=""
    for j in range(i):
        line+=s[j%4]
    print(line)
python 复制代码
n,k=map(int,input().split())
s=input().strip()
stack=[]
for c in s:
    while k>0 and stack and stack[-1]<c:
        stack.pop()
        k-=1
    stack.append(c)
if k>0:
    stack=stack[:-k]
res=''.join(stack).lstrip('0')
print(res if res else'0')
python 复制代码
m, a = map(int, input().split())

# 递归:day = 当前天数,x = 第day-1项,y = 第day项
def dfs(day, x, y):
    # 先判断今天达不达标
    if y % m == a:
        return day
    
    # 出现 1,1 循环,永远找不到
    if x == 1 and y == 1 and day > 2:
        return -1
    
    # 递归下一天
    return dfs(day + 1, y, (x + y) % m)

# 初始:第1天=1,第2天=1,从第2天开始查
print(dfs(2, 1, 1))
python 复制代码
import heapq
n=int(input())
levels=[]
for _ in range(n):
    a,b=map(int,input().split())
    levels.append(a,b)
levels.sort()
heap=[]
total=0
for b,a in levels:
    heapq.heappush(heap,-a)
    total+=a
    if total>b:
        total-=(-heapq.heappop(heap))
print(len(heap))
python 复制代码
heapq.heappush(heap, a)   # 原始写法(小根堆)
heapq.heappush(heap, -a)
max_a = max(heap)   # 原始写法(暴力找最大,慢)
-heap[0]因为堆顶是 最小负数 → 取反就是 最大正数。
-heapq.heappop(heap)
python 复制代码
n = int(input())
levels = []

# 1. 读入所有关卡
for i in range(n):
    a, b = map(int, input().split())
    levels.append((a, b))

# 2. 贪心排序:按 b 从小到大排(核心!限制严的先打)
levels.sort(key=lambda x: x[1])

sum_a = 0    # 当前总体力
count = 0    # 答案:打过的关数
selected = [] # 保存打过的关卡

# 3. 暴力贪心:能打就打,不能打就算了(省三思路)
for a, b in levels:
    if sum_a <= b:          # 满足条件:当前体力 <= b
        selected.append(a)
        sum_a += a
        count += 1
    else:
        # 不能直接打 → 看看能不能替换掉之前最大的a(贪心优化)
        if selected and max(selected) > a:
            sum_a -= max(selected)
            selected.remove(max(selected))
            selected.append(a)
            sum_a += a

print(count)
  • sum_a -= max(...)→ 只做一件事:把总体力减少
  • selected.remove(max(...))→ 只做一件事:把列表里对应的关卡删掉
相关推荐
Flittly11 小时前
【AgentScope Java新手村系列】(16)从RAG到多路检索
java·spring boot·spring
小兔崽子去哪了11 小时前
Java 生成二维码解决方案
java·后端
人活一口气16 小时前
从JVM调优到MCP协议:Java全栈技术体系深度总结与企业级架构实践
java·spring boot
NE_STOP17 小时前
Vibe Coding -- 完整项目案例实操
java
荣码17 小时前
GraphRAG:普通RAG只能回答"点"的问题,我踩了4个坑才搞懂
java·python
SimonKing17 小时前
Google第三方授权登录
java·后端·程序员
明月光81817 小时前
从一行 @Builder 说起:重新拾起 Java 的 Lombok、注解与 Builder 模式
java
考虑考虑1 天前
Mybatis实现批量插入
java·后端·mybatis
咖啡八杯1 天前
GoF设计模式——中介者模式
java·后端·spring·设计模式
金銀銅鐵1 天前
[Python] 基于欧几里得算法,实现分数约分计算器
python·数学