首页 > 编程语言 >【华为OD】D卷真题200分:数字游戏 python代码实现[思路+代码]

【华为OD】D卷真题200分:数字游戏 python代码实现[思路+代码]

时间:2024-06-16 18:29:54浏览次数:16  
标签:200 数字 真题 代码 OD +---+ 张牌

【华为OD】2024年C、D卷真题集:最新的真题集题库 C/C++/Java/python/JavaScript

【华为OD】2024年C、D卷真题集:最新的真题集题库 C/C++/Java/python/JavaScript-CSDN博客

JS、Java、C、python、C++代码实现:

【华为OD】D卷真题200分:数字游戏 JavaScript代码实现[思路+代码]-CSDN博客

【华为OD】D卷真题200分:数字游戏 Java代码实现[思路+代码]-CSDN博客 

【华为OD】D卷真题200分:数字游戏 C语言代码实现[思路+代码]-CSDN博客 

【华为OD】D卷真题200分:数字游戏 python代码实现[思路+代码]-CSDN博客 

【华为OD】D卷真题200分:数字游戏 C++代码实现[思路+代码]-CSDN博客 

题目描述:

小明玩一个游戏。系统发1+n张牌,每张牌上有一个整数。第一张给小明,后n张按照发牌顺序排成连续的一行。需要小明判断,后n张牌中,是否存在连续的若干张牌,其和可以整除小明手中牌上的数字。

输入描述

输入数据有多组,每组输入数据有两行,输入到文件结尾结束。

第一行有两个整数n和m,空格隔开。m代表发给小明牌上的数字。

第二行有n个数,代表后续发的n张牌上的数字,以空格隔开。

输出描述

对每组输入,如果存在满足条件的连续若干张牌,则输出1;否则,输出0

示例1

输入输出示例仅供调试,后台判题数据一般不包含示例

输入

6 7
2 12 6 3 5 5
10 11
1 1 1 1 1 1 1 1 1 1

输出

1
0

说明

两组输入。第一组小明牌的数字为7,再发了6张牌。第1、2两张牌数字和为14,可以整除7,输出1。第二组小明牌的数字为11,再发了10张牌,这10张牌数字和为10,无法整除11,输出0。

备注

1 <= n <= 1000

1 <= 牌上的整数 <= 400000

输入的组数,不多于1000

用例确保输入都正确,不需要考虑非法情况。

     wumu1024                                                         
                                                            
              +---+                                                          
  3            |   |       ++                               +       +---|   
  |           |   | 3      +                6               +  |   +   |        +
  |      +     |   |       +         +                      +    |  +   |       +
  |      +    |   +---+    +        +        +++++          +   +  +   |        +
  |      +    | +      |   +   +----+        |   |          +   +  +   |        +
  |      +  3 | +      |   +   +    +      2 |   |     2    +   +  +   |        +
  |      +    | +      |   +   +    +        |   |          +   +  +   |        +
  |      +---+ +     |    |  |    +    ----+   |   +---+    |  |  +   |         +
  |      |     +     |    |  |    +    |       |   |   |    |  |  +   |         +
  |    1 |     +     | 8  |  |    +  1 |   |    | 1 |   | 1 |   |  +   |        +
  |      |     +     |    |  |    +    |   |    |   |   |   |   |  +   |        +
  |  +---+     +     +---+   |    ++---+    ++   +---+   +---+   |  +   |        +
  |  |         +         |   |    |         ++              |   |  |+   |        +
  |0 |         +         | 0 |  0 |         ++              | 0 |  |+   |        +
  |  |         +         |   |    |         ++              |   |  |+   |        +
  +---+         +          +-------+                       +---+| +|+   |        +
                +                                                    +   |        +
    0   1   2   3   4   5   6   7   8   9  10  11  12 + v:    w  u m    u 1 0 2 4
 

题目解析:

        使用哈希表来处理即可

代码实现:

class games:
    def __init__(self, m, num):
        self.m = m
        self.num = num


def getRet(nums):
    ret_all = []
    for p in nums:
        s = set([0])
        tmp = 0
        ret = 0
        for elem in p.num:
            tmp = tmp + elem
            if tmp % p.m in s:
                ret = 1
                break
            else:
                s.add(tmp % p.m)
        ret_all.append(ret)
    return ret_all


if __name__ == '__main__':
    nums = []
    while True:
        try:
            line = [int(i) for i in input().split()]
            n = line[0]
            m = line[1]
            num = [int(i) for i in input().split()]
            nums.append(games(m, num))
        except:
            break
    res = getRet(nums)
    for i in res:
        print(i)

