蓝桥杯(Python)每日练Day5

题目

OJ1229

题目分析

  1. 题目完全符合栈的特征,后进先出。
  2. 如果能够熟练使用列表的9种方法那么这道题很容易解出。

题解

python 复制代码
a=[]#存衣服
n=int(input())
for i in range(n):
  l=list(input().split())#判断每一步的操作
  if len(l[0])==2:
    a.append(l[1])
  else:
    while a.pop()!=l[1]:pass
if len(a)==0:print('Empty')
else:print(a[-1])

题目

题目分析

  1. 输入一层就记录一层的权和,然后输出权和最大的层数,第一步,判断总共有多少层。
python 复制代码
以下是 log() 方法的语法:
import math
math.log(x)
math.log(x,base)#以base为底x的对数
参数
x -- 数值表达式。
base -- 基底
则对此题总共有math.log(n,2)+1层
  1. 利用列表初始化两个数组,一个用x存储每一个节点的权,s记录每一层的和。
  2. 利用列表的切片分层求权的和。
  3. 输出s最大的值的索引。

题解

python 复制代码
import math
s=[]
n = int(input())
x= list(map(int, input().split()))
deep=int(math.log(n,2))+1
for i in range(deep):
    s.append(sum(x[2**i-1:2**i+2**i-1]))
print(s.index(max(s))+1)
相关推荐
sg_knight1 分钟前
对象池模式(Object Pool)
python·设计模式·object pool·对象池模式
240291003377 分钟前
自编码器(AE)与变分自编码器(VAE)-- 认识篇
python·神经网络·机器学习
郝学胜-神的一滴17 分钟前
Python中的“==“与“is“:深入解析与Vibe Coding时代的优化实践
开发语言·数据结构·c++·python·算法
一个处女座的程序猿O(∩_∩)O37 分钟前
Python多重继承详解
开发语言·python
Loo国昌1 小时前
【AI应用开发实战】04_混合检索器:BM25+向量+可靠度融合实战
人工智能·后端·python·自然语言处理
belldeep1 小时前
python:用 Flask 3 , mistune 2 实现指定目录下 Md 文件的渲染
python·flask·markdown·mistune
52Hz1181 小时前
力扣33.搜索旋转排序数组、153.寻找排序数组中的最小值
python·算法·leetcode
月下雨(Moonlit Rain)1 小时前
宇宙飞船游戏项目
python·游戏·pygame
清水白石0081 小时前
测试金字塔实战:单元测试、集成测试与E2E测试的边界与平衡
python·单元测试·log4j·集成测试