CSDN竞赛第6期, 学python算法一个月的人都能拿下这套题

CSDN编程竞赛报名地址:https://edu.csdn.net/contest/detail/16

我刚开始接触算法的时候就是csdn第四期竞赛,45分蹭了个徽,然后就开始玩力扣,有空就去玩一下入门基础算法结构这些,然后我又准备网络的竞赛,就很少有时间玩力扣,就有时候看一下每日一题,而且大多不会。然后就到了这套题,怎么说呢python专场,用python写,就算没有学过算法结构的都会,但还是有一题错了点,忽略了两个条件,当时时间也不充裕,就没有跟进了。

前言/背景

这个竞赛玩了三期,第五期是最惨的,就十分太难了,题目都没读懂

参赛流程

直接点击最上面的链接就可以参加了

解题思路

 

下面就给大家聊一下我的思路

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

这道题,当时双指针写的太多了,所以就用双指针做的,哎写的太啰嗦,单for循环就好了

a = 0
f = ["ak","m4a1","skr"]
c = len(vector)
r,l=c-1,0
while l<=r:
    if vector[l] in f:
        a+=1
    if vector[r] in f:
        a+=1
    r-=1
    l+=1
result = a
return result

 

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

这道题,我写的也太啰嗦了,直接count函数查找最多次数。

s = set(vector)
a = 0
for i in s:
    if vector.count(i) > a:
        f=i
        a = vector.count(i)
result = f
return result

  

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

这道题,就是这个题我破防漏了前后不能改了

str = str.replace("at","@")
str = str.replace("dot",".")
result = str
return result

这个是我错误的,正确的应该是 

str = str[1:len(str)]
str = str[1:len(str)].replace("at","@")
str = str[1:len(str)].replace("dot",".")
result = str
return result

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

这道题,这个就更简单了吧动态窗口,而且还固定长度。

r,l = 1 , 0
p1,p2 = 0,0
while r<n:
    if arr[r] >=arr[r-1]:
        r+=1
    else:
        p1,p2=p2,max(p2,len(arr[l:r]))
        l=r
        r+=1
p1,p2=p2,max(p2,len(arr[l:r]))
result = p2
return result

  

经验心得

我觉得这个还是可以的,时而简单,时而难。主要是要吐槽的点他们的系统,真的垃圾,不说上次无法登入吧,就这一次,我按一次上一题就给我消失一次代码,我来来回回重写了五次第一题。但不过对于新手来说是比较友好的练手竞赛,相对于力控来说,实例没有这么多,而且比力控简单。很适合像我这样的小白。

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值