力扣刷题之旅(持续更新)

2021/10/9 23:41:30

本文主要是介绍力扣刷题之旅(持续更新),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

最近同学开始找工作,不禁感叹实在是太卷了太卷了,身为菜鸡的我必须勤奋起来,希望可以坚持刷题,开这篇博客持续记录。

1863. 找出所有子集的异或总和再求和

今天做的第一道,虽然是简单题但是没做出来····这题通过率好高。

一个数组的 异或总和 定义为数组中所有元素按位 XOR 的结果;如果数组为 空 ,则异或总和为 0 。

例如,数组 [2,5,6] 的 异或总和 为 2 XOR 5 XOR 6 = 1 。
给你一个数组 nums ,请你求出 nums 中每个子集的异或总和 ,计算并返回这些值相加之和

注意:在本题中,元素相同的不同子集应多次计数。

class Solution:
    def subsetXORSum(self, nums: List[int]) -> int:
        candidates = [0]
        for x in nums:
            candidates += [x^y for y in candidates]  
        return sum(candidates)

 看完答案感觉好简单······虽然是暴力解法。

慢慢来,希望能够进步!



这篇关于力扣刷题之旅(持续更新)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程