首页 > 编程语言 >【PAT_Python解】1110 区块反转

【PAT_Python解】1110 区块反转

时间:2024-11-06 20:19:33浏览次数:6  
标签:index PAT Python results next sys 1110 address data

原题链接:PTA | 程序设计类实验辅助教学平台

Tips:以下Python代码仅个人理解,非最优算法,仅供参考!多学习其他大佬的AC代码!

import sys

# 读取输入
head, n, k = map(int, sys.stdin.readline().split())

# 初始化数据,装入字典,最终取值
data = {}
next = {}
for _ in range(n):
    _address, _data, _next = map(int, sys.stdin.readline().split())
    data[_address] = _data
    next[_address] = _next

# 创建节点列表,构建链表
nodes = []
p = head
while p != -1:
    nodes.append(p)
    p = next[p]

# 测试点6:给的数据有多余结点,更新 n 为实际有效数量
n = len(nodes)

# 分割成组,并直接逆转
res = [nodes[i:i + k] for i in range(0, n, k)][::-1]

# 合并为一个扁平化列表
results = [address for group in res for address in group if group]

# 输出结果
for index in range(len(results) - 1):
    sys.stdout.write(f'{results[index]:05d} {data[results[index]]} {results[index + 1]:05d}\n')
sys.stdout.write(f'{results[-1]:05d} {data[results[-1]]} -1\n')

标签:index,PAT,Python,results,next,sys,1110,address,data
From: https://blog.csdn.net/m0_56677113/article/details/142945331

相关文章

  • 【PAT_Python解】1113 钱串子的加法
    原题链接:PTA|程序设计类实验辅助教学平台Tips:以下Python代码仅个人理解,非最优算法,仅供参考!多学习其他大佬的AC代码!defadd_base30(num1,num2):max_length=max(len(num1),len(num2))#在前面补零,使两个字符串长度相同num1=num1.zfill(max_lengt......
  • 0基础学Python——类的单例模式、反射函数、记录类的创建个数、迭代器、生成器及生成
    0基础学Python——类的单例模式、反射函数、记录类的创建个数、迭代器、生成器及生成器练习类的单例模式定义代码演示反射函数代码演示记录类的创建个数迭代器定义特点生成器定义特点写法生成器练习生成器生成1-无穷的数字生成器生成无穷个素数类的单例模式定义......
  • 0基础学Python——面向对象-可迭代、面向对象-迭代器、call方法、call方法实现装饰器
    0基础学Python——面向对象-可迭代、面向对象-迭代器、call方法、call方法实现装饰器、计算函数运行时间面向对象--可迭代实现方法面向对象--迭代器实现方法call方法作用call方法实现装饰器代码演示计算函数运行时间代码演示面向对象–可迭代把对象看做容器,存储......
  • 基于卷积神经网络的柑桔病害识别与防治系统,resnet50,mobilenet模型【pytorch框架+pytho
     更多目标检测和图像分类识别项目可看我主页其他文章功能演示:柑橘病害识别与防治系统,卷积神经网络,resnet50,mobilenet【pytorch框架,python源码】_哔哩哔哩_bilibili(一)简介基于卷积神经网络的柑桔病害识别与防治系是在pytorch框架下实现的,这是一个完整的项目,包括代码,数据集,......
  • intl 多语言国际化,自动补全locale,createNavigation ,createLocalizedPathnamesNaviga
     import{createNavigation}from'next-intl/navigation'exportconst{Link,redirect,usePathname,useRouter,getPathname}=createNavigation({locales,localePrefix,pathnames});页面的路由跳转和link 用这里导出的即可。 importcreateMiddlewaref......
  • Python 日志分级记录到不同文件的实现
    Python日志分级记录到不同文件的实现介绍如何使用Python的logging模块,按INFO、WARNING和ERROR级别将日志记录到不同的文件中。通过封装CustomLogger类,方便在项目中直接调用,简化日志管理。1.实现目标分级日志记录:将INFO、WARNING、ERROR级别的日志分别记录到不......
  • python球探数据分析
    Python球探数据分析入门指南作为一名刚入行的小白,你可能会对如何使用Python进行球探数据分析感到困惑。不用担心,这篇文章将为你提供一份详细的入门指南,帮助你逐步掌握这项技能。流程概览首先,让我们通过一个表格来了解整个数据分析的流程:步骤描述1获取数据2数据......
  • Leetcode刷题Python之3254.长度为K的子数组的能量值I
    提示:关于数组子问题的挑战,涉及能量值的计算。文章目录一、问题描述示例二、解题思路三、代码实现1.引入库2.代码解释总结一、问题描述给定一个长度为n的整数数组nums和一个正整数k,我们需要计算每个长度为k的子数组的能量值。能量值的定义如下:如果子数......
  • c++ 嵌入 python问题
     在嵌入式Python环境中,确保你的C++应用程序能够加载静态编译的Python解释器,需要设置Python解释器的搜索路径。以下是实现这一目标的步骤:1.设置环境变量你可以通过设置环境变量 PYTHONHOME 来指定Python解释器的根目录。这个环境变量告诉Python解释器去哪里查找......
  • 【毕业设计】基于深度学习的水族馆生物识别 人工智能 深度学习 目标检测 Python
    一、背景意义    随着水族馆的普及和水生生态保护意识的提高,生物识别技术在水族馆管理、教育和研究中的重要性日益凸显。传统的生物识别方法往往依赖于人工观察和专家判断,效率低、准确性差且容易受到主观因素影响。水族馆中涉及的生物种类繁多,包括鱼类、虾类、海洋哺乳......