Python-CCF:20191201 报数

文章目录

    • 题目
    • 用时
    • 满分代码
    • 总结

题目

Python-CCF:20191201 报数_第1张图片Python-CCF:20191201 报数_第2张图片

用时

读题4分钟 + 写代码18分钟
太简单了这个…

满分代码

if __name__ == "__main__":
    all_num = int(input())
    # 总共要报多少个数
    report_num = 1
    # 从1开始报
    skip_num = [0, 0, 0, 0]
    # 每个人跳过的次数
    count_num = 0
    # 一共报了几个数

    while True:
        for people_name in range(4):
            if report_num % 7 == 0 or '7' in str(report_num):
                skip_num[people_name] += 1
            else:
                count_num += 1
            report_num += 1
            if count_num == all_num:
                break
        if count_num == all_num:
                break
    for sn in skip_num:
        print(sn)

总结

别的没什么
就是想说一下那个判断数字中是否含有7
写惯爬虫的我反手就是一个正则

flag = re.search('7', str(report_num))
            if report_num % 7 == 0 or flag is not None:

然后才意识到str有更优雅的in方法判断是否含有字符子串
不过还是记录一下正则也是可以用的
防止以后出现更复杂的字符子串操作

import re

提交后并不会报错
所以官方库应该是可以用的
想用numpy啥的就别想了
绝对运行错误

你可能感兴趣的:(Python-CCF)