博客
关于我
2021/04/17 OJ每日一题 1695: 问题H 对称串找最值 python
阅读量:773 次
发布时间:2019-03-22

本文共 931 字,大约阅读时间需要 3 分钟。

为了解决这个问题,我们需要从给定的字符串中找到对称字符串,并找出它们中ASCII码值最大的那一个。

方法思路

  • 读取输入:首先读取输入数据,获取字符串的数量和每个字符串。
  • 筛选对称字符串:检查每个字符串是否是对称的。如果是,对称字符串就会被收集到一个列表中。
  • 计算最大ASCII码:对于每个对称字符串,计算其中的最大ASCII码值。
  • 找出最大值:比较所有对称字符串的最大ASCII码值,找出最大的那个对应的字符串并输出。
  • 这种方法确保我们能够高效地筛选出对称字符串,并在它们中找到ASCII码值最大的那个字符串。

    解决代码

    n = int(input())symmetric_list = []for _ in range(n):    s = input().strip()    if s == s[::-1]:        current_max = max(ord(c) for c in s)        symmetric_list.append((current_max, s))if not symmetric_list:    print("")else:    max_value = max(t[0] for t in symmetric_list)    for pair in symmetric_list:        if pair[0] == max_value:            print(pair[1])            break

    代码解释

  • 读取输入:首先读取整数n,表示输入的字符串数量。然后读取接下来的n行,分别存储每个字符串。
  • 筛选对称字符串:使用循环检查每个字符串是否对称。检查方法是将字符串反转后与原字符串比较。如果相同,则该字符串是对称的。
  • 计算字符ASCII码:对于每个对称字符串,计算其中每个字符的ASCII码值,并找出最大值。
  • 迭代找出最大值:通过遍历对称字符串列表,找到最大的ASCII码值并输出对应的字符串。如果出现多个相同的最大值,第一个遇到的会被打印,但由于问题要求不详细说明这种情况,通常第一个遇到的即可。
  • 这个方法确保了处理过程的高效性和准确性,能够正确找到满足条件的字符串。

    转载地址:http://dlewk.baihongyu.com/

    你可能感兴趣的文章
    netty——Handler和pipeline
    查看>>
    Vue输出HTML
    查看>>
    netty——黏包半包的解决方案、滑动窗口的概念
    查看>>
    Netty中Http客户端、服务端的编解码器
    查看>>
    Netty中使用WebSocket实现服务端与客户端的长连接通信发送消息
    查看>>
    Netty中实现多客户端连接与通信-以实现聊天室群聊功能为例(附代码下载)
    查看>>
    Netty中的组件是怎么交互的?
    查看>>
    Netty中集成Protobuf实现Java对象数据传递
    查看>>
    netty之 定长数据流处理数据粘包问题
    查看>>
    Netty事件注册机制深入解析
    查看>>
    netty代理
    查看>>
    Netty入门使用
    查看>>
    netty入门,入门代码执行流程,netty主要组件的理解
    查看>>
    Netty原理分析及实战(一)-同步阻塞模型(BIO)
    查看>>
    Netty原理分析及实战(三)-高可用服务端搭建
    查看>>
    Netty原理分析及实战(二)-同步非阻塞模型(NIO)
    查看>>
    Netty原理分析及实战(四)-客户端与服务端双向通信
    查看>>
    Netty发送JSON格式字符串数据
    查看>>
    Netty和Tomcat的区别已经性能对比
    查看>>
    Netty在IDEA中搭建HelloWorld服务端并对Netty执行流程与重要组件进行介绍
    查看>>