合并表记录(华为机试,Python实现)

牛客网华为机试(python) 牛客网华为机试(https://www.nowcoder.com/exam/oj/ta?tpId=37) 按难度分为入门,简单,中等,困难,较难五个等级HJ7 取近似值 HJ9 提取不重复的整数 提取到输入字符串后就对其进行倒置,排序时直接按ls1的顺序进行排列 HJ46 截取字符串 字符串切片 HJ58 输入n个整数,输出其中最小的k个 map()函数是为了初始化n,k以及列表中的str类型为int类型 最后输出的*nums[:k]是对num[:k]的解包。 HJ101 输入整型数组和排序标识,对其元素按 阅读详情

目录

题目描述

题目分析

测试用例

代码

传送门


题目描述

合并表记录:数据表记录包含索引和数值,请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照key值升序进行输出。

输入/输出示例:

先输入键值对的个数,然后输入成对的index和value值,以空格隔开。例如:

输入示例:
    4
    0 1
    0 2
    1 2
    3 4

输出示例

输出示例:
    0 3
    1 2
    3 4

题目分析

首先定义一个整型变量接受输入的总次数,以及一个空字典。使用循环,接受每次输入的键值对。

在每次输入的键值对中,将键和值分别取出,判断新输入的键是否存在与字典中。

    若存在于字典中,则新输入的值与字典中的老值相加,得到该键对应的值;

    否则,将新输入的键值对添加入字典中。

最后,将输入完毕后的字典按照键数值大小顺序排序输出键值对。使用keys()函数将键取出到一个列表中,对列表排序,然后按照列表顺序打印出字典中的键值对,就是最终的结果。

测试用例

1. 输入的键值中存在重复的键

2. 输入的键值中存在不重复的键

代码

amount = int(input())
dictionary = {}

for i in range(amount):
    input_list = list(map(int, input().split()))
    current_key = input_list[0]
    current_value = input_list[1]

    if current_key in dictionary:
        new_value = dictionary[current_key] + current_value
        dictionary[current_key] = new_value
    else:
        dictionary[current_key] = current_value

keys = list(dictionary.keys())
keys.sort()

for element in keys:
    value = dictionary[element]
    print(str(element) + ' ' + str(value))

传送门

1. input()函数

https://blog.youkuaiyun.com/TCatTime/article/details/82556033

2. split()函数

https://blog.youkuaiyun.com/TCatTime/article/details/82053259

3. map()函数

https://blog.youkuaiyun.com/TCatTime/article/details/82942412

4. list()函数

https://blog.youkuaiyun.com/TCatTime/article/details/82947385

5. int()函数

https://blog.youkuaiyun.com/TCatTime/article/details/82826824

6. keys()函数

https://blog.youkuaiyun.com/TCatTime/article/details/82949133

7.  sort()函数

https://blog.youkuaiyun.com/TCatTime/article/details/82972984

8. str()函数

https://blog.youkuaiyun.com/TCatTime/article/details/82963437

9. print()函数

https://blog.youkuaiyun.com/TCatTime/article/details/83450692

华为机试在线训练–牛客网(python) 华为机试在线训练–牛客网(python)第一部分(1~10)第一题:求字符串最后一个单词的长度#coding=utf-8 str = raw_input("") space_sky = ' ' if space_sky in str: str_sp = str.split(' ') print len(str_sp[-1]) else: print len(str)第二题:计 阅读详情

相关推荐

华为机试:合并表记录——python实现

华为机试:合并表记录 题目描述 数据表记录包含表索引和数值(int范围的整数),请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照key值升序进行输出。 输入描述: 先输入键值对的个数 然后输入成对的index和value值,以空格隔开 输出描述: 输出合并后的键值对(多行) 示例1 输入 4 0 1 0 2 1 2 3 4 输出 0 3 1 2 3 4 n = int(inp...

weixin_41729258的博客 523

Python实现两个hashmap中键值对值是否相同

由来 最近收到一个关于hashmap的题: 请用代码实现两个hashmap中键值对值是否相同 尝试做了下,发现python没有直接使用hashmap的方法,还需要自己构造,这太麻烦了。 最后发现python本身只有dict这种结构,采用的就是哈希表,我想这应该直接可以拿出来用吧。(没有人指导,只能自己瞎想了) 我是这样写的,直接就可以得到键值对的值相同 a = { 'x' : 1, ...

疯愚者的博客 1436

【牛客网-华为机试题目录】持续更新中

本专栏主要汇总了《华为机试题 - python》,对每一题涉及的相关函数都进行了详细剖析。

📷 图像处理践行者 | 传统算法 · 深度学习 · 多模态 | 分享实战经验与技术洞见,探索从像素到智能的无限可能。 3498

华为机试题:HJ8 合并表记录(python)

数据表记录包含表索引index和数值value(int范围的正整数),请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照index值升序进行输出。:先输入键值对的个数n(1

📷 图像处理践行者 | 传统算法 · 深度学习 · 多模态 | 分享实战经验与技术洞见,探索从像素到智能的无限可能。 1134

【华为机试Python实现】HJ8 合并表记录(简单)

文章目录题目描述输入描述:输出描述:示例1示例2参考代码 题目描述 数据表记录包含表索引index和数值value(int范围的正整数),请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照index值升序进行输出。 提示: 0 <= index <= 11111111 1 <= value <= 100000 输入描述: 先输入键值对的个数n(1 <= n <= 500) 接下来n行每行输入成对的index和value值,以空格隔开 输出描述: 输出

1606

华为OD机试 - 合并表记录(C++ & Java & JS & Python)

数据表记录包含表索引index和数值value(int范围的正整数),请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照index值升序进行输出。接下来n行每行输入成对的index和value值,以空格隔开。先输入键值对的个数n(1

斌擎科技 249

python字典输入键查对应的值_[Python字典]根据字典的值查询出对应的键——实例...

执行效果图: 代码:#!/usr/bin/env python# -*- encoding:utf-8 -*-'''根据值查询对应的键'''key_list=[]value_list=[]mydisc = {'key1':'123','key2':'234','key3':'345'}for key,value in mydisc.items():key_list.append(key)value...

weixin_35747051的博客 2601

74LS161/48 交通灯控制系统:30-5-20-5 时序逻辑电路 Multisim 仿真验证

本文详细解析了基于74LS161/48芯片的交通灯控制系统设计,通过Multisim仿真验证30-5-20-5时序逻辑电路。从系统架构搭建、状态机实现到波形分析,提供全流程操作指南与典型问题排查方法,助力数字电路课程设计高效完成。

weixin_26742753的博客 378

牛客网 华为机试 合并表记录

本题中,我们是要将表中记录的索引相同的进行合并,所以我们先建立一个size为输入数的哈希表,然后我们把键盘输入的值依次作为key和value存入到哈希表中即可,每次放入的时候先判断表中是否存在该key,如果存在则把value的值相加,如果不存在则直接存入即可。最后打印哈希表即可。

buptlzl的博客 236

Vivado DDR IP自定义型号避坑指南:如何正确填写CSV参数表(附常见错误排查)

本文详细解析了Vivado DDR IP自定义型号配置中的关键步骤与常见问题,特别针对DDR4内存颗粒的参数提取、CSV参数表填写误区及故障排查提供了实用指南。通过实际案例和调试技巧,帮助工程师避免配置陷阱,提升DDR4系统稳定性和性能。

weixin_29280657的博客 413

车机破解避坑指南:为什么你的CarPlay盒子不识别?从USB设备ID解析兼容性问题

本文深入解析车机USB设备兼容性问题,特别是CarPlay盒子不识别的原因,从硬件ID到识别机制全面剖析。通过ADB工具和root权限操作,提供详细的破解方案和兼容性测试结果,帮助用户解决车机与第三方设备的连接问题。

weixin_29175469的博客 602

华为机试HJ8 合并表记录

首先看一下题。

bingw0114的博客 952

JAVA + 海康威视SDK + FFmpeg+ SRS 实现海康威视摄像头二次开发

海康威视SDK接入方案摘要 本文介绍了使用海康威视官方SDK开发物联网平台摄像头接入功能的完整方案。系统采用Java后端集成HCNetSDK控制摄像头,通过FFmpeg将RTSP流转为RTMP推送到SRS流媒体服务器,前端基于HTTP-FLV协议实现视频播放。文章详细说明了开发准备工作,包括SDK下载、SRS部署、FFmpeg安装等关键步骤,并提供了数据库表设计和接口定义。核心部分展示了如何集成海康SDK,包括提取必要代码、加载DLL文件、配置打包插件等具体实现细节,最终形成了一套支持实时预览、回放和下载的

2401_83057947的博客 2263

华为OD机试 - 合并表记录(Java 2024 E卷 100分)

本专栏收录于。刷的越多,抽中的概率越大,私信javapub,备注华为OD,加入华为OD刷题交流群,每一题都有详细的答题思路、详细的代码注释、3个测试用例、为什么这道题采用XX算法、XX算法的适用场景,发现新题目,随时更新,全天优快云在线答疑。

JavaPub 596

AI 赋能测试全生命周期:多 Agent 协同的自动化提效方案

本文提出了一种基于Coze平台的多Agent协同测试解决方案,旨在解决软件测试中PRD解析不清晰、测试点覆盖不全、用例编写效率低、代码生成耗时等痛点。通过PRD优化、测试点生成、测试用例生成和单元测试框架生成四个Agent的协同工作,结合Cursor工具实现从需求到代码的全链路自动化。以电商平台登录模块为例,展示了从模糊PRD到标准化测试用例和可执行Java单元测试代码的完整转化流程。该方案通过AI赋能显著提升测试效率,减少人工干预,实现测试覆盖率≥95%,为快速迭代的软件研发提供了高效的测试自动化支持。

QINJIEEE的博客 1101

3DSlicer冠脉分割实战:从DICOM导入到三维重建的完整流程(附常见问题解决)

本文详细介绍了使用3DSlicer进行冠脉分割的完整流程,从DICOM数据导入到三维重建,涵盖环境配置、视图优化、心脏区域分割及冠脉精细分割等关键步骤。针对常见问题提供实用解决方案,帮助医学影像从业者高效完成心血管结构分析,提升诊断准确性。

weixin_29271053的博客 628

华为机试python编程题_牛客网华为机试题之Python解法

牛客网华为机试题之Python解法第1题 字符串最后一个单词的长度a = input().split(" ")print(len(a[-1]))第2题 计算字符个数a = input()b = input()print(a.lower().count(b.lower()))第3题 明明的随机数while True:try:num = int(input())data = []for i in ra...

weixin_32451529的博客 3124

YOLOv8首创原创改进:即插即用|创新的轻量化非对称多级压缩LADH检测头

总结而言,本文介绍了一种名为轻量化非对称多级压缩LADH检测头的原创改进,该改进可与YOLOv8无缝适配,并显著提升了检测器的性能。在本文中,我们介绍了一种原创改进的检测头,名为轻量化非对称多级压缩LADH检测头,它可与YOLOv8无缝适配,显著提升了检测器的性能。此外,我们引入了多级压缩的概念,通过在不同的检测层级上应用不同程度的压缩,进一步提升了检测头的轻量化特性。具体而言,我们采用了逐级减少卷积核数量和通道数量的策略,以降低模型的参数量和计算复杂度,同时保持较高的检测精度。

IbcVue的博客 2181

牛客网&&华为机试&&合并表记录

牛客网&&华为机试&&合并表记录 代码实现 #include<iostream> #include<vector> #include<algorithm> using std::cin; using std::cout; using std::endl; using std::vector; using std::sort; ...

weixin_42060900的博客 213

innovus:InstPad、CellPad 、module padding、clock cell halo

我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?site_num指的是padding的大小以site宽度为单位。

m0_61544122的博客 2025

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

华为机试 合并表记录 map遍历

题目描述 数据表记录包含表索引和数值(int范围的正整数),请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照key值升序进行输出。 输入描述: 先输入键值对的个数 然后输入成对的index和value值,以空格隔开 输出描述: 输出合并后的键值对(多行) 示例1 输入 4 0 1 0 2 1 2 3 4 输出 0 3 1 2 3 4 题目链接:https://www.nowcoder.com/practice/de044e89123f4a7482bd2b21

salmonwilliam的博客 320

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

合并表记录/华为机试

题目描述 数据表记录包含表索引和数值,请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照key值升序进行输出。 输入描述: 先输入键值对的个数 然后输入成对的index和value值,以空格隔开 输出描述: 输出合并后的键值对(多行) 示例1 输入 4 0 1 0 2 1 2 3 4 输出 0 3 1 2 3 4 代码: #include&lt;...

thecentury的博客 173

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

牛客网—华为机试—题解记录

分享一些我对华为题库的题解

fansv587的博客 544

牛客网华为机试题之Python解法

牛客网华为机试题之Python解法 第1题 字符串最后一个单词的长度 a = input().split(" ") print(len(a[-1])) 第2题 计算字符个数 a = input() b = input() print(a.lower().count(b.lower())) 第3题 明明的随机数 while True: try: num

1万+

华为机试HJ8合并表记录

数据表记录包含表索引index和数值value(int范围的正整数),请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照index值升序进行输出。

qq_29787929的博客 406
上一篇: Python type函数
下一篇: Python str join方法:拼接字符串
TCatTime
博客等级 码龄9年 400粉丝 256原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值