前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CSDN 编程竞赛·第六期总结

CSDN 编程竞赛·第六期总结

作者头像
小嗷犬
发布2022-11-15 15:45:40
1530
发布2022-11-15 15:45:40
举报
文章被收录于专栏:小嗷犬的CSDN文章

CSDN 编程竞赛·第六期总结

CSDN 编程竞赛·第六期 为笔者参加的第二次 CSDN 编程竞赛,本期题目难度过低,所以这期就不分析思路了,简单记录一下自己的题解吧。

分数
分数

1.严查枪火

题目描述: X国最近开始严管枪火。 像是“ak”,“m4a1”,“skr”。都是明令禁止的。 现在小Q查获了一批违禁物品其中部分是枪支。 小Q想知道自己需要按照私藏枪火来关押多少人。 (只有以上三种枪被视为违法)。

笔者的题解:

代码语言:javascript
复制
class Solution:
    def __init__(self) -> None:
        pass
    def solution(self, n, vector):
        result = 0
        for i in vector:
            if i in ('ak', 'm4a1', 'skr'):
                result += 1
        return result

if __name__ == "__main__":
    n = int(input().strip())
    vector = []
    for i in range(n):
        vector.append(input().strip())
    s = Solution()
    result = s.solution(n, vector)
    print(result)

2.鬼画符门

题目描述: 鬼画符门,每年都会统计自己宗门鬼画符消耗的数量,往年一直是大师兄管理, 但是这次鬼艺接手了, 你能帮鬼艺写一个 程序统计每年消耗数量最多的鬼画符吗?

笔者的题解:

代码语言:javascript
复制
class Solution:
    def __init__(self) -> None:
        pass
    def solution(self, n, vector):
        result = None
        a = {}
        for i in vector:
            if i in a.keys():
                a[i]+=1
            else:
                a[i]=1
        b=list(a.items())
        b.sort(key=lambda x:x[1])
        result = b[-1][0]
        return result

if __name__ == "__main__":
    n = int(input().strip())
    vector = []
    for i in range(n):
        vector.append(input().strip())
    s = Solution()
    result = s.solution(n, vector)
    print(result)

3.收件邮箱

题目描述: 已知字符串str,str表示邮箱的不标准格式。 其中”.”会被记录成”dot”,”@”记录成”at”。 写一个程序将str转化成可用 的邮箱格式。(可用格式中字符串中除了开头结尾所有”dot”,都会被转换,”at”只会被转化一次,开头结尾的不转化)

笔者的题解:

代码语言:javascript
复制
class Solution:
    def __init__(self) -> None:
        pass
    def solution(self, str):
        result = None
        if len(str)<4:
            return str
        s1 = str[1:-1].replace('dot','.')
        a = s1.find('at')
        if a != -1:
            s1 = s1[0:a] + '@' + s1[a+2:]
        result = str[0] + s1 + str[-1]
        return result

if __name__ == "__main__":
    str = input().strip()
    s = Solution()
    result = s.solution(str)
    print(result)

4.最长递增的区间长度

题目描述: 给一个无序数组,求最长递增的区间长度。如:[5,2,3,8,1,9] 最长区间 2,3,8 长度为 3。

笔者的题解:

代码语言:javascript
复制
class Solution:
    def __init__(self) -> None:
        pass
    def solution(self, n, arr):
        result = 0
        cnt = 1
        for i in range(1,n):
            if arr[i]>arr[i-1]:
                cnt += 1
            else:
                if result < cnt:
                    result = cnt
                cnt = 1
        if cnt > result:
            result = cnt
        return result

if __name__ == "__main__":
    n = int(input().strip())
    arr = [int(item) for item in input().strip().split()]
    s = Solution()
    result = s.solution(n, arr)
    print(result)

以上就是第六期CSDN编程竞赛的全部内容了,如有错误,请读者指正。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-09-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • CSDN 编程竞赛·第六期总结
  • 1.严查枪火
  • 2.鬼画符门
  • 3.收件邮箱
  • 4.最长递增的区间长度
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档