CSDN编程竞赛 ——— 第六期之python

2023-10-27

CSDN编程竞赛报名地址:https://edu.csdn.net/contest/detail/16
(请不要删掉此地址)

目录

前言/背景

大赛简介

参赛流程

参赛经历

解题思路

经验心得

资料分享


前言/背景

目前为止共参加过三次,不过没拿到什么排名。

大赛简介

大赛每月举行两次,基本上都在周末。

大赛奖励:

 

参赛流程

在规定时间内参加比赛,并在两个小时内提交答案。

参赛可以用Java、C、C++、C#、Python、JavaScript、lua、go等编程语言,使用语言十分自由。

解题思路 

1.严查枪火

class Solution:
    def __init__(self):
        return
    
    def solution(self, n, arr):
        result = 0
        forbidden = ['ak', 'm4a1', 'skr']  # 违禁的三种枪支名称
        for a in arr:
            if a in forbidden:
                result += 1
 
        return result

2.鬼画符门

class Solution:
    def __init__(self):
        return
    
    def solution(self, n, arr):
        result = 0
        d = {}
        for a in arr:
            if a in d:  # 该鬼画符之前出现过
                d[a] += 1
            else:  # 该鬼画符之前没有出现过
                d[a] = 1
        tmp = dict(sorted(d.items(), key=lambda x:x[1], reverse=True))
        result = list(tmp.keys())[0]
 
        return result

 3.邮箱格式转换

class Solution:
    def __init__(self):
        return
    
    def solution(self, s):
        result = ''
        flag_at = False  # at的辅助判断标签
        # dot 的转换
        result = s.split('dot')
        result = '.'.join(result)
        if result[0] == '.':
            result = 'dot' + result[1:]
        if result[-1] == '.':
            result = result[:-1] + 'dot'
 
        # at 的转换
        for i in range(1, len(result)-1): # 排除头尾的at
            if flag_at:  # 前一个字符是'a'
                if result[i] == 't':
                    result = result[:i-1] + '@' + result[i+1:]
                    break
                else:
                    flag_at = False
            else:
                if result[i] == 'a':
                    flag_at = True   
 
        return result

 4.最长递增的连续子数组长度

class Solution:
    def __init__(self):
        return
    
    def solution(self, n, arr):
        result = 1
        tmp = 1
        for i in range(1, n):
            if arr[i] <= arr[i-1]:  # i开始非递增
                result = max(tmp, result)
                tmp = 1
            else:
                tmp += 1
        result = max(tmp, result)
 
        return result

 

经验心得

这次的比赛题目比前几次简单的多,不过由于对编程语言不够熟练导致仍花费很多时间去思考构思解题逻辑,唯有手熟才能做到更快更好。

资料分享

在有一定的编程基础上坚持参加csdn的每日一题,用很少的时间提升编程水平。

