CSES - Sama summa

Annettuna on lista, jossa on kokonaislukuja. Tehtäväsi on selvittää, voiko luvut jakaa kahteen listaan niin, että molemmissa listoissa lukujen summa on sama.

Esimerkiksi kun lista on [1,2,3,4][1,2,3,4], voidaan muodostaa jako listoihin [1,4][1,4] ja [2,3][2,3], jossa kummankin listan lukujen summa on 55. Sen sijaan listassa [1,2,3,5][1,2,3,5] missään jakotavassa listojen lukujen summa ei ole sama.

Toteuta tiedostoon samesum.py funktio check_sum, jolle annetaan lista luvuista. Funktion tulee palauttaa True, jos jako on mahdollinen, ja muuten False.

Voit olettaa, että lukujen määrä on välillä 1101 \dots 10. Funktion tulee toimia tehokkaasti kaikissa tällaisissa tapauksissa.

def check_sum(numbers):
    # TODO

if __name__ == "__main__":
    print(check_sum([1, 2, 3, 4])) # True
    print(check_sum([1, 2, 3, 5])) # False
    print(check_sum([0])) # True
    print(check_sum([2, 2])) # True
    print(check_sum([2, 4])) # False
    print(check_sum([1, 5, 6, 3, 5])) # True
    print(check_sum([1, 5, 5, 3, 5])) # False
    print(check_sum([10**9, 2*10**9, 10**9])) # True
    print(check_sum([1, 1, 1, 1, 1, 1, 1, 1, 1, 123])) # False