备战蓝桥杯Day27 - 省赛真题-2023

题目描述

大佬代码

python 复制代码
import os
import sys

def find(n):
    k = 0
    for num in range(12345678,98765433):
        str1 = ["2","0","2","3"]
        for x in str(num) :
            if x in str1:
                if str1[0] == x:
                    str1.pop(0)

        if len(str1) != 0:
            k+=1
    print(k)
      
print(85959030)

详细解释

  1. k = 0: 初始化计数器 k 为0。
  2. for num in range(12345678,98765433): 遍历从 1234567898765432 的所有整数。
  3. str1 = ["2","0","2","3"]: 在每次循环开始时,都重新初始化 str1["2","0","2","3"]
  4. for x in str(num) :: 遍历当前整数 num 的每一位数字。
  5. if x in str1:: 检查当前的数字 x 是否在 str1 中。
  6. if str1[0] == x:: 如果 x 等于 str1 的第一个元素,执行下一步。
  7. str1.pop(0): 从 str1 中移除第一个元素。

整体思路

如果在一串数字中遍历到了2023中的某一个数字,将列表中的对应的那个数字删除.

如果队列空了就说明这串数字包含了2023,如果队列不空就说明这串数字不完全包含

设置计数器统计队列不空的个数。

通过嵌套一层层的 if 条件来寻找一串数字是否包含2023 。

相关推荐
CoderYanger2 小时前
A.每日一题:1140. 石子游戏 II
java·程序人生·算法·leetcode·游戏·职场和发展·深度优先
不要打扰7564 小时前
2027国网提前批宣讲、面试、预报名、内部笔试时间一览
面试·职场和发展
退休倒计时6 小时前
【每日五题】leetcode TypeScript
算法·leetcode·职场和发展·typescript
测试199818 小时前
如何用appium搭建Android自动化测试框架?
自动化测试·软件测试·python·测试工具·职场和发展·appium·测试用例
Tim_1021 小时前
【LeetCode】29、两数相除
算法·leetcode·职场和发展
Chester_19991 天前
CSP202303C.LDAP
开发语言·c++·蓝桥杯·stl
程序员杰哥1 天前
如何做接口测试?
自动化测试·python·测试工具·职场和发展·测试用例·接口测试·postman
RisunJan1 天前
项目经理面试知识点梳理
面试·职场和发展·word
丰锋ff2 天前
面试问题合集
面试·职场和发展