- 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)
k = 0
: 初始化计数器 k
为0。for num in range(12345678,98765433)
: 遍历从 12345678
到 98765432
的所有整数。str1 = ["2","0","2","3"]
: 在每次循环开始时,都重新初始化 str1
为 ["2","0","2","3"]
。for x in str(num) :
: 遍历当前整数 num
的每一位数字。if x in str1:
: 检查当前的数字 x
是否在 str1
中。if str1[0] == x:
: 如果 x
等于 str1
的第一个元素,执行下一步。str1.pop(0)
: 从 str1
中移除第一个元素。如果在一串数字中遍历到了2023中的某一个数字,将列表中的对应的那个数字删除.
如果队列空了就说明这串数字包含了2023,如果队列不空就说明这串数字不完全包含
设置计数器统计队列不空的个数。
通过嵌套一层层的 if 条件来寻找一串数字是否包含2023 。