【华为机试】2023年真题B卷(python)-喊七的次数重排

一、题目

题目描述:

喊7是一个传统的聚会游戏,N个人围成一圈,按顺时针从1到N编号。
编号为1的人从1开始喊数,下一个人喊的数字为上一个人的数字加1,但是当将要喊出来的数字是7的倍数或者数字本身含有7的话,不能把这个数字直接喊出来,而是要喊”过”。
假定玩这个游戏的N个人都没有失误地在正确的时机喊了”过”,当喊到数字K时,可以统计每个人喊”过”的次数。
现给定一个长度为N的数组,存储了打乱顺序的每个人喊”过”的次数,请把它还原成正确的顺序,即数组的第i个元素存储编号i的人喊”过”的次数。

二、输入输出

输入描述:
输入为一行,为空格分隔的喊”过”的次数,注意K并不提供,K不超过200,而数字的个数即为N。
输出描述:
输出为一行,为顺序正确的喊”过”的次数,也由空格分隔。

三、示例

示例1: 

输入输出示例仅供调试,后台判题数据一般不包含示例
输入:
0 1 0
输出:
1 0 0
说明:
一共只有一次喊”过”,那只会发生在需要喊7时,按顺序,编号为1的人会遇到7,故输出1 0 0。
注意,结束时的K不一定是7,也可以是8、9等,喊过的次数都是1 0 0。
示例2:

输入输出示例仅供调试,后台判题数据一般不包含示例
输入:
0 0 0 2 1
输出:
0 2 0 1 0
说明:
一共有三次喊”过”,发生在7 14 17,按顺序,编号为2的人会遇到7 17,编号为4的人会遇到14,故输出0 2 0 1 0。

四、要求

时间限制:C/C++ 1秒,其他语言 2秒
空间限制:C/C++262144K,其他语言524288K

五、参考代码 

# -*- coding: utf-8 -*-
'''
@File    :   2023-B-喊七的次数重排.py
@Time    :   2023/12/29 19:10:31
@Author  :   mgc 
@Version :   1.0
@Desc    :   None
'''

# import os
# import re
# import sys
# import copy
# import math
# import queue
# import functools
# from queue import Queue
# from collections import Counter, defaultdict

def restore_order(nums):
    length = len(nums)  # 数字列表的长度
    total = sum(nums)  # 计算数字列表的总和

    arr = [0] * length  # 初始化结果列表,存储每个人喊过的次数
    count = 7

    while total > 0:
        if count % 7 == 0 or '7' in str(count):
            arr[(count - 1) % length] += 1
            total -= 1
        count += 1

    result = ' '.join(map(str, arr))  # 将结果列表转换为字符串
    return result


# 主程序
nums = [int(x) for x in input().split()]
result = restore_order(nums)
print(result)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/283454.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

windows无命令升级降级node版本

1. node最新版本下载链接 点击最新下载链接,找到对应版本下载并解压 2. 通过命令where node找到node.exe位置 3. 将该位置的node.exe替换为下载解压的最新node.exe 4. 重新执行node -v查看版本 --------------------------------------------------------------…

ETLCloud X 明道云实现无缝数据连接

明道云作为一款云端协作工具,为企业提供高效的沟通、协作和数据分析服务。它可以实现企业内部沟通和协作的高效性和一体化,并提供数据分析功能,让企业能够更好地理解业务和决策。 一、传统方式同步数据的痛点 传统方式同步数据需要手动进行…

C语言学习----存储类别

存储类别 🌿本文是C Primer Pluse 中文版第12章的部分内容整理 🌱主要是围绕C中作用域 链接 存储期 展开 ,是后面进行多文件管理的基础~ 🌈概要 🍎明确对象 变量名 标识符的基本概念和含义 🍐作用域和链接描…

【LLM+RS】LLM在推荐系统的实践应用(华为诺亚)

note LLM用于推荐主要还是解决推荐系统加入open domain 的知识。可以基于具体推荐场景数据做SFT。学习华为诺亚-技术分享-LLM在推荐系统的实践应用。 文章目录 note一、背景和问题二、推荐系统中哪里使用LLM1. 特征工程2. 特征编码3. 打分排序 三、推荐系统中如何使用LLM四、挑…

Nexus私服简介及搭建(Linux3.62版本)

文章目录 一、Nexus的安装1、运行程序2、查看运行日志和初始密码3、启动配置文件的修改 二、Nexus的使用1、Nexus使用流程说明2、库类型说明2.1、maven-public库配置说明2.2、maven-central库配置说明 3、用户本地配置使用maven-public库3.1、禁用了匿名访问,额外需…

【JavaScript】复制文本到剪切板

✨ 专栏介绍 在现代Web开发中,JavaScript已经成为了不可或缺的一部分。它不仅可以为网页增加交互性和动态性,还可以在后端开发中使用Node.js构建高效的服务器端应用程序。作为一种灵活且易学的脚本语言,JavaScript具有广泛的应用场景&#x…

