首页 > 试题广场 >

牛牛数数

[编程题]牛牛数数
  • 热度指数:36286 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
\hspace{15pt}牛牛在酒桌上玩一个小游戏,第一个人从 1 开始数数,如果遇到数字中含有数字 4 或数字是 4 的倍数,则跳过这个数字报下一个,谁数错了就要罚酒一杯。

\hspace{15pt}牛牛为了作弊,它想将所有符合规则的数字预先生成出来。请你帮助牛牛列出 1n 之间所有既不包含数字 4 又不是 4 的倍数的整数,按升序输出。

输入描述:
\hspace{15pt}在一行中输入一个正整数 n,满足 1 \leqq n \leqq 10^5


输出描述:
\hspace{15pt}按升序输出所有满足条件的整数,每个数字占一行。
示例1

输入

9

输出

1
2
3
5
6
7
9

说明

19 中,数字 4 含有数字 4 且 4,84 的倍数,应跳过,剩余数字按升序输出。
n = int(input())

if  1<=n<=10**5:
    list_no4 = []
    for i in range(1,n+1):
        if i%4!=0 and '4' not in str(i):
            list_no4.append(i)
    list_no4.sort()
    print(*list_no4, sep='\n')


发表于 今天 11:04:55 回复(0)
n=int(input())
p=1<=n<=10**5
if p:
    for i in range(1,n+1):
        p1=i%4!=0
        p2='4' not in str(i)
        if p1*p2:print(i)
else:print('超出范围')

发表于 2025-10-30 11:38:02 回复(0)
for i in range(1,int(input())+1):
    is_ans = i%4!=0 and "4" not in str(i)
    if is_ans:
        print(i)
发表于 2025-10-28 22:13:00 回复(0)
a=int(input())
for i in range(1,a+1):
    if i%4>0 :
        if '4'not in str(i):
            print(i)
        else:
            pass
    else:
        pass
发表于 2025-10-16 11:46:30 回复(0)
a = int(input())
b=0
while b<a:
    b+=1
    if b%4==0 or "4"in str(b):
        continue
    print(b)
发表于 2025-09-23 16:36:52 回复(0)
def contains4(x) -> bool:
    while x > 0:
        if x % 10 == 4:
            return True
        x //= 10
    return False

n : int = int(input())
counter = 1
while counter <= n:
    if not contains4(counter) and counter % 4 != 0:
        print(counter)
    counter += 1

发表于 2025-07-24 11:53:05 回复(0)
import sys
b = 0
for line in sys.stdin:
    a = line.split()
    a = int(a[0])
    for i in range(a):
        if (i + 1) % 4 != 0:
            m = str(i+1)
            for j in range(len(m)):
                if '4' == m[j]:
                    break
                else:
                    if j == len(m)-1:
                        print(i + 1)
        else:
            continue

发表于 2025-07-18 11:02:03 回复(0)
n = int(input())
#不包含4的判断方法
def has_no_digit4(num):
    return '4' not in str(num)

#不被4整除的判断方法
def can_not_4(num):
    return num % 4 != 0

for i in range(1,n+1):
    if can_not_4(i) and has_no_digit4(i):
            print(i)

发表于 2025-06-30 16:25:51 回复(0)
n=int(input())
for i in range(n+1):
    if i%4 != 0 and ('4' not in str(i)):
        print(i)
发表于 2025-06-23 10:20:59 回复(1)