蓝桥真题——卡片

题目

卡片

标签:填空题 2021 省赛

代码

# 方法1
import os
import sys

# 请在此输入您的代码
num = ''
i = 1

while num.count('1')<2021:
  num = ''.join((num,str(i)))
  i += 1

print(i-1)
# 方法2(推荐)
import os
import sys

# 请在此输入您的代码
count = 0
i = 1

while count<2021:
    count += str(i).count('1')
    i += 1

print(i-1)

算法思想

从 1 开始消耗卡片拼数字,求当消耗完 2021 张 0-9 的卡片后,刚好拼到几。

1-10 共消耗了 2 张 1,其余数字各 1 张,所以 1 是最先被消耗完的,故以 1 的数量作为循环的判别标准。

笔记

在此处我第一次想到,字符串是不是列表? 经查阅资料,在很多语言中,字符串的本质都是 字符列表

这代表着它有着和列表相似的特性,并可以使用列表的一些方法。但这并不等于完全相同,所以有一些针对列表的操作并不能对字符串进行使用(具体请查阅参考资料)。

参考资料

Python——字符串、列表

本文转载于网络 如有侵权请联系删除

相关文章

  • 第八十期:进阶没有指南

    进阶其实没有指南程序猿都有一个相同的问题是,工作个一两年或者两三年,就会发现似乎就到了自己的瓶颈期。好像自己什么都会,但是有感觉自己什么都不会。然后就会去找一些东西看,试图去突破这种瓶颈。我之前也有这种感觉,会去找很多进阶指南去看。指南一般都很详细,告诉你你需要打好基础知识,掌握核心概念,当然了,这些基础知识大部分是和面试相关的。于是乎自己花了大把的时间去看这些分散的知识点,找一些高频的面试题,去看,去猜,去背这些知识点。这种方法有用吗?有用,但是不一定适合每一个人。因为我们所看到的进阶指南,只是分享者自己总结的自己的知识。分享者有可能是真的自己总结的内容,也有可能是在别的地方看到的别的人总结的知识点。并且这些知识点很多,很碎。理论上很少人会真的静下来认真的去学习里面的内容。除此之外,人的注意力都是分时段的,太多太碎的内容一下子聚集在一起。有可能真的会让人感觉到焦虑,不由的发一声感叹:别更新了,学不动了!这时候,指南就真的变成指难了。那么,没有指南就没法进阶了吗?答案当然是否定的。进阶不是说我今天看了一篇文章,学了一个新的知识点,就真的进阶了。真正的进阶是思维的跨越。当你不再为某个具体

  • Mysql专栏 - 缓冲池的内部结构(二)

    Mysql专栏-缓冲池的内部结构(二)前言 这是mysql专栏的第四篇,上一个小节我们了解了如何通过flushlist存储所有的脏页数据,这一节我们来继续介绍缓冲池的内部结构LRU链表。概述 缓冲池的大小是固定的,缓冲池当然不是永远都驻留在缓冲池的,但是空闲缓冲页不够情况下如何处理呢?本节将会讨论缓冲池重要的淘汰机制:LRU的淘汰机制,后续会介绍mysql的冷热数据分离特性,最后将给出几个思考题回顾整个内容。缓存页的刷新机制-LRU淘汰缓存页Bufferpool中的缓存页不够怎么办? 经过上一节的讨论,当执行器发来了增删改查的请求的时候会从磁盘文件读取对应的数据块到缓冲池当中,之前提到过缓冲池不是无限的,默认情况下最多只有「128m」,一旦所有的缓存页都被加载就意味着freelist内部没有空闲的缓存页,当所有的空闲缓存页被分配完了,这意味着缓冲池已经无法再分配缓冲页了,但是我们还想把数据页加载到缓存池怎么办? 如果我们想要加载新的缓存页也十分简单,只要淘汰一些不常用的缓存页即可。「淘汰那个缓存,淘汰谁?」 淘汰缓冲页就是把缓冲池里面的某个缓冲页刷新到磁盘(必须先刷新数据到磁盘)然后把

  • 在 Linux 最小化安装中设置互联网

    在最小化服务器安装中,设置互联网或网络是非常容易的。在本指南中,我们将解释如何在CentOS、RHEL、RockyLinux最小安装中设置互联网或网络。当你刚刚完成任何服务器发行版的最小化安装时,你没有任何图形界面或桌面环境可以用于设置你的网络或互联网。因此,当你只能使用终端时,了解如何设置联网是很重要的。NetworkManager以及systemd服务为完成这项工作提供了必要的工具。以下是具体使用方法。在CentOS、RHEL、RockyLinux最小化安装中设置互联网完成安装后,启动服务器终端。理想情况下,你应该会看到提示符。使用root或admin账户登录。然后,首先尝试使用nmcli检查网络接口的状态和细节。nmcli是一个控制NetworkManager服务的命令行工具。使用以下命令进行检查。nmclidevicestatus复制这将显示设备名称、状态等。 运行工具nmtui来配置网络接口。nmtui是NetworkManager工具的一部分,它为你提供了一个漂亮的用户界面来配置网络。这是NetworkManager-tui包的一部分,当你完成最小服务器的安装时它应该默认安

  • 华为交换机stp原理透析及实战 | 收藏

    生成树协议stp,快速生成树协议rstp,多实例生成树协议mstp,目前华为交换机默认使用多实例生成树mstp。一、STP中的选举步骤和端口状态选举步骤:选举ROOT-SW根网桥选举根端口RP(rootport)选举指定端口DP(Designateport)其余的端口被Block阻塞 stp选举时候端口状态(15s到listening,选举就结束了):二、STP选举过程A、确定RootBridge-通过BID的比较判决。在同一个二层网络中需要选举,即一个广播域内要选举,并且一个网络中只能选举一台根交换机(ROOT)。Birdge-ID中优先级数字小的为根交换机,优先级范围为0-65535,如果优先级相同,则MAC地址小的为根交换机。B、所有非根桥交换机选举RP(RootPort)-每个非根桥有且只有一个RP(主要作用是负责接收并且监听根桥的BPDU)1、比较每个端口到达Root的Cost,具有最小Cost的端口成为RP端口的,开销是指本端口收到一个对端网桥的BPDU以后,累加本端口的COST之后的总路径开销。cost相同比较SenderBID2、比较SendBID,收到BPDU中Sen

  • Flat风格的Qml进度条

    基于Qml的ProgressBar控件修改而成。进度条代码importQtQuick2.0 importQtQuick.Controls2.0 ProgressBar{ id:root propertycolorcolor:"#3498DB" value:0.5 background:Rectangle{ implicitWidth:200 implicitHeight:12 color:"#EBEDEF" } contentItem:Item{ implicitWidth:root.background.implicitWidth implicitHeight:root.background.implicitHeight Rectangle{ width:root.visualPosition*parent.width height:parent.height color:root.color } } } 复制进度条样式代码GridLayout{ width:root.width rows:3 columns:3 Repeater

  • Docker 常用命令速查手册

    记录一下docker的日常使用命令,本文主要针对linux+mac操作系统而言,window是否适用不太确定,谨慎使用<!--more-->1.docker进程docker进程启动、停止、重启,常见的三种case#启动docker servicedockerstart #关机docker servicedockerstop #重启docker servicedockerrestart复制2.镜像操作镜像作为容器执行的前提条件,一般需要掌握的几个命令无非是搜索,下载,删除,创建#镜像列表 dockerimages #检索镜像,从镜像仓库中检索 dockersearchxxx #下载镜像 dockerpullxxx #删除镜像 dockerrmixxx复制关于创建镜像,有必要稍微详细一点点#通过容器创建镜像 dockercommit-m="首次提交"-a="一灰灰Blog"dd85eb055fe8yh/centos:v0.1 #镜像历史查询 dockerhistoryyh/centos复制上面的几个参数进行说明-m和git的提交一样,后面

  • 聊聊Nginx

    Nginx简介Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好Nginx应用场景静态资源Web服务内容分发网络浏览器缓存跨站访问防盗链代理服务负载均衡服务Nginx安装(centos)安装教程:http://nginx.org/en/linux_packages.html#stablenginx是由C语言写,所以需要在centos系统中安装相关解析库。yum-yinstallmakezlibzlib-develgcc-c++libtoolopensslopenssl-devel复制步骤vim/etc/yum.repos.d/nginx.repo复制输入:可以理解为Nginx的下载地址name=nginxrepo baseurl=http://nginx.org/packages/OS/OSRELEASE/$basearch/ gpgcheck=0 enabled=1复制安装 yuminstallnginx 控制台

  • 嵌入式Linux的网络连接管理

    连接管理器(ConnMan)是一个连接管理守护进程,用于管理运行Linux操作系统中设备的互联网连接。它以快速、连贯、同步的方式对不断变化的网络条件提供了低内存消耗。 ConnMan拥有各种插件,是一个完全模块化的系统,可以扩展支持各种有线或无线技术,允许对各种用例进行简单的适配和修改。例如DHCP和DNS这样的配置方法就是使用插件实现的。所有的应用程序都使用D-Bus来与ConnMan通信,与嵌入式Yocto构建系统一起使用,是GENIVI规范的一部分。 ConnMan遵循GPLv2.0许可,英特尔是该项目的主要贡献者。其内部架构如下: 图1 功能特性 以下特性嵌入到ConnMan中: 通用插件基础结构设备和网络抽象(带有基本存储支持)IPv4,IPv4-LL(link-local)和DHCP以及IPv6,DHCPv6,V6到V4的隧道等高级路由和DNS配置内置DNS代理和智能缓存内置的WISPr热点登录和门户检测时区配置(手动和自动的NTP)代理处理(手动和自动的WPAD)网络支持(USB,蓝牙和WiFiAP模式)详细统计处理(家居及漫游)可以启用各种插件来支持网络: 以太网插件W

  • 黑板上的知识抵不上桌肚下的故事,到《Pixel Ripped 1989》中去找找童年的自己吧!

    《像素撕裂1989(PixelRipped1989)》是一款由PixelRippedInc.打造的,充满年代感的怀旧画风动作冒险VR游戏。从技术上讲,这是一款“游戏中的游戏”。为了更好的分辨这两个游戏世界,我们把下文里主角的掌上游戏机(如GameBoy等,以下均简称掌机)中的世界称为游戏世界,主角所在的世界称为现实世界。 视频内容20世纪80年代是掌机风靡的年代,孩子们在掌机的世界里体验不同的人生,幻想着能拯救世界,并对此乐此不疲。而《PixelRipped1989》讲述的,也正是一个和掌机有关的故事。《PixelRipped1989》以玩家跟随游戏世界里的主角Dot去冒险,作为开始。但没过多久,Dot所在的游戏世界,就被一个“拥有从游戏世界闯入现实世界能力”的邪恶妖精CyblinLord给摧毁了。而CyblinLord的最终目的也由此暴露出来,即其欲融合游戏世界和现实世界,进而称霸这两个世界。嗯,BOSS已经开始作妖,真正的主角也是时候站出来了。当当当,瞧!就是她——Nicola,一位迷恋电子游戏的小女孩。玩家需要通过Nicola手中名为“GearKid”的掌机,来帮助游戏世界里的主

  • 犀牛Rhino4.0安装教程

    Rhino是美国RobertMcNeel&Assoc开发的PC上强大的专业3D造型软件,它可以广泛地应用于三维动画制作、工业制造、科学研究以及机械设计等领域。它能轻易整合3DSMAX与Softimage的模型功能部分,对要求精细、弹性与复杂的3DNURBS模型,有点石成金的效能。能输出obj、DXF、IGES、STL、3dm等不同格式,并适用于几乎所有3D软件,尤其对增加整个3D工作团队的模型生产力有明显效果。•可以在公众号后台回复『031』或『Rhino』获取下载链接并附赠一套基础教程。安装步骤:❶解压下载好的安装包,双击安装程序。❷下一步。❸接受协议后,点击下一步。❹使用者名称和组织这两栏任意填写,勾选UseCD-Key之后点击Next。❺点击浏览更改软件安装路径,建议安装到非系统盘,不要包含中文❻选择第一个,下一步。❼复制Crack文件夹的破解文件。❽右击桌面上的Rhino快捷方式,右击,打开文件所在位置,粘贴并替换破解程序。❾复制文件夹内部的语言包。❿粘贴到安装目录(第❽步在桌面的快捷方式打开文件所在位置后的文件夹)里面的Languages文件夹。⓫打开程序,选择选择菜

  • 雷军表示,“我不会为了营销企业而让自己去当明星”

    导读:我主张身先士卒,同时团结一大帮人打仗。我们的产品出来我要用一用,看看好不好。这样做企业的可控性高,产品的品质有保障。如果CEO对产品没兴趣、不懂、不管,结果不可控。继《福布斯》年度人物之后,雷军又成为《财富》(中文版)的年度中国商人。雷总对外刊们倒都挺nice,一一接受其采访。与《福布斯》这个长篇访谈比起来,《财富》的访谈略简要,不过还是有一些有趣的信息透露,如下:《财富》(中文版)问:哪些习惯是您为了小米而养成或者戒掉的?答:我觉得我没有改变什么。创立小米的时候我已经40岁了,人生已经形成了,破罐子破摔,该怎么着就怎么着吧(笑)。我当时就是顺势而为,不要太刻意。我对自己说:能做到什么程度就做,不要勉强。创业需要的技能在40岁以前都积累过了。现在就要享受工作,把工作变成兴趣。我看到周围的很多人为了工作而工作,挺痛苦的。我希望每个人都能做自己喜欢的工作,发挥最大的能动性,结果会大有不同。问:在个人爱好方面您也是一个追求极致的人吗?答:现在我的重点是把小米做好。玩的方面要克制,不然整天去玩就不工作了。不管什么事情,只要一当真就需要投入很多的时间和精力。我在小学的时候,围棋拿过两年的全

  • [每日一题]1453: [蓝桥杯][历届试题]翻硬币

    题目描述小明正在玩一个“翻硬币”的游戏。 桌上放着排成一排的若干硬币。我们用*表示正面,用o表示反面(是小写字母,不是零)。 比如,可能情形是:**oo***oooo 如果同时翻转左边的两个硬币,则变为:oooo***oooo 现在小明的问题是:如果已知了初始状态和要达到的目标状态,每次只能同时翻转相邻的两个硬币,那么对特定的局面,最少要翻动多少次呢? 我们约定:把翻动相邻的两个硬币叫做一步操作。 输入两行等长的字符串,分别表示初始状态和要达到的目标状态。每行的长度<1000输出一个整数,表示最小操作步数。样例输入*o**o***o*** *o***o**o***复制样例输出1 大家先自行尝试写写,可以在电脑端上1453题在线提交评测,也可以后台回复题号获取题解 自己也可以贡献哦!复制

  • 数据挖掘_R_Python_ML(2): Linear Regression vs SVR

    在上一篇“数据挖掘:R,Python,MachineLearning,一起学起来!”中,我们介绍了用R进行线性回归的例子。这次我们来看看,同样一份简单的无噪声数据,用线性模型和支持向量模型分别进行回归,得出的结果是否一致。数据我们仍然用上次的y=x+2的那份lrdata_1.csv。要用SVR模型,我们需要安装一个新的package——e1071。打开R后操作如下:>install.packages("e1071",dep=TRUE)>library(e1071)>mydata=read.csv(".\\lrdata_1.csv")>x<-mydata[,1]>y<-mydata[,2]先用svmfunction进行回归,所有的参数都使用默认值:>svm.r=svm(y~x,mydata);svm.rCall:svm(formula=y~x,data=mydata)Parameters:SVM-Type:eps-regressionSVM-Kernel:radialcost:1gamma:1epsi

  • Hadoop学习之网络爬虫+分词+倒排索引实现搜索引擎案例

    本项目实现的是:自己写一个网络爬虫,对搜狐(或者csdn)爬取新闻(博客)标题,然后把这些新闻标题和它的链接地址上传到hdfs多个文件上,一个文件对应一个标题和链接地址,然后通过分词技术对每个文件中的标题进行分词,分词后建立倒排索引以此来实现搜索引擎的功能,建立倒排索引不熟悉的朋友可以看看我上篇博客 Hadoop–倒排索引过程详解首先要自己写一个网络爬虫由于我开始写爬虫的时候用了htmlparser,把所有搜到的链接存到队列,并且垂直搜索,这个工作量太大,爬了一个小时还没爬完造成了我电脑的死机,所以,现在我就去掉了垂直搜索,只爬搜狐的主页的新闻文章链接不多说,看代码首先看下载工具类,解释看注释packagecom.yc.spider; importjava.io.BufferedInputStream; importjava.io.BufferedOutputStream; importjava.io.File; importjava.io.FileOutputStream; importjava.io.IOException; importjava.net.HttpURLConne

  • 腾讯云消息队列CKafka取消授权tokenapi接口

    1.接口描述接口请求域名:ckafka.tencentcloudapi.com。 取消授权token 默认接口请求频率限制:20次/秒。 APIExplorer提供了在线调用、签名验证、SDK代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成SDK调用示例。 2.输入参数以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见公共请求参数。 参数名称 必选 类型 描述 Action 是 String 公共参数,本接口取值:CancelAuthorizationToken。 Version 是 String 公共参数,本接口取值:2019-08-19。 Region 是 String 公共参数,详见产品支持的地域列表。 InstanceId 是 String 实例ID User 是 String 用户 Tokens 是 String token串 3.输出参数 参数名称 类型 描述 Result Integer 0成功注意:此字段可能返回null,表示取不到有效值。 Reque

  • Mysql 用户权限管理

    1.MySQL权限介绍 mysql中存在4个控制权限的表,分别为user表,db表,tables_priv表,columns_priv表,我当前的版本mysql5.7.22。 mysql权限表的验证过程为: 先从user表中的Host,User,Password这3个字段中判断连接的ip、用户名、密码是否存在,存在则通过验证。 通过身份认证后,进行权限分配,按照user,db,tables_priv,columns_priv的顺序进行验证。即先检查全局权限表user,如果user中对应的权限为Y,则此用户对所有数据库的权限都为Y,将不再检查db,tables_priv,columns_priv;如果为N,则到db表中检查此用户对应的具体数据库,并得到db中为Y的权限;如果db中为N,则检查tables_priv中此数据库对应的具体表,取得表中的权限Y,以此类推。 1.1MySQL权限级别 分为: 全局性的管理权限:作用于整个MySQL实例级别 数据库级别的权限:作用于某个指定的数据库上或者所有的数据库上 数据库对象级别的权限:作用于指定的数据库

  • 脚本2

    ping 用来,测试本机与目标主机是否联通、速度如何、稳定性如何sed -rn 's/(.*)\.([^.]+)$/\1/p'#构建环境for i in {1..365}doDIR=`date -d "-$i day" +%F`mkdir -p $DIRcd $DIRfor j in {1..10}dotouch $RANDOM.logdonecd ..done移动DIR=/data/cd DIRfor DIR in * indoYYYY_MM=`echo $DIR |cut -d"-" -f1,2`Day=`echo $DIR |cut -d"-" -f3`[ -d $YYYY_MM/$Day ] || mkdir -p

  • Go通关13:究竟在什么情况下才使用指针?

    什么是指针 我们都知道,程序运行时的数据是存放在内存中的,每一个存储在内存中的数据都有一个编号,这个编号就是内存地址。我们可以根据这个内存地址来找到内存中存储的数据,而内存地址可以被赋值给一个指针。我们也可以简单的理解为指针就是内存地址。 指针的声明和定义 在Go语言中,获取一个指针,直接使用取地址符&就可以。 示例: funcmain(){ name:="微客鸟窝" nameP:=&name//取地址 fmt.Println("name变量值为:",name) fmt.Println("name变量的内存地址为:",nameP) } //运行结果: //name变量值为:微客鸟窝 //name变量的内存地址为:0xc00004e240 复制 nameP指针的类型是*string Go语言中,*类型名表示一个对应的指针类型 变量 内存中数据 内存地址 name:="微客鸟窝" 微客鸟窝 0xc00004e240 nameP:=&name 0xc00004e240 0xc00004e360 从上面表格可以看到: 普通变量name的值是

  • 3. Django每日一码 之 Serializers 源码

    2019-7-6今日源码:rest-framework序列化Serializers 序列化组件Serializers源码分析 首先,它需要data、many、instance,其中instance序列化,data为反序列化,many=True时为多条数据。 1)先从many为入口切入。 查看源码,可以发现,在父类BaseSerializer中,先调用__new__方法,如果many=True,生成ListSerializer对象,如果为False,生成Serializer对象 2)继续以data为切入口 先从自己开始查找data,没有再去父类查找一级一级找 发现在Serializer中有data方法,然而发现它是继承父类的,继续去父类中查找 发现又调用to_representation方法,首先从自身查找,最后在它父类的父类Serializer中找到to_representation方法。 Serializer类里有to_representation方法,for循环执行attribute=field.get_attribute(instance) 再去查找field.get_a

  • LeetCode-765.情侣牵手

      N对情侣坐在连续排列的2N个座位上,想要牵到对方的手。计算最少交换座位的次数,以便每对情侣可以并肩坐在一起。 一次交换可选择任意两人,让他们站起来交换座位。 人和座位用 0 到 2N-1 的整数表示,情侣们按顺序编号,第一对是 (0,1),第二对是 (2,3),以此类推,最后一对是 (2N-2,2N-1)。 这些情侣的初始座位  row[i] 是由最初始坐在第i个座位上的人决定的。 示例1: 输入:row=[0,2,1,3] 输出:1 解释:我们只需要交换row[1]和row[2]的位置即可。 复制 示例2: 输入:row=[3,2,0,1] 输出:0 解释:无需交换座位,所有的情侣都已经可以手牵手了。复制 1classSolution{ 2publicintminSwapsCouples(int[]row){ 3intn=0; 4//只需要遍历下标为偶数的座位,每次+2,奇数的座位可由交换座位匹配好 5for(inti=0;i<=row.length-2;i+=2

  • 个人项目——生成数独并解数独

    我的github地址是 https://github.com/Shannon2016/homework.git复制 以下是我预计在此项目上预计花费的时间 PSP PersonalSoftwareProcessStages 预估耗时(分钟) 实际耗时(分钟) Planning 计划       Estimate   估计任务用时 60   Development 开发       Analysis   需求分析(包括学习新技术) 180     DesignSpec   生成设计文档 60     DesignReview   设计复审 10     CodingStandard   代码规范 10     Design   具体设计 60     Coding   具体编码 4200     CodeReview   代码复审 240     Test   测

相关推荐

推荐阅读