每日一练地址:https://edu.csdn.net/dailycode

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CSDN编程竞赛 ——— 第六期之python 的相关文章

  • 如何恢复tensorflow inceptions检查点文件(ckpt)?

    I have inception resnet v2 2016 08 30 ckpt文件是预先训练的初始模型 我想使用恢复这个模型 saver restore sess ckpt filename 但为此 我将需要编写训练该模型时使用的变量
  • 在 Python 中解析 TCL 列表

    我需要在双括号上拆分以空格分隔的 TCL 列表 例如 OUTPUT 172 25 50 10 01 01 Ethernet 172 25 50 10 01 02 Ethernet Traffic Item 1 172 25 50 10 01
  • 在 Celery 任务中调用 Google Cloud API 永远不会返回

    我正在尝试拨打外部电话Google Cloud Natural Language API从一个内Celery任务 使用google cloud python包裹 问题是对 API 的调用永远不会返回 挂起 celery task def g
  • PyQt 使用 ctrl+Enter 触发按钮

    我正在尝试在我的应用程序中触发 确定 按钮 我当前尝试的代码是这样的 self okPushButton setShortcut ctrl Enter 然而 它不起作用 这是有道理的 我尝试查找一些按键序列here http ftp ics
  • 打印数字时添加千位分隔符[重复]

    这个问题在这里已经有答案了 我真的不知道这个问题的 名称 所以它可能是一个不正确的标题 但问题很简单 如果我有一个数字 例如 number 23543 second 68471243 我想要它使print 像这样 23 54368 471
  • 矩形函数的数值傅里叶变换

    本文的目的是通过一个众所周知的分析傅里叶变换示例来正确理解 Python 或 Matlab 上的数值傅里叶变换 为此 我选择矩形函数 这里报告了它的解析表达式及其傅立叶变换https en wikipedia org wiki Rectan
  • GUI(输入和输出矩阵)?

    我需要创建一个 GUI 将数据输入到矩阵或表格中并读取此表单数据 完美的解决方案是限制输入表单仅允许float 例如 A 1 02 0 25 0 30 0 515 0 41 1 13 0 15 1 555 0 25 0 14 1 21 2
  • 如何将特定范围内的标量添加到 numpy 数组?

    有没有一种更简单 更节省内存的方法可以单独在 numpy 中执行以下操作 import numpy as np ar np array a l r ar c a a 0 l ar tolist a r 它可能看起来很原始 但它涉及获取给定数
  • 为什么一旦我离开内置的运行服务器,Django 就无法找到我的管理媒体文件?

    当我使用内置的简单服务器时 一切正常 管理界面很漂亮 python manage py runserver 但是 当我尝试使用 wsgi 服务器为我的应用程序提供服务时django core handlers wsgi WSGIHandle
  • 使用 Python Oauthlib 通过服务帐户验证 Google API

    我不想使用适用于 Python 的 Google API 客户端库 但仍想使用 Python 访问 Google APIOauthlib https github com idan oauthlib 创建服务帐户后谷歌开发者控制台 http
  • 导入错误:没有名为flask.ext.login的模块

    我的flask login 模块有问题 我已经成功安装了flask login模块 另外 从命令提示符我可以轻松运行此脚本 不会出现错误 Python 2 7 r27 82525 Jul 4 2010 07 43 08 MSC v 1500
  • 无法导入 langchain.agents.load_tools

    我正在尝试使用 LangChain Agents 但无法导入 load tools 版本 langchain 0 0 27 我尝试过这些 from langchain agents import initialize agent from
  • 未知错误:Chrome 无法启动:异常退出

    当我使用 chromedriver 对 Selenium 运行测试时 出现此错误 selenium common exceptions WebDriverException Message unknown error Chrome fail
  • Python - 如何确定解析的 XML 元素的层次结构级别?

    我正在尝试使用 Python 解析 XML 文件中具有特定标记的元素并生成输出 excel 文档 该文档将包含元素并保留其层次结构 我的问题是我无法弄清楚每个元素 解析器在其上迭代 的嵌套深度 XML 示例摘录 3 个元素 它们可以任意嵌套
  • 将 Matlab 的 datenum 格式转换为 Python

    我刚刚开始从 Matlab 迁移到 Python 2 7 在读取 mat 文件时遇到一些问题 时间信息以 Matlab 的日期数字格式存储 对于那些不熟悉它的人 日期序列号将日历日期表示为自固定基准日期以来已经过去的天数 在 MATLAB
  • 如何使用 Python 3 检查目录是否包含文件

    我到处寻找这个答案但找不到 我正在尝试编写一个脚本来搜索特定的子文件夹 然后检查它是否包含任何文件 如果包含 则写出该文件夹的路径 我已经弄清楚了子文件夹搜索部分 但检查文件却难倒了我 我发现了有关如何检查文件夹是否为空的多个建议 并且我尝
  • 在 Google App Engine 中,如何避免创建具有相同属性的重复实体?

    我正在尝试添加一个事务 以避免创建具有相同属性的两个实体 在我的应用程序中 每次看到新的 Google 用户登录时 我都会创建一个新的播放器 当新的 Google 用户在几毫秒内进行多个 json 调用时 我当前的实现偶尔会创建重复的播放器
  • 等待子进程使用 os.system

    我用了很多os system在 for 循环内调用创建后台进程 如何等待所有后台进程结束 os wait告诉我没有子进程 ps 我使用的是Solaris 这是我的代码 usr bin python import subprocess imp
  • 在virtualenv中下载sqlite3

    我正在尝试使用命令创建应用程序python3 manage py startapp webapp但我收到一条错误消息 django core exceptions ImproperlyConfigured 加载时出错 pysqlite2 或
  • pytest找不到模块[重复]

    这个问题在这里已经有答案了 我正在关注pytest 良好实践 https docs pytest org en latest explanation goodpractices html test discovery或者至少我认为我是 但是

