首页 > 编程语言 >第十三届蓝桥杯省赛研究生组python

第十三届蓝桥杯省赛研究生组python

时间:2025-01-04 13:13:57浏览次数:1  
标签:试题 python res memo list 蓝桥 time 省赛 题解

目录

试题A:工作时长

excel处理

  • 把数据复制到excel,并选中列右键选择设置单元格格式
  • 注意:因为求和之后总小时数可能会超过24小时,不要选择最前面是hh的,选择[h]:mm:ss可以用来显示小时数超过 24 小时的时间值。

  • 接着,在B2输入计算公式A2-A1,B4输入计算公式A4-A3,选中处理好的这四个往下拉,填充剩下所有数据

  • 在其他任意空白单元格设置好相同的格式,对B这一列求和,最后将得到的结果转换为秒为单位

  • 答案:5101913

代码

#先排序,然后转换为时间戳,后一个时间减去上一个时间,累计差值
from datetime import datetime
# 创建一个空列表,用于存储时间数据
time_list = []
# 使用with语句打开文件,确保文件在使用完后自动关闭
with open("records.txt", 'r') as fp:
    # 逐行读取文件数据
    for line in fp.readlines():
        # 去除每行数据的首尾空格和换行符
        line = line.strip()
        # 将时间字符串转换为datetime对象
        time_item = datetime.strptime(line, "%Y-%m-%d %H:%M:%S")
        # 将转换后的时间对象添加到列表中
        time_list.append(time_item)
# 对时间列表进行排序,以便按升序排列
time_list.sort()
# 初始化变量,用于存储计算结果
ans = 0
# 遍历索引序列,步长为2,从1开始到time_list的长度
for i in range(1, len(time_list), 2):
    # 计算相邻时间数据之间的时间差,并将时间差的秒数累加到ans中
    ans += (time_list[i] - time_list[i - 1]).seconds
# 打印计算结果
print(ans)
  • 答案:5101913

试题B:分糖果

详情见

试题C:填充

详情见

试题D:互质数的个数

题解:暴力

  • 获取a,b,计算a的b次幂记为c,遍历1到c,判断如果与c互质count++
import math
a,b=map(int,input().split())
c=a**b
count=0
for i in range(1,c):
    if math.gcd(i,c)==1:
        count+=1
print(count%998244353)
  • 27分

试题E:阶乘的和

题解:暴力+备忘录

def func(x,memo):
    if x in memo:#在计算前先查一下备忘录
        return memo[x]
    re=1
    for i in range(1,x+1):
        re*=i
    memo[x]=re#存入备忘录
    return re
n=int(input())
a=list((map(int,input().split())))
memo={}#定义备忘录
for i in range(len(a)):
    a[i]=func(a[i],memo)
x=sum(a)
#得到了所有元素阶乘和,遍历和求得是谁得阶乘
res=0
for i in range(1,x):
    if func(i,memo)==x:
        res=i
        break
print(res)
  • 5分

正确解答

试题F:公因数匹配

  • 思路:两个for循环遍历数组,如果两个指针对应的数存在公因数就把下标加入结果列表,对结果列表升序排序两次,输出第一个

题解:暴力

import math
n=int(input())
a=list(map(int,input().split()))
a.insert(0,0)#在a数组前面补0,下标统一后移1
res=[]
i=1
while i<len(a)-1:
    j=i+1
    while j<len(a):
        if math.gcd(a[i],a[j])>1:
            res.append([i,j])
        j+=1
    i+=1
res.sort(key=lambda x:x[0])
res.sort(key=lambda x:x[1])
if len(res) > 0:
    print(res[0][0],res[0][1])
  • 5分(受限python语言),换成C++可得45分

标签:试题,python,res,memo,list,蓝桥,time,省赛,题解
From: https://www.cnblogs.com/lushuang55/p/18122462

相关文章

  • python毕设 网上艺术品拍卖系统程序+论文
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、选题背景关于网上艺术品拍卖系统的研究,现有研究主要集中在电子商务平台的通用功能与安全机制方面1。专门针对艺术品拍卖这一特殊领域的系统研......
  • Python 潮流周刊#84:2024 年 Python 的最佳实践(摘要)
    本周刊由Python猫出品,精心筛选国内外的250+信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进Python技术,并增长职业和副业的收入。分享了12篇文章,12个开源项目,全文2200字。以下是本期摘要:......
  • Python--pika (rabbitmq)
    connectionconnection=BlockingConnection(ConnectionParameters(host='xxx',port=xxx,credentials=PlainCredentials(username='xxx',password='xxx')))channelchannel=connection.channel()生......
  • python基于flask框架的小区社区公寓智能访客预约网站
    文章目录开发技术介绍具体实现截图开发技术设计思路系统测试核心代码部分展示文章目录/写作提纲参考开发与测试:源码/演示视频获取方式开发技术介绍设计步骤如下:1、明确系统的业务流程和数据流程,并用UML画出相应的活动图、顺序图。2、设计数据字典,明确编码规则。3......
  • python毕设 基于人脸识别的社区门禁系统84czsnq9程序+论文 可用于毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着城市化进程的加速,社区安全已成为城市居民关注的焦点。传统的门禁系统,如密码锁、IC卡等,虽然在一定程度上保障了社区的安全,但存在着密码......
  • python毕设 基于微信小程序的高校学生心理互动辅导平台xyp03gda程序+论文 可用于毕业
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景在快节奏与高压力的现代学习环境中,高校学生面临着前所未有的心理压力和挑战。学业负担、人际关系、职业规划等多重因素交织,使得心理健康问......
  • python毕设 基于微信小程序的写字楼物业报修管理系统cgc660vs 后端程序+论文 可用于毕
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着城市化进程的加速,写字楼作为现代都市的重要组成部分,其物业管理水平直接影响到入驻企业的办公体验和运营效率。然而,传统的物业报修管理......
  • python毕设 基于微信小程序的幼儿园管理系统的设计与实现2vk742v4程序+论文 可用于毕
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着信息技术的迅猛发展,教育行业也迎来了数字化转型的浪潮。幼儿园作为儿童教育的起点,其管理方式同样需要与时俱进。传统的幼儿园管理方式......
  • Python--内存分析工具汇总
    gdb下载libpython.py文件到服务器目录,比如:/root/utils/libpython.py进入gdb命令,加载好libpython(gdb)python>importsys>sys.path.insert(0,"/root/utils")>importlibpython>end(gdb)pypy-btpy-downpy-localspy-u......
  • windows11使用pycharm连接wsl2开发基于poetry的python项目
    windows11使用pycharm连接wsl2开发基于poetry的python项目背景:公司开发的python项目用到了某个只提供了Linux版本的包,遂研究了一番如何在windows环境下进行开发。windows安装wsl2进入到wsl2中,安装对应的python版本,建议使用pyenv,下面以3.10.14版本为例子。pyenv安装方法可以......