备战蓝桥杯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 。

相关推荐
8Qi84 小时前
回文子串(Palindromic Substrings)—— 题解
算法·leetcode·职场和发展·动态规划
小欣加油9 小时前
leetcode1926 迷宫中离入口最近的出口
数据结构·c++·算法·leetcode·职场和发展
2601_9618454210 小时前
高考真题试卷电子版|2025高考全科试卷分类下载
考研·面试·蓝桥杯·远程工作·程序员创富·高考
AC赳赳老秦18 小时前
OpenClaw 助力技术面试:自动生成面试题、模拟面试、整理面试知识点
开发语言·python·面试·职场和发展·自动化·deepseek·openclaw
8Qi818 小时前
LeetCode 4:寻找两个正序数组的中位数 —— 二分查找法
java·算法·leetcode·职场和发展·二分查找
林间码客18 小时前
智能旅行规划助手 — 实习面试问答手册
面试·职场和发展
8Qi818 小时前
LeetCode 32:最长有效括号 —— 栈 + 标记法 题解
java·数据结构·算法·leetcode·职场和发展··括号匹配
浮午18 小时前
腾讯AI应用开发一面实录:13道硬核面试题全解析
人工智能·面试·职场和发展
小欣加油1 天前
leetcode56 合并区间
c++·算法·leetcode·职场和发展
8Qi81 天前
LeetCode 516:最长回文子序列
算法·leetcode·职场和发展·动态规划