day04: Day 04: High-Entropy Passphrases

Description Usage Arguments Details Examples

Description

High-Entropy Passphrases

Usage

1
2
3
4
5

Arguments

passphrases

a string of passphrases

rule

a function for checking passphrases

x

a passphrase to check

Details

Part One

A new system policy has been put in place that requires all accounts to use a passphrase instead of simply a password. A passphrase consists of a series of words (lowercase letters) separated by spaces.

To ensure security, a valid passphrase must contain no duplicate words.

For example:

The system's full passphrase list is available as your puzzle input. How many passphrases are valid?

Part Two

For added security, yet another system policy has been put in place. Now, a valid passphrase must contain no two words that are anagrams of each other - that is, a passphrase is invalid if any word's letters can be rearranged to form any other word in the passphrase.

For example:

Under this new system policy, how many passphrases are valid?

Examples

1
2
3
ps <- "abcde xyz ecdab\niiii oiii ooii oooi oooo\naa bb cc dd aa"
count_valid_passphrases(ps, no_repeated_words)
count_valid_passphrases(ps, no_anagrams)

tjmahr/adventofcode17 documentation built on May 30, 2019, 2:29 p.m.