## screencap.py

0 likes • Jan 23, 2021
Python

## More Python Posts

```from collections import Counter
def find_parity_outliers(nums):  return [    x for x in nums    if x % 2 != Counter([n % 2 for n in nums]).most_common()[0][0]  ]
find_parity_outliers([1, 2, 3, 4, 6]) # [1, 3]```
```def key_of_min(d):  return min(d, key = d.get)
key_of_min({'a':4, 'b':0, 'c':13}) # b```

### sum of powers

CodeCatch
0 likes • Nov 19, 2022
Python
```def sum_of_powers(end, power = 2, start = 1):  return sum([(i) ** power for i in range(start, end + 1)])
sum_of_powers(10) # 385sum_of_powers(10, 3) # 3025sum_of_powers(10, 3, 5) # 2925```
`# @return a list of strings, [s1, s2]def letterCombinations(self, digits):    if '' == digits: return []    kvmaps = {        '2': 'abc',        '3': 'def',        '4': 'ghi',        '5': 'jkl',        '6': 'mno',        '7': 'pqrs',        '8': 'tuv',        '9': 'wxyz'    }    return reduce(lambda acc, digit: [x + y for x in acc for y in kvmaps[digit]], digits, [''])`
```#SetsU = {0,1,2,3,4,5,6,7,8,9}P = {1,2,3,4}Q = {4,5,6}R = {3,4,6,8,9}
def set2bits(xs,us) :    bs=[]    for x in us :        if x in xs :            bs.append(1)        else:            bs.append(0)    assert len(us) == len(bs)    return bs
def union(set1,set2) :    finalSet = set()    bitList1 = set2bits(set1, U)    bitList2 = set2bits(set2, U)
for i in range(len(U)) :        if(bitList1[i] or bitList2[i]) :            finalSet.add(i)
return finalSet
def intersection(set1,set2) :    finalSet = set()    bitList1 = set2bits(set1, U)    bitList2 = set2bits(set2, U)
for i in range(len(U)) :        if(bitList1[i] and bitList2[i]) :            finalSet.add(i)
return finalSet
def compliment(set1) :    finalSet = set()    bitList = set2bits(set1, U)
for i in range(len(U)) :        if(not bitList[i]) :            finalSet.add(i)
return finalSet
def implication(a,b):    return union(compliment(a), b)
#################################################################################################################         Problems 1-6         ##################################################################################################################################
#p \/ (q /\ r) = (p \/ q) /\ (p \/ r)def prob1():    return union(P, intersection(Q,R)) == intersection(union(P,Q), union(P,R))
#p /\ (q \/ r) = (p /\ q) \/ (p /\ r)def prob2():    return intersection(P, union(Q,R)) == union(intersection(P,Q), intersection(P,R))
#~(p /\ q) = ~p \/ ~qdef prob3():    return compliment(intersection(P,R)) == union(compliment(P), compliment(R))
#~(p \/ q) = ~p /\ ~qdef prob4():    return compliment(union(P,Q)) == intersection(compliment(P), compliment(Q))
#(p=>q) = (~q => ~p)def prob5():    return implication(P,Q) == implication(compliment(Q), compliment(P))
#(p => q) /\ (q => r)  =>  (p => r)def prob6():    return implication(intersection(implication(P,Q), implication(Q,R)), implication(P,R))

print("Problem 1: ", prob1())print("Problem 2: ", prob2())print("Problem 3: ", prob3())print("Problem 4: ", prob4())print("Problem 5: ", prob5())print("Problem 6: ", prob6())
'''Problem 1:  TrueProblem 2:  TrueProblem 3:  TrueProblem 4:  TrueProblem 5:  TrueProblem 6:  {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}'''```
```import random
class Node:
def __init__(self, c):
self.left = None        self.right = None        self.color = c        def SetColor(self,c) :        self.color = c
def PrintNode(self) :        print(self.color)
def insert(s, root, i, n):    if i < n:        temp = Node(s[i])         root = temp         root.left = insert(s, root.left,2 * i + 1, n)         root.right = insert(s, root.right,2 * i + 2, n)    return root
def MakeTree(s) :    list = insert(s,None,0,len(s))    return list

def MakeSet() :    s = []    count = random.randint(7,12)    for _ in range(count) :        color = random.randint(0,1) == 0 and "Red" or "White"        s.append(color)    return s
def ChangeColor(root) :    if (root != None) :        if (root.color == "White") :            root.SetColor("Red")        ChangeColor(root.left)        ChangeColor(root.right)

def PrintList(root) :    if root.left != None :        PrintList(root.left)    else :        root.PrintNode()    if root.right != None :        PrintList(root.right)    else :        root.PrintNode()

t1 = MakeTree(MakeSet())print("Original Colors For Tree 1:\n")PrintList(t1)ChangeColor(t1)print("New Colors For Tree 1:\n")PrintList(t1)
t2 = MakeTree(MakeSet())print("Original Colors For Tree 2:\n")PrintList(t2)ChangeColor(t2)print("New Colors For Tree 2:\n")PrintList(t2)
t3 = MakeTree(MakeSet())print("Original Colors For Tree 3:\n")PrintList(t3)ChangeColor(t3)print("New Colors For Tree 3:\n")PrintList(t3)```