鸿蒙 DevEco Studio 3.1 入门指南

本文主要记录开发者入门,从软件安装到项目运行,以及后续的学习 1,配置开发环境 1.1 下载安装包 官网下载链接 点击立即下载找到对应版版本 下载完成,按照提示默认安装即可 1.2 下载SDK及工具链 运行已安装的DevEco Studio&…

【Redis-02】Redis数据结构与对象原理 -上篇

Redis本质上是一个数据结构服务器,使用C语言编写,是基于内存的一种数据结构存储系统,它可以用作数据库、缓存或者消息中间件。 我们经常使用的redis的数据结构有5种,分别是:string(字符串)、list(列表)、hash(哈希)、s…

SparkStreaming与Kafka整合

1.3 SparkStreaming与Kafka整合 1.3.1 整合简述 kafka是做消息的缓存,数据和业务隔离操作的消息队列,而sparkstreaming是一款准实时流式计算框架,所以二者的整合,是大势所趋。 ​ 二者的整合,有主要的两大版本。 kaf…

【大数据面试知识点】分区器Partitioner:HashPartitioner、RangePartitioner

Spark HashParitioner的弊端是什么? HashPartitioner分区的原理很简单,对于给定的key,计算其hashCode,并除于分区的个数取余,如果余数小于0,则用余数分区的个数,最后返回的值就是这个key所属的…

Windows客户端操作系统的历史版本简介

文章目录 Windows操作系统的历史版本从windows 10开始,版本有些不一样的变化windows 10有哪些版本Windows 10终止服务的版本Windows 10当前服务的版本Windows 10开始的变化Windows 11有哪些版本 Windows 11有哪些用户反馈的缺点推荐阅读 从Windows 1.0到最新的Windo…

css原子化的框架Tailwindcss的使用教程(原始html和vue项目的安装与配置)

安装教程 中文官网教程 原始的HTML里面使用 新建文件夹npm init -y 初始化项目 安装相关依赖 npm install -D tailwindcss postcss-cli autoprefixer初始化两个文件 npx tailwindcss init -p根目录下新建src/style.css tailwind base; tailwind components; tailwind ut…

基于Matlab的各种图像滤波Filter算法(代码开源)

前言:本文为手把手教学 Matlab 平台下的各种图像滤波算法的教程,将编程代码与图像滤波知识相联系,以实战为例!博客中图像滤波算法包含:均值滤波、中值滤波、高斯滤波、双边滤波、引导滤波。图像滤波算法是计算机视觉领…

用ChatGPT挑选钻石!著名珠宝商推出-珠宝GPT

根据Salesforce最新发布的第五版《互联网购物报告》显示,ChatGPT等生成式AI的出现、快速发展,对零售行业和购物者产生了较大影响。可有效简化业务流程实现降本增效,并改善购物体验。 著名珠宝商James Allen为了积极拥抱生成式AI全面提升销售…

ShuffleZKP:匿名、不可连接消息的合规证明

1. 引言 Mingxun Zhou等人2023年论文《Proof of Compliance for Anonymous, Unlinkable Messages》,开源代码实现见: https://github.com/shufflezkp/shuffle-zkp-open(Go)

【兔子王赠书第14期】《YOLO目标检测》涵盖众多目标检测框架,附赠源代码和全书彩图!

文章目录 写在前面YOLO目标检测推荐图书本书特色内容简介作者简介 推荐理由粉丝福利写在后面 写在前面 小伙伴们好久不见吖,本期博主给大家推荐一本关于YOLO目标检测的图书,该书侧重目标检测的基础知识,包含丰富的实践内容,是目标…

C++面试宝典第12题:数组元素相除

题目 从控制台输入若干个整数作为数组,将数组中每一个元素除以第一个元素的结果,作为新的数组元素值。比如:可以先输入3,作为数组元素的个数;然后输入3个整数,作为数组元素的值。 解析 这道题本身并不复杂,但里面隐藏了不少“坑点”和“雷区”,主要考察应聘者全面思考问…

新手小白:一文带你用vite从零搭建企业级开发环境

在这工作的半年时间里,开始接触了前端开发,技术栈主要用的是 vue2,但是自己利用时间也学习了 vue3,组合式 api 和 vue3 的各种生态比 vue2 好用太多了,特别是状态管理库 pinia 比 vuex 简介很多,构建工具也…

uni-app 前后端调用实例 基于Springboot 下拉刷新实现

锋哥原创的uni-app视频教程: 2023版uniapp从入门到上天视频教程(Java后端无废话版),火爆更新中..._哔哩哔哩_bilibili2023版uniapp从入门到上天视频教程(Java后端无废话版),火爆更新中...共计23条视频,包括:第1讲 uni…

要学习openfoam,c++需要掌握到什么程度?

要学习openfoam,c需要掌握到什么程度? 在开始前我有一些资料,是我根据自己从业十年经验,熬夜搞了几个通宵,精心整理了一份「c的资料从专业入门到高级教程工具包」,点个关注,全部无偿共享给大家&…