随机推荐

  • miui删除内置不卡米教程_[MIUI玩机技巧43] Shortcut功能快速提取Apk

    今天Flashcer本期给大家分享2个玩法 1 利用MIUI 11的Shortcut功能快速提取非系统应用的安装包文件 用户应用Apk 2 利用MIUI 11的Shortcut功能快速分享非系统应用的安装包文件 用户应用Apk 通过即时通讯
  • RoaringBitmap和Bitmap的区别与原理

    背景 此文只针对应用于实时数仓 离线数仓领域的标签圈选问题 以企业为例 企业和标签之间一般是多对多的关系 这种情况下对于计算不同标签下的企业数量 或者查询不同企业对应的标签会有较大的性能压力 因此使用Bitmap或者RoaringBitma
  • Python + Pyqt5 使用listWidget设置Item的两种方法

    方法一 addItems 不用分别设置每个Item的显示样式 self ui listWidget pdfList addItems list pdfList DF 文件名 添加Item 列表中有多少个数据 就有多少个Item self u
  • java使用world模板动态生成PDF文件

    根据项目需求 需要用到一个功能 根据页面参数需要动态的生成一个world 并将world生成两份PDF文件 一份正式文件 一份临时的电子文件 带有二维码 扫描可以下载正式文件的电子版本 同时上传到文件存储服务器minio上 下面介绍具体的实
  • Python 生成器原理详解

    点击上方蓝字 快速关注我们 翻译 你逗比 segmentfault com a 1190000011330511 如有好文章投稿 请点击 这里了解详情 这篇文章是对 500 Lines or Less 一书中高效爬虫一章的部分翻译 原文 H
  • 旋转数组的最小值(二分法)

    题目描述 把一个数组最开始的若干个元素搬到数组的末尾 我们称之为数组的旋转 输入一个非减排序的数组的一个旋转 输出旋转数组的最小元素 例如数组 3 4 5 1 2 为 1 2 3 4 5 的一个旋转 该数组的最小值为1 NOTE 给出的所有
  • 一个抓取阿里云GEOJSON地图区域数据的NODEJS脚本

    中国的区域划分大致是这么个结构 中国 gt 省 gt 市 gt 区 gt 县 gt 镇 gt 乡 对于我们一般的开发者或者中小型企业 要我们自己来收集这些区域信息 显然是不可能的 这个时候我们就得借助一些成熟的地图数据 比如百度地图 高德地
  • 增强现实python

    本博文用来记录使用python实现增强现实 增强现实技术 即实时地计算摄影机影像的位置及角度并加上相应图像 视频 3D模型的技术 这种技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动 主要工作 实现动态的放置虚拟模型 本文实现了在自己上
  • IHS 禁用SSLV2 启用SSLV3

    昨天完成了PCI第二季度的ASV扫描 也扫出几个问题 主是IHS SSL加密比较弱 1 PCI ASV扫描出来的两个问题 1 38140 SSL Server Supports Weak Encryption Vulnerability 2
  • FastReport VCL 6.7.6 For Delphi10.4.2 安装图解教程

    FastReport VCL 6 7 6 For Delphi10 4 2 安装图解教程 Fastreport控件的安装 一步一步按说明来 不难搞 1 先关闭Delphi 2 右键 以管理员身份运行 对应版本的recompile exe 2
  • 图片情感分析(2):图像情感分析模型

    图像情感分析模型是基于卷积神经网络建立的 卷积神经网络的构建用了keras库 具体代码实现以及代码运行在下一篇贴出 模型包括3个卷积层 2个池化层 4个激活函数层 2个Dropout层 2个全连接层 1个Flatten层和最终分类层 图片初
  • Java创建数组的四种方式

    1 使用默认值来初始化 语法 数组元素类型 数组名称 new 数组元素类型 数组长度 EG int nums new int 5 创建了一个类型为int 名字为nums 长度为5的数组 2 先声明一个数组 再给值 语法 数据元素类型 数组名
  • 37 年来首次 FSF 允许非正式会员提名董事会候选人;Linux RamFS 文件系统移植到 Rust;Git 2.35 发布

    整理 宋彤彤 责编 屠敏 开源吞噬世界的趋势下 借助开源软件 基于开源协议 任何人都可以得到项目的源代码 加以学习 修改 甚至是重新分发 关注 开源日报 一文速览国内外今日的开源大事件吧 一分钟速览新闻点 成立 37 年来首次 FSF 允许
  • Spring boot配置logback日志打印到指定路径文件

    在实际项目开发中 一般都是使用log打印日志到指定路径 生成文件 而平时使用的System out pring 只能输出日志到控制台 当我们把项目打成war包部署到服务器上 会有不用的用户使用我们的应用 这个时候如果一个客户端出现了问题 那
  • 断弧图片数据集 数据集扩充 增强

    图像处理可以用到的数据 这是原始图像总共1356张 对应的XML文件是它的标签 此数据可以用来做图像目标检测 YOLOv4 v3 SSD faster rcnn 数据集增广 数据集扩充 数据集增强的常用方法与软件 https blog cs
  • 修改pycharm缓存文件路径

    Pycharm在使用过程中 Pycharm会生成大量缓存文件 而这些缓存文件默认存储在C盘的用户目录里面 导致C盘空间被占用 目标 将C盘用户目录下的 Pycharm2019转移到D盘 D cache pycharm 文件夹下 如下图 解决
  • div设置边角小三角形

    div class leftmsg div div class rightmsg div
  • 使用NCNN的INT8量化方式进行推理

    本文以NCNN框架为例 实践量化在推理中的巨大作用 加深对神经网络量化的理解 NCNN当前版本只支对称量化 下面以INT8精度为例介绍NCNN的量化使用方式 编译NCNN mkdir build cd build cmake 进入到buil
  • Java面试--常见集合

    Java面试 基础 ArrayList ArrayList的扩容机制 FailFast和FailSafe ArrayList和LinkedList HashMap 介绍一下put方法流程 1 7和1 8有何不同 负载因子默认值为何是0 75
  • CSDN编程竞赛 ——— 第六期之python

    CSDN编程竞赛报名地址 https edu csdn net contest detail 16 请不要删掉此地址 目录 前言 背景 大赛简介 参赛流程 参赛经历 解题思路 经验心得 资料分享 前言 背景 目前为止共参加过三次 不过没拿到