PTA 1092 最好吃的月饼(Python3)

月饼是久负盛名的中国传统糕点之一,自唐朝以来,已经发展出几百品种。

若想评比出一种“最好吃”的月饼,那势必在吃货界引发一场腥风血雨…… 在这里我们用数字说话,给出全国各地各种月饼的销量,要求你从中找出销量冠军,认定为最好吃的月饼。

输入格式:

输入首先给出两个正整数 N(≤1000)和 M(≤100),分别为月饼的种类数(于是默认月饼种类从 1 到 N 编号)和参与统计的城市数量。

接下来 M 行,每行给出 N 个非负整数(均不超过 1 百万),其中第 i 个整数为第 i 种月饼的销量(块)。数字间以空格分隔。

输出格式:

在第一行中输出最大销量,第二行输出销量最大的月饼的种类编号。如果冠军不唯一,则按编号递增顺序输出并列冠军。数字间以 1 个空格分隔,行首尾不得有多余空格。

输入样例:

5 3
1001 992 0 233 6
8 0 2018 0 2008
36 18 0 1024 4

输出样例:

2018
3 5

提交结果:

代码:

a, b = map(int, input().split())
dict1 = {}
l = []
for i in range(a):
    dict1[i] = 0
for i in range(b):
    data = input().split()
    for j in range(a):
        dict1[j] += int(data[j])
dict2 = sorted(dict1.items(), key=lambda x: -x[1])
max1 = dict2[0][1]
print(max1)
for i in dict2:
    if i[1] == max1:
        l.append(str(i[0] + 1))
print(' '.join(l))
### 团体天梯赛 PTA Python3 题目及解题思路 #### 解析与背景 团体程序设计天梯赛(PTA)是一个面向高校学生的编程竞赛平台,其中涉及大量算法和数据结构的基础题目。对于Python3选手而言,掌握基本的数据处理、字符串操作以及简单的数学逻辑是必备技能。 以下是两道经典的PTA Python3题目及其解决方案: --- #### **L1-046 整除光棍** 这是一道典型的模拟计算问题,目标是从小的全由`1`组成的数字开始寻找能够被输入整数`x`整除的第一个数值,并输出商和该数字长度。 ##### 实现代码 ```python if __name__ == "__main__": x = int(input()) i = 1 while True: if i % x == 0: print(int(i // x), len(str(i))) break i = i * 10 + 1 # 构造下一个“光棍”数 ``` 上述代码通过不断构造形如`1, 11, 111...`这样的“光棍”数来测试其能否被`x`整除[^1]。当找到符合条件的数时,打印对应的商和当前“光棍”数的位数。 --- #### **L1-003 个位数统计** 此题要求对任意给定的一个正整数N,统计每一位数字出现的频率并按顺序输出结果。 ##### 实现代码 ```python from collections import Counter n = input().strip() counter = Counter(n) for digit in range(10): count = counter.get(str(digit), 0) if count != 0 or digit == 9: # 输出条件控制 print(f"{digit} : {count}") ``` 这段代码利用了`collections.Counter`模块高效地完成字符计数工作[^2]。它遍历从`0`到`9`的所有可能数字,并依据实际统计数据决定是否显示对应项的结果。 --- #### 准备方法建议 为了更好地应对这类比赛中的挑战,可以从以下几个方面着手准备: 1. 夯实基础语法:熟悉Python内置函数的应用场景; 2. 练习常见算法模板:比如排序、查找等经典模型; 3. 提升调试能力:学会快速定位错误源并通过修改完善自己的解答方案。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

敲代码的小柯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值