打開力扣,看看今天的每日一題是什麼。
今天是一條道簡單的合并相似物品的題目。原題如下:
那下面我們交給ChatGPT來解決,看看他解決的怎麼樣
我把完整的代碼貼出來給大家看看。
def merge(items1, items2):
"""
合并items1和items2為一個集合items,并按照物品價值升序排列。
"""
items = items1 + items2
items.sort()
return items
def get_weight_by_value(items):
"""
統計每個價值的物品的重量之和,結果存放在一個字典中。
"""
value_weight_dict = {}
for item in items:
value, weight = item
value_weight_dict.setdefault(value, 0)
value_weight_dict[value] += weight
return value_weight_dict
def get_ret(value_weight_dict):
"""
将字典中的鍵值對按照鍵(即物品價值)排序後,按照順序建構結果二維數組ret。
"""
ret = []
for value in sorted(value_weight_dict.keys()):
ret.append([value, value_weight_dict[value]])
return ret
def get_sum_by_value(items1, items2):
"""
統計結果按照物品價值升序排列,傳回一個二維數組ret,
其中ret[i]表示所有價值為valuei的物品的重量之和。
"""
items = merge(items1, items2)
value_weight_dict = get_weight_by_value(items)
ret = get_ret(value_weight_dict)
return ret
我們看到預設是當時Python寫的。
那麼我們再讓他用Typescript寫一下。
其實可以直接讓他用Typescript實作,不用把原題再打出來了
而且還有還帶測試用例。
那我們把代碼直接粘貼到leetcode裡試試怎麼樣
可以看到直接通過。ChatGPT還是蠻好用的。
是不是以後招聘都不用在考算法了。大家同意嗎?歡迎評論區發表意見。