NowCode|HJ Series_1

本文档记录了牛客网上的一些编程习题解决方案,包括取近似值、合并表记录、列表元素逆序输出以及提取不重复整数的方法。涉及到了Python的基础语法和数据结构操作,如int转换、字典操作、列表反转和去重等。

从这篇文档开始,记录牛客网HJ习题
【备注:星号越多表示代码越重要】

#HJ7 取近似值

a = float(input())
print(int(a+0.5))
#int是向下取整
#HJ8 合并表记录(中等 哈希表)
def fuc():
        n = int(input())
        dic = {}
        for i in range(n):
            key,value = map(int,input().split()) #***
            if key in dic: #** 取字典中的键值
                dic[key] += value
            else:
                dic[key] = value
        key_list = list(dic.keys())  #*****取字典中的所有键值并且存为一个列表
        key_list.sort() #*** 列表的升序
        #value_list = list(dic.values())
        for i in range(len(key_list)):
            key_new = key_list[i]
            print(key_new,dic[key_new])
if __name__ == '__main__':
    fuc()
    
'''
备注:
1.删除字典中的一对键:del dic[1] 
3.30是键值,y是对应的键,car是字典名称(已知键值,求键)
y = list(dic.keys())[list(dic.values()).index(30)]
4.aList = list(dic.items())    aList是键值对列表
keys = list(dic.keys())    keys是键列表
values = list(dicvalues())     values是键值列表
'''
#列表元素逆序输出
list.reverse()
aList[::-1]
#HJ9 提取不重复的整数
aStr = list(map(int,input()))
aList = []
for i in range(len(aStr)-1,-1,-1): #******逆序循环。第一个-1表示终止条件,第二个-1表示间隔
    if aStr[i] in aList:
        continue
    else:
        aList.append(aStr[i])

aStr = [str(i) for i in aList ] #*****将列表里面的每个元素都变成字符串
aStr = ''.join(aStr) #*****  ‘-’ 代表着,用-将元素隔开,如果是空格就是用空格隔开。
print(aStr)

啊。。。。终于知道为什么华为笔试的时候卡了那么就了,在数据结构上。。。。。。碎觉睡觉
2021年7月23日00:45:51

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

十子木

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值