csdn程序竞赛第六期-python题解

简介: csdn程序竞赛第六期-python题解

前言/背景


第一次参加这个竞赛,记录一下比赛题解,希望和你一起进步


解题思路


1、严查枪火


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

第一行给定一个数字n

接下来n行每行一个字符串

这道题我一开始以为是从给定的字符串中筛选违禁字符,后来发现只要判断给定的字符是不是违禁字符就可以了。

1. def solution(self, n, vector):
2.         result = None
3. # TODO: 请在此编写代码
4.         cnt=0
5. for i in vector:
6. # print(i)
7. # print(i.find("s"))
8. if  i=='ak'  or i=='m4a1' or i=='skr'  :
9.                 cnt += 1
10.         result=cnt
11. return result

2、鬼画符门


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

第一行给定一个数字n

接下来n行每行一个字符串

这道题只要输出出现次数最多的那个字符串就可以了

1. def solution(self, n, vector):
2.         result = None
3. # TODO: 请在此编写代码
4. 
5.         ans=[]
6. for i in vector:
7.             ans.append(vector.count(i))
8.         result=vector[ans.index(max(ans))]
9. 
10. return result

3、收件邮箱


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

做一些逻辑判断即可

1. string = "atmxyatoxcoderdotcom"
2. 
3. string = string.replace('dot','.')
4. flag=0
5. if string[0:2]=='at' :
6.     string=string[2:len(string)].replace('at','@')
7.     string='at'+string
8.     flag=1
9. if string[-2:]=='at':
10.     string = string[0:len(string)-2].replace('at', '@')
11.     string = string +  'at'
12.     flag = 1
13. 
14. if flag:
15.     string = string[2:len(string)-2].replace('at','@')
16.     string = 'at' + string + 'at'
17. 
18. print(string)

4、题目名称


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

1. def findLengthOfLCIS(self, nums):
2.     n = len(nums)
3.     start = 0
4.     ans = 0
5. 
6. for i in range(n):
7. if i > 0 and nums[i] <= nums[i - 1]:
8.             start = i
9. 
10.         ans = max(ans, i - start + 1)
11. 
12. print(ans)
13. findLengthOfLCIS(nums)
目录
相关文章
|
18小时前
|
存储 人工智能 测试技术
python自动化测试实战 —— CSDN的Web页面自动化测试
python自动化测试实战 —— CSDN的Web页面自动化测试
16 0
|
18小时前
|
Python
【Python进阶(二)】——程序调试方法
【Python进阶(二)】——程序调试方法
|
18小时前
|
Python
Python的全局变量作用于整个程序,生命周期与程序相同,而局部变量仅限函数内部使用,随函数执行结束而销毁。
【5月更文挑战第11天】Python的全局变量作用于整个程序,生命周期与程序相同,而局部变量仅限函数内部使用,随函数执行结束而销毁。在函数内部修改全局变量需用`global`关键字声明,否则会创建新局部变量。
16 2
|
18小时前
|
消息中间件 程序员 调度
Python并发编程:利用多线程提升程序性能
本文探讨了Python中的并发编程技术,重点介绍了如何利用多线程提升程序性能。通过分析多线程的原理和实现方式,以及线程间的通信和同步方法,读者可以了解如何在Python中编写高效的并发程序,提升程序的执行效率和响应速度。
|
18小时前
|
缓存 Shell 开发工具
[oeasy]python0016_在vim中直接运行python程序
在 Vim 编辑器中,可以通过`:!`命令来执行外部程序,例如`:!python3 oeasy.py`来运行Python程序。如果想在不退出Vim的情况下运行当前编辑的Python文件,可以使用`%`符号代表当前文件名,所以`:!python3 %`同样能运行程序。此外,可以使用`|`符号连续执行命令,例如`:w|!python3 %`会先保存文件(`w`)然后运行Python程序。这样,就可以在不离开Vim的情况下完成编辑、保存和运行Python程序的流程。
18 0
|
18小时前
|
监控 开发者 Python
Python中记录程序报错信息的实践指南
Python中记录程序报错信息的实践指南
15 1
|
18小时前
|
监控 测试技术 持续交付
Python自动化测试代理程序可用性
总之,通过编写测试用例、自动化测试和设置监控系统,您可以确保Python自动化测试代理程序的可用性,并及时发现和解决问题。这有助于提供更可靠和高性能的代理服务。
17 4
|
18小时前
|
监控 测试技术 API
Python Web应用程序构建
【4月更文挑战第11天】Python Web开发涉及多种框架,如Django、Flask和FastAPI,选择合适框架是成功的关键。示例展示了使用Flask创建简单Web应用,以及如何使用ORM(如SQLAlchemy)管理数据库。
1952 4
|
18小时前
|
人工智能 数据库 开发者
Python中的atexit模块:优雅地处理程序退出
Python中的atexit模块:优雅地处理程序退出
14 3
|
18小时前
|
数据采集 JSON 数据可视化
python_selenuim获取csdn新星赛道选手所在城市用echarts地图显示
python_selenuim获取csdn新星赛道选手所在城市用echarts地图显示
7 1