标签:200,数字,真题,代码,OD,+---+,张牌
From: https://blog.csdn.net/mars1199/article/details/139665019

相关文章

  • 【华为OD】D卷真题100分: 生日礼物 C++代码实现
    【华为OD】2024年C、D卷真题集:最新的真题集题库C/C++/Java/python/JavaScript【华为OD】2024年C、D卷真题集:最新的真题集题库C/C++/Java/python/JavaScript-CSDN博客C、java、python、JS、C++代码实现:【华为OD】D卷真题100分:生日礼物C语言代码实现-CSDN博客【华为OD】D......
  • 循环神经网络(RNN)入门指南及代码示例
    简介循环神经网络(RecurrentNeuralNetwork,RNN)是一种擅长处理序列数据的神经网络结构。与传统的前馈神经网络不同,RNN拥有循环连接,可以保留以前的信息,从而在处理时间序列数据、自然语言处理等任务中表现出色。在这篇文章中,我们将详细介绍RNN的基本概念及其变体LSTM和GRU,并通过......
  • 【代码+详解】算法题 : 骨头收集者
    ❗❗❗必看:下列题我全部都使用Java语言写的,并且均可以提交成功,获得Accepted结果的.如果代码和详解看了之后,对答案有任何疑问,都可以在评论区提出来,我都会一个一个回答.❗❗❗感谢大家的支持,如果喜欢我的博客,关注点赞收藏评论一波,非常感谢!!!文章目录......
  • 【学习-华为HCIA数通网络工程师真题(持续更新)】(2024-6-16更)
    1、在VRP平台上,可以通过下面哪种方式访向上条历史命令?上光标(ctrl+U为自定义快捷键,ctrl+P为显示历史缓存区的前一条命令,左光标为移动光标)2、主机A(10.1.1.2/24)和主机B(11.1.1.2/24)使用哪种网络设备可以实现通信?路由器(两个主机属于不同的网段,需要通过网关查找路由......
  • GitHub Copilot 登录账号激活,在pycharm写代码的效率提高了
    GitHubCopilot想必大家都是熟悉的,一款AI代码辅助神器,相信对编程界的诸位并不陌生。今日特此分享一项便捷的工具,助您轻松激活GitHubCopilot,尽享智能编码之便利!GitHubCopilot是由GitHub和OpenAI共同开发的人工智能代码辅助工具,所以该插件是专门提供给程序员来写代......
  • 趣味C语言——【关机代码】
    ......
  • 代码随想录刷题记录(7)| 字符串(344.反转字符串,541. 反转字符串II,卡码网:54.替换数字)
    目录(一)反转字符串1.题目描述2.思路3.解题过程(二)反转字符串Ⅱ1.题目描述2.思路3.解题过程(三)替换数字1.题目描述2.思路3.解题过程(一)反转字符串344.反转字符串-力扣(LeetCode)1.题目描述        编写一个函数,其作用是将输入的字符串反转过......
  • 代码随想录刷题记录(8)| 字符串(151.反转字符串里的单词,卡码网:55.右旋转字符串,28. 找出字
    目录(四)反转字符串里的单词1. 题目描述2.思路3.解题过程(1)使用额外空间存储(2)原地反转 (五)右旋转字符串1.题目描述2.思路3.解题过程 (六)找出字符串中第一个匹配项的下标1.题目描述2.思路3.解题思路(七)重复的子字符串1.题目描述2.思路3.解题过程(八)......
  • 第十六周周日(梦断代码)
    技术挑战在书中,罗森伯格详细描述了Chandler团队在技术层面上遇到的各种挑战。从选择合适的编程语言和开发工具,到处理复杂的架构设计和性能优化,每一个决策都充满了困难和不确定性。技术难题往往不是单一的,而是交织在一起,形成了一个个复杂的谜题。Chandler项目的开发过程,反映了软件......
  • 《梦断代码》读书笔记(二)
    这次阅读中体会最深的莫过于奇客和狗,作者通过Chandler狗、Cosmo狗以及各种狗来类比OSAF开发的项目,前面两种都是拉布拉多狮子狗,文章这样描写这两种狗,“它们是好宠物:‘和其他狗类融洽相处’”、“非常聪明,快活而友善。能快速学会不常见或特殊的技能。活跃,有时显得滑稽。如果管束不严......