Рубрики
Без рубрики

Адвое Код 2020: Python Solution День 6

Я пробую это только после нескольких часов вызова разблокированного. И первая часть была легко решая. Но … с меткой AdventOfCode, алгоритмы, Python, 100Дасофкод.

Я пробую это только после нескольких часов вызова разблокированного. И первая часть была легко решая. Но для второй части я должен был взять на себя помощь от нити Reddit, специально здесь Отказ Из нескольких проблем я впервые начал с примера игрушек, приведенного там, и если все случаи совпадают на этом примере ввода, затем кормите мой вход к этому алгоритму и сделано. Здесь day6_test.txt. Пример ввода присутствует на Задача ссылки . И Day6.txt мой вклад. REPO с выходом присутствует в Github Отказ

with open("day6_test.txt", "r") as fp:
    lines=fp.readlines()

with open("day6.txt", "r") as fp:
    lines=fp.readlines()

groups = []
group = []
for question in lines:
    if question!="\n":
        group.append(question.split("\n")[0])
    else:
        groups.append(group)
        group=[]
groups.append(group)

# solution to challenge 1
solution_1 = []
for group in groups:
    #print(f"Group: ", group)
    unique_ques = []
    for ques in group:
        unique_ques.extend([uq for uq in ques])

    #print(f"Unique questions: {set(unique_ques)}")
    solution_1.extend(list(set(unique_ques)))
print(f"Solution 1: {len(solution_1)}")


# solution to challenge 2
from collections import Counter
total = 0
for group in groups:
    #print(f"\nGroup: {group}")
    group_size = len(group)
    #print(f"Length of group: {group_size}")

    # make single list of enitire group and count occurence
    counts = Counter("".join(group))
    #print(counts)

    counts = Counter(list(counts.values()))[group_size]
    total+=counts
print(f"Solution 2:", total)

Я пишу блоги про проекты компьютерного зревления на моем Github Page q-viper.github.io И если у вас есть некоторое время, пожалуйста, поделитесь своим.

Оригинал: “https://dev.to/qviper/advent-of-code-2020-python-solution-day-6-248d”