Add 2024 Day 19
This commit is contained in:
parent
0d2250e703
commit
81b7ed1f0d
5 changed files with 603 additions and 0 deletions
13
2024/day19_linen_layout/Cargo.toml
Normal file
13
2024/day19_linen_layout/Cargo.toml
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
[package]
|
||||||
|
name = "day19_linen_layout"
|
||||||
|
version = "0.1.0"
|
||||||
|
edition = "2021"
|
||||||
|
|
||||||
|
[dependencies]
|
||||||
|
|
||||||
|
[dev-dependencies]
|
||||||
|
# criterion = "0.5.1"
|
||||||
|
|
||||||
|
[[bench]]
|
||||||
|
name = "test_benchmark"
|
||||||
|
harness = false
|
91
2024/day19_linen_layout/challenge.md
Normal file
91
2024/day19_linen_layout/challenge.md
Normal file
|
@ -0,0 +1,91 @@
|
||||||
|
Today, The Historians take you up to the [hot springs](/2023/day/12) on Gear Island! Very [suspiciously](https://www.youtube.com/watch?v=ekL881PJMjI), absolutely nothing goes wrong as they begin their careful search of the vast field of helixes.
|
||||||
|
|
||||||
|
Could this *finally* be your chance to visit the [onsen](https://en.wikipedia.org/wiki/Onsen) next door? Only one way to find out.
|
||||||
|
|
||||||
|
After a brief conversation with the reception staff at the onsen front desk, you discover that you don't have the right kind of money to pay the admission fee. However, before you can leave, the staff get your attention. Apparently, they've heard about how you helped at the hot springs, and they're willing to make a deal: if you can simply help them *arrange their towels*, they'll let you in for *free*!
|
||||||
|
|
||||||
|
Every towel at this onsen is marked with a *pattern of colored stripes*. There are only a few patterns, but for any particular pattern, the staff can get you as many towels with that pattern as you need. Each stripe can be *white* (`w`), *blue* (`u`), *black* (`b`), *red* (`r`), or *green* (`g`). So, a towel with the pattern `ggr` would have a green stripe, a green stripe, and then a red stripe, in that order. (You can't reverse a pattern by flipping a towel upside-down, as that would cause the onsen logo to face the wrong way.)
|
||||||
|
|
||||||
|
The Official Onsen Branding Expert has produced a list of *designs* - each a long sequence of stripe colors - that they would like to be able to display. You can use any towels you want, but all of the towels' stripes must exactly match the desired design. So, to display the design `rgrgr`, you could use two `rg` towels and then an `r` towel, an `rgr` towel and then a `gr` towel, or even a single massive `rgrgr` towel (assuming such towel patterns were actually available).
|
||||||
|
|
||||||
|
To start, collect together all of the available towel patterns and the list of desired designs (your puzzle input). For example:
|
||||||
|
|
||||||
|
```
|
||||||
|
r, wr, b, g, bwu, rb, gb, br
|
||||||
|
|
||||||
|
brwrr
|
||||||
|
bggr
|
||||||
|
gbbr
|
||||||
|
rrbgbr
|
||||||
|
ubwu
|
||||||
|
bwurrg
|
||||||
|
brgr
|
||||||
|
bbrgwb
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
The first line indicates the available towel patterns; in this example, the onsen has unlimited towels with a single red stripe (`r`), unlimited towels with a white stripe and then a red stripe (`wr`), and so on.
|
||||||
|
|
||||||
|
After the blank line, the remaining lines each describe a design the onsen would like to be able to display. In this example, the first design (`brwrr`) indicates that the onsen would like to be able to display a black stripe, a red stripe, a white stripe, and then two red stripes, in that order.
|
||||||
|
|
||||||
|
Not all designs will be possible with the available towels. In the above example, the designs are possible or impossible as follows:
|
||||||
|
|
||||||
|
* `brwrr` can be made with a `br` towel, then a `wr` towel, and then finally an `r` towel.
|
||||||
|
* `bggr` can be made with a `b` towel, two `g` towels, and then an `r` towel.
|
||||||
|
* `gbbr` can be made with a `gb` towel and then a `br` towel.
|
||||||
|
* `rrbgbr` can be made with `r`, `rb`, `g`, and `br`.
|
||||||
|
* `ubwu` is *impossible*.
|
||||||
|
* `bwurrg` can be made with `bwu`, `r`, `r`, and `g`.
|
||||||
|
* `brgr` can be made with `br`, `g`, and `r`.
|
||||||
|
* `bbrgwb` is *impossible*.
|
||||||
|
|
||||||
|
In this example, `*6*` of the eight designs are possible with the available towel patterns.
|
||||||
|
|
||||||
|
To get into the onsen as soon as possible, consult your list of towel patterns and desired designs carefully. *How many designs are possible?*
|
||||||
|
|
||||||
|
Your puzzle answer was `251`.
|
||||||
|
|
||||||
|
\--- Part Two ---
|
||||||
|
----------
|
||||||
|
|
||||||
|
The staff don't really like some of the towel arrangements you came up with. To avoid an endless cycle of towel rearrangement, maybe you should just give them every possible option.
|
||||||
|
|
||||||
|
Here are all of the different ways the above example's designs can be made:
|
||||||
|
|
||||||
|
`brwrr` can be made in two different ways: `b`, `r`, `wr`, `r` *or* `br`, `wr`, `r`.
|
||||||
|
|
||||||
|
`bggr` can only be made with `b`, `g`, `g`, and `r`.
|
||||||
|
|
||||||
|
`gbbr` can be made 4 different ways:
|
||||||
|
|
||||||
|
* `g`, `b`, `b`, `r`
|
||||||
|
* `g`, `b`, `br`
|
||||||
|
* `gb`, `b`, `r`
|
||||||
|
* `gb`, `br`
|
||||||
|
|
||||||
|
`rrbgbr` can be made 6 different ways:
|
||||||
|
|
||||||
|
* `r`, `r`, `b`, `g`, `b`, `r`
|
||||||
|
* `r`, `r`, `b`, `g`, `br`
|
||||||
|
* `r`, `r`, `b`, `gb`, `r`
|
||||||
|
* `r`, `rb`, `g`, `b`, `r`
|
||||||
|
* `r`, `rb`, `g`, `br`
|
||||||
|
* `r`, `rb`, `gb`, `r`
|
||||||
|
|
||||||
|
`bwurrg` can only be made with `bwu`, `r`, `r`, and `g`.
|
||||||
|
|
||||||
|
`brgr` can be made in two different ways: `b`, `r`, `g`, `r` *or* `br`, `g`, `r`.
|
||||||
|
|
||||||
|
`ubwu` and `bbrgwb` are still impossible.
|
||||||
|
|
||||||
|
Adding up all of the ways the towels in this example could be arranged into the desired designs yields `*16*` (`2 + 1 + 4 + 6 + 1 + 2`).
|
||||||
|
|
||||||
|
They'll let you into the onsen as soon as you have the list. *What do you get if you add up the number of different ways you could make each design?*
|
||||||
|
|
||||||
|
Your puzzle answer was `616957151871345`.
|
||||||
|
|
||||||
|
Both parts of this puzzle are complete! They provide two gold stars: \*\*
|
||||||
|
|
||||||
|
At this point, you should [return to your Advent calendar](/2024) and try another puzzle.
|
||||||
|
|
||||||
|
If you still want to see it, you can [get your puzzle input](19/input).
|
87
2024/day19_linen_layout/src/lib.rs
Normal file
87
2024/day19_linen_layout/src/lib.rs
Normal file
|
@ -0,0 +1,87 @@
|
||||||
|
use core::fmt::Display;
|
||||||
|
use std::collections::{HashMap, VecDeque};
|
||||||
|
|
||||||
|
#[derive(Debug, PartialEq, Eq)]
|
||||||
|
pub enum ParseError {
|
||||||
|
InputMalformed,
|
||||||
|
}
|
||||||
|
|
||||||
|
impl Display for ParseError {
|
||||||
|
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
|
||||||
|
match self {
|
||||||
|
Self::InputMalformed => write!(f, "Input must consist of a list of available patterns, separated by \", \", an empty line, and a newline-separated list of the desired designs"),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Try to consume the design into patterns. If it has been fully consumed, we are successfull.
|
||||||
|
// Otherwise try consuming the first characters in every way we can, and check the rest.
|
||||||
|
fn can_be_constructed(design: &str, patterns: &VecDeque<&str>) -> bool {
|
||||||
|
design.is_empty() ||
|
||||||
|
patterns.iter().any(|p| design.starts_with(p) && can_be_constructed(&design[p.len()..], patterns))
|
||||||
|
}
|
||||||
|
|
||||||
|
// The same as above, but count the successfull ways and sum them up , instead of returning
|
||||||
|
// after the first one. Also, memorize the results in a HashMap, so we don't have to compute
|
||||||
|
// them again. The HashMap must contain (String::new(), 1) prior to the call, so we can
|
||||||
|
// avoid the extra branch for empty designs.
|
||||||
|
fn ways_to_constrtuct(design: &str, patterns: &[&str], mem: &mut HashMap<String, usize>) -> usize {
|
||||||
|
if let Some(known) = mem.get(design) {
|
||||||
|
*known
|
||||||
|
} else {
|
||||||
|
let ways = patterns
|
||||||
|
.iter()
|
||||||
|
.filter(|p| design.starts_with(*p))
|
||||||
|
.map(|p| ways_to_constrtuct(&design[p.len()..], patterns, mem))
|
||||||
|
.sum();
|
||||||
|
mem.insert(design.to_string(), ways);
|
||||||
|
ways
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
pub fn run(input: &str) -> Result<(usize, usize), ParseError> {
|
||||||
|
if let Some((patterns, designs)) = input.split_once("\n\n") {
|
||||||
|
let patterns: Vec<_> = patterns.split(", ").collect();
|
||||||
|
let mut filtered_patterns = VecDeque::from(patterns.clone());
|
||||||
|
|
||||||
|
// Trim the patterns: For instance, the samle contains the patterns 'r', 'b', and 'g', as
|
||||||
|
// well as 'rb', 'gb', and 'br', which can be constructed from the former and so are
|
||||||
|
// unnecessary for part 1, but would significantly slow down the program.
|
||||||
|
(0..patterns.len()).for_each(|_| {
|
||||||
|
let this = filtered_patterns.pop_front().unwrap();
|
||||||
|
if !can_be_constructed(this, &filtered_patterns) {
|
||||||
|
filtered_patterns.push_back(this);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
let designs : Vec<_> = designs.lines().collect();
|
||||||
|
let possible: Vec<_> = designs.iter().filter(|d| can_be_constructed(d, &filtered_patterns)).collect();
|
||||||
|
let first = possible.len();
|
||||||
|
let mut mem = HashMap::from([(String::new(), 1)]);
|
||||||
|
let second = possible.iter().map(|d| ways_to_constrtuct(d, &patterns, &mut mem)).sum();
|
||||||
|
Ok((first, second))
|
||||||
|
} else {
|
||||||
|
Err(ParseError::InputMalformed)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#[cfg(test)]
|
||||||
|
mod tests {
|
||||||
|
use super::*;
|
||||||
|
use std::fs::read_to_string;
|
||||||
|
|
||||||
|
fn read_file(name: &str) -> String {
|
||||||
|
read_to_string(name).expect(&format!("Unable to read file: {name}")[..]).trim().to_string()
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_sample() {
|
||||||
|
let sample_input = read_file("tests/sample_input");
|
||||||
|
assert_eq!(run(&sample_input), Ok((6, 16)));
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_challenge() {
|
||||||
|
let challenge_input = read_file("tests/challenge_input");
|
||||||
|
assert_eq!(run(&challenge_input), Ok((251, 616957151871345)));
|
||||||
|
}
|
||||||
|
}
|
402
2024/day19_linen_layout/tests/challenge_input
Normal file
402
2024/day19_linen_layout/tests/challenge_input
Normal file
|
@ -0,0 +1,402 @@
|
||||||
|
wrgrwbug, uurb, rbubr, buggb, uuwwwrb, gg, wgburr, ubg, wrbuw, grrr, rur, ggb, bur, guwggg, rwbr, grurb, bgurguw, ruub, uguugg, bwr, brggb, rwuu, rrgbuw, bgub, wbbb, rgg, ubrgb, wbrgw, rgwwuww, b, buw, grb, rww, grurw, ggwb, rbw, brbw, gb, gwwr, bugwrg, uwbww, ggu, bbbbbbur, gu, ruurw, uwr, gbur, gbgbu, wrwru, urrr, bruu, wbbgrg, gwrwr, brru, buub, wrbb, wrb, urugbur, bgwwr, bwubb, wrbbbbbb, gggbgur, www, rbuuggr, rrruwguu, wgr, r, ggw, wb, gbgr, bwbu, wgwuugug, uuug, grgw, gbbuwrb, ug, gub, wbrbug, wrrgrr, rbuu, rrg, brbu, ugwu, bguw, guww, ugw, wwg, ugrb, ggrw, uug, uww, bbw, bwrw, urr, bwbuw, rbugr, uubbwu, rru, rbb, wbb, wguu, urb, rwbrubb, rrgru, ugg, rgw, gwbb, rbrr, gbwg, wgrb, wbbbbbug, u, bru, uububwwr, wburugg, wrgugg, urgu, uuuwg, grbuwwb, brg, grwubr, wbrww, bugu, wgwrbwu, urrbr, w, wubwu, gbgugw, ggrbwr, ugurrr, ubrgu, bggrb, gugwb, rw, uuwg, wguw, wuru, rugu, ubgru, bgubr, urww, buggg, wwb, gwbu, rgbbbb, burrw, ugbuwr, uwbw, bug, urbwgwbu, gubwuur, wbgrbb, wub, bb, ugbgwr, gwbww, gggbw, bggg, gbwbur, wggg, ruuug, grw, rwg, wguwbr, rggr, wugw, rbwb, ru, wrbur, gug, rbru, buuubwb, gbwgug, ggubu, buwbwr, gru, wuw, wbg, wbr, ubgw, brwugb, rbwugr, rb, wbur, rr, wbwubuwr, wuggrb, bww, ruw, rbu, wrbrr, ubwrrwbb, guu, brb, rgrr, wgg, bgr, ggruug, bgug, ugwug, rwrrb, grbg, bbr, ugrbbrgr, gwbg, wbwgw, wbbrrb, wwgw, rwrg, wrrugr, wg, rgrwwbg, guw, urg, uugbg, wwbw, ubr, rurb, gugg, wgu, rguug, rwb, wrr, ggbwuu, gw, uuwrwu, gbbugr, rwwrwubr, uwwwgg, uur, uuu, wug, gwrrg, gwu, gwurg, bwrugr, bgb, grr, wuuug, bgw, ubwr, bwbugb, rgwrwg, wruwgru, bbu, ugbuwgu, rbr, ugrw, bugub, rwuuw, grbbuwgr, wbu, gwb, guwwurwr, gbbub, wbrg, bgrbw, urggurw, ruu, wuu, wruu, gbwb, bgwug, rurr, ubuwgw, bwugggb, gurgb, rbbwrgru, bbrb, bubu, bbur, rgb, rbrwr, bbb, bwugr, ggr, wwub, ugrwbrw, rugg, rrrwu, wbgrr, wuwrr, rgu, gbb, bwuw, wbuwrrgb, bwwrgu, ururwubr, rrbwwuw, rwrwb, bwruub, wgrrg, brr, ur, uw, bbg, wbwwr, brur, wruwbb, wwr, wwu, uuwb, ggurb, uub, rrb, rbwr, rbbbb, rg, rgubbb, ubbgruwr, wwwgu, bwgbrrw, wbw, gbguu, wgwr, grurbur, wuburuu, rwgrgr, wur, bwb, wgw, rwr, ururb, gur, rrgwww, bw, ubgbru, rbwbgrb, wrbrb, wubw, wgbub, wrg, rrw, brbr, ugu, guuuugb, wurbgwgg, uurbbgw, urw, rurg, ubw, wgbu, rwguu, gbu, ubuuw, wubruru, bwg, wuuuu, wu, wuuu, bwru, uruu, gwr, bgu, wrgr, ggrugbg, bwgu, ggg, wwwgb, rgru, wbgbu, gr, ubu, guubwu, rgwuwug, bwwru, bub, gbuu, guwbwur, gubrurw, bwrbuwr, wrw, rrrrrg, rwu, gubbuu, uru, uwbg, rurru, rrwwbb, ubgb, rgwugg, buu, ggwwbr, uwg, bbwrgu, ww, urbgbbg, uggbrww, gwg, wbrr, rbrb, ruuwgr, guubrg, uwbbb, rbg, bbgru, gbw, rwrrg, ubrwr, ugb, uubgwru, buwbuwu, wbuww, rrbr, rwbw, ggwr, grrwrg, gbrgwu, bbbu, uwub, ubb, gwur, brbruug, gww, wwugbw, rwuggw, bbrbr, rrr, rbgggw, rug, ggrrbr, brrbb, uwu, ruwwr, rgr, br, rgrubgg, ugr, wgb, wwwr, ggrbbb, uu, gubgwgb, rwbgbr, wru, wgww, rub, uuw, rwubrruu, grg, brwguug, guguu, ub, bgg, wuwu, wr, bwbg
|
||||||
|
|
||||||
|
rwuugrgubgwgbrrurggwbugbuuwgbugbuwwwubbwbbw
|
||||||
|
rubgrugwuwburwwrrrwggrrrbbwwwwwuwuggururgrurgwbwwwugwwggur
|
||||||
|
wrgrrgbbgwuwguruurwbgurgubgbwuwwwuburggbwggwrwwggbg
|
||||||
|
uwwgruguubwbbgurubbuwggwuuwrrbwuugubgwuwbbggwggbbrurwu
|
||||||
|
ububrgrburwrrbbbugrubrugrugrwwbwguwggwrrrurwwuuubgwwbbbb
|
||||||
|
gwrwugubugrwgrrrgrwbburgbbrgrbuwwgrggubbugugwuwbww
|
||||||
|
uwgwwrbwwurbrbburubbrubrguwbugbbbbugruurgugwurgwurburrbwrr
|
||||||
|
gggbugbwuuwbubwuwgwuggurwrgbbbuuwuggwbugugwr
|
||||||
|
ruwburwgbuguwbbuuggrwgrgbbugubgrggrbuwgrbrubwguwgubrubggbg
|
||||||
|
bgwgwubrwggwgbuwbuurgugurbburbburuwgwwwbrubrrrgrgbrgwwwrug
|
||||||
|
wbgurwwrrwgwrugwbgwbbrurgurrbgwwwurbwgrubgbg
|
||||||
|
brwwgbguubrgwguwwuuwbwuwgrbrrbrrgubgrgwuwugbg
|
||||||
|
buuwugbuurwugurugubrwburruwgrgwggbubwgwuwbrwguuugb
|
||||||
|
rrwugbwbgggguburuuuuwwrgubugrwwugwbgbggugrrrurugwwugrr
|
||||||
|
ubbgbrwgrrwrwrbuwwbbguguuwgwruwbbwgrgggbrbgwggwbwurwuuub
|
||||||
|
wrbgwwuwbbwbgubrbubrbwwwuwbguwgwguggbgbrburugbg
|
||||||
|
ggwuwwggwwgbgrbrggbguwrwbgguwggbbgrrwbbgwwuwwbwgrwwgbg
|
||||||
|
ggwwuggggbbugggggubruuugbrurwgbrbrwrgbwggrr
|
||||||
|
gggbwuwwbugwurwrbruugwgrbrugrggbgrwgugwruu
|
||||||
|
bggrgrgbrwrruruguuuwwwgurbrrrgwbubbwrrrbggugrbbrgrwg
|
||||||
|
ubrugrrrwwwrbbrwuwuuuwwguurbwrrggguugugubbwwgbg
|
||||||
|
rwrrgrwrguubgrbrbbggbwgruwbbgggwgrgrwbuggubwurwwbgbrubwgbg
|
||||||
|
buguwuuuruwgggwwbggguuwguurrruwwbugugbgbg
|
||||||
|
wguwwwrwwugggbuwubwurrbubwggwwrgggbgguruwbb
|
||||||
|
ggrwbwrugbuwgrbburugwgbgwrbbgrwuwbrwrrrrrbgbrbrwu
|
||||||
|
ggrggbgbrwrbuwgggwgubbgurbuwuwrurwbwrrruugggggurwrbggbg
|
||||||
|
bbbgrggbwrrwubgwrguuruwbwurrbrwrugubwwgugububggwrbb
|
||||||
|
ubwbrurggrwgrwuurgugruuguggwubuwbrrwuwrwrbgurrbrggbwru
|
||||||
|
ubbrggguwguwugurwgubwwbugrgbguuuwbbuubrbrwruburbbguug
|
||||||
|
ruwgbbuggwrrrbrruwrgrruurwgbugbgbubguuwguurwgubuwr
|
||||||
|
uwburgrwuuwwrrrbguurbbuuwrbbggbuggbwugbbuuuuwwggrrr
|
||||||
|
ugbwwgwuwurrbrbbbugwgbrrrrguwuwguwurugbg
|
||||||
|
ggrrwuubrurrbbwubrbrugrggbrwbgruwgbwwuugguwrwubuwrwrbgbg
|
||||||
|
buwgggwgguwrrurrwruuubbwgrgrgbwbgbbwwwugbubgbg
|
||||||
|
wwgggrbuuugubwurbgugrbrwrggwwgruubwrbbuuuwgbg
|
||||||
|
wrrrurruuwgwrbwbbgbrbbwrbrgbruuuwubgubgbg
|
||||||
|
bwgugbrruuwrrwbwwwgbwrwgbrwrguwbggugwbgubgwbu
|
||||||
|
grrrgbggwbgggbbwbbuburrubrguguuurrgwrbwrugrwububgwrrgbg
|
||||||
|
urbggrugbgruguwbwurbugbuwgwwwbuugurwguugrrbwgurbgbg
|
||||||
|
uwwrubrugwrrruwguubuwwruuuwurwuwgbbwbgbgwbuggbgubg
|
||||||
|
rugbrrgwwubgwbgbgwuwwwugwwubbwuwgwuuruguuwubwrbggbggwugbg
|
||||||
|
uubbwgbrwwgbggugbbrguggbwuwbgrbgrgurrurwwuwbrrwggggwgbgb
|
||||||
|
rbuuggguruwrbbgbwbbrbbuuwwgurbrrwbrrubwgbgwgrguurbubbrwrgbg
|
||||||
|
bguuwubrbgurguurgwbuwgbrbubwwgbbwuubwugbwbuuuug
|
||||||
|
rbwwrgrwbugbrrggwbwbwwwrwwggubuwrrgrbwwbggrrrwgwwb
|
||||||
|
ugggwgbbrrwgwgurubbbwgrbbwgguwwggrburgbuuuwuwrrwgwbwggwrb
|
||||||
|
rbwrbgwwrwrugrburwuwbwgruuururbwbbggbbgbgggbg
|
||||||
|
ugwrbwbrbgwggwggwguwwrwgbgwruwurggwwrwbgwgrguubbg
|
||||||
|
guwgbwrgwrurubwbgrwwrgurwbgubbrwbbrwbwwgguwrggwwrwuwr
|
||||||
|
grrbwruggugrgbwuurggugbguuwburgbbrgguggwubg
|
||||||
|
brbrggrgwguwwrgguuuwwurgbrrbwwwwwrbwwwurgrgubruwbwggurgrg
|
||||||
|
bburrurbgwguwuguguwgwruwrggbwubuwwubgwrurwrbrrbbbrgr
|
||||||
|
gruwguwrurwrwgwwgwbggugbbubbbwuwbguwbubrgrbrrgwbu
|
||||||
|
brbbwbbguggwbrurrbrbuwgwuwwgugwwbubruurwuuuggg
|
||||||
|
uwrbggggwwbgrrgbrurgbgugubrrubrgwrrbggrrbbgbrrbgbubggbg
|
||||||
|
wggbgwrwwruurrruugwgurgbrbwwgbbgbubwgbwbgrb
|
||||||
|
wbuuugrbgurbrugrruwwruggubrugrububwwbbwgbwrrbguwugrwuggbg
|
||||||
|
rwurgbgwrbubbwbgrwwruggrbguuwuwugbwurrgurrburg
|
||||||
|
rrggggbgggurwrgubwgbbwwugwguuubwrrwbbugruwrugbugurgwwwbb
|
||||||
|
uuwrrrwruwwubwrbbwwurugurbbuwwurbruwrgwgrguwrwrrwwrgrwbugbg
|
||||||
|
guuwugububrggurgwwugbwrwuubrbugrrbwubrwugbg
|
||||||
|
wgrbwwuwwbgwbuugubwuwbwguggbwuwrgbbwbwwrugr
|
||||||
|
urrrwrwbwuwgwrwgburruggbwuwggrwwbwgbwrwggwbrugggr
|
||||||
|
rgbwubrrwwwubbgwwurbugbrrbggbrugrwgbrugbg
|
||||||
|
ggwbwbubbgruwrrwbgrwrwgwuwgggwrubrwrubgbwwwbbrr
|
||||||
|
rbuwrrwggrgwubbrwwrwrbbbbbburbuwuruwgwgbwrurwgbg
|
||||||
|
uwbrbbrbrbwgggwuguwgugurgrrrwwurrwbuwruurrwgwbrburrrwug
|
||||||
|
urguwrrgbwwwubrbuwrguubggbrrrgbwrbbrgggruuubbgrrgugugwgu
|
||||||
|
rwrbrwurrrrwwgbwbwbwgbgggubbubggguwruuuwbrbguwrwugwr
|
||||||
|
rrwrrwbwwbuwbbwugwbbguuwbwbubgrgubgrrrbgwuuggwrrbbrgb
|
||||||
|
uwrgrrbbbruwgrbbrgwrwuguwrbrggwbbubgruggrgbg
|
||||||
|
uguugugwwubuugrrbwubrrrwrwgbgbbbgwwrbbrbgbg
|
||||||
|
bwwuruuwburbruwwrgbbwruwurgrrrbrbuggubrbbubgbrbgwgrruuubw
|
||||||
|
rrugubuwrggwrgbrrbuurbbwgbguguggggrbuwwgggwburbgbg
|
||||||
|
grwgburuwwwgwwrgwwgwrwgwugubrgrwuubwwuwggrwwrwgur
|
||||||
|
ruwugugbuggwwwgurugrbbrgrubrrrrrwgwwwugbg
|
||||||
|
rruwwrrwrbwugbwwguwurggruuurbbwggggggrwuugbgwg
|
||||||
|
ububuubbggurbuwwwrrgbuurbuggrgbrwwgggwgwwrgrwuwggbguugbw
|
||||||
|
wruwrwggbbuuwgwbuurburuguwwgbrguwgwuuurggbg
|
||||||
|
bwbbgwrbrbgrrbgbguuruwugwuubuguggrbguruwrruuugubgruwggbg
|
||||||
|
gwurgbwrgbgwrwbgbbgugbrwuuwggrggurbbgubrrugubwubrrwrgw
|
||||||
|
urbbuuuuurrbgrbbbbbburrggwrrbwrrgbwwwwwuggwwwwwbuuubuugw
|
||||||
|
gbggrwugbwrbuwrbubuugrbrubbgwgrubbgbwuuurrbrwgrrbwbb
|
||||||
|
rrwurbwrwurwuugbgbgbwbbbuuubgwwgurgwgubwgbg
|
||||||
|
ugrbwwbuuurubbrgbubwgbuuwbgwuwuugggwgbuwugrgubwgrwggbgbg
|
||||||
|
rgbrgbbguruubrgrbwwbbbwubgubgwgrwwgggguwrrbrurbgwrrggw
|
||||||
|
bwbburbgbwgrurgwrrguburrbwwuwrwrrbbubgwruuwwugbg
|
||||||
|
uwrbwwrrbrbbbrrbbbbbburugugbburugggbwuggbgbgwbwwbuuubbgbg
|
||||||
|
rugwgbrwgwuwubwwuwgbrgwggugubwugwrrwgruwbbgrgbg
|
||||||
|
rbrgrguuubgwwwugrrwrbrruuwgrgugubgwbuubwrrwbbbrrwbbgbg
|
||||||
|
rbgruwbggwbwgwgbrwurbwgbguggrwbrbwwuuwggbugguggggrwubrbuw
|
||||||
|
gwbwurrwuwgwgrrbrgbuuwrrgrwwuurrwrrburuwuub
|
||||||
|
wgwugugrwgbrbugbgurrwggbgrubwggrbuuuuwgbg
|
||||||
|
wguggbuguwuwrbwbrwgguwrgbwgbgrwruggurguubgruwbbugwwug
|
||||||
|
gwuwbbgburrrwbgrbwuguwubwuwruggrbuuuwruuwrrg
|
||||||
|
gwrwwrubrruwuwubrggwbrbubbbgrurwwrbgwgrgrbbwwwbgbrwugw
|
||||||
|
ruggruuuwbgbbwwurrwruwrbwbwubuwrbrbgbrwuggurwwwurw
|
||||||
|
rwrwbuugurwwuwwruguubbbwwwwgbrurububrbubwg
|
||||||
|
rrrrbgrwgrwurgwrbbwurbwgwbuguuggwrgbrwrwuuwwrrbgbg
|
||||||
|
ggrwgbgwubwbrrgruuubgwgggwwwrbgbugwrurggrbrg
|
||||||
|
buuwggubguwbgrbbggbwwurbwgwggwwrwurwbwubbbbu
|
||||||
|
ubwgbbwggrgwrrgbrgwwwrwrgguwubrbbrrurgrwuggurgbwwrwur
|
||||||
|
bggrrggrrrbuburwugguubbburgrbgurgurrwbruuwbrrwrwbrgrurw
|
||||||
|
wgrwrgrrwurgwgbruwugbuggbbwrurrgbrrwrwubgurrr
|
||||||
|
wwgwurubbbrrrurubwbbrubwrruwrbbwwwgbbbrburubuu
|
||||||
|
uguwwuguguwrwwuuuggbgrugubrggwurrrruwubbbgbrg
|
||||||
|
gubuwgwwgruububwwrrwbrbrwubbwrgwgrrgrwgbg
|
||||||
|
gwwwugwbwwugrwbwbrubuwwbrrwuwwgbrurbrwbrbbrwguwrrwwbbug
|
||||||
|
gbbrwwuwgrbuuuuuwbwbbbuuwrrrgggguwwwwwbgwwubgbg
|
||||||
|
wrbbbbugbuurwuuggggbrrurggrrgwggwgwgguuggbrrrgguuwurbrwrbw
|
||||||
|
rgrbuuuuuwrgwbbrugbuugububbwwwgbubuwbrurbuwwwrr
|
||||||
|
uuubrwbwbrgwubgbgwrruuuurugrgbwgbrrggruggrwuwwbrwgbg
|
||||||
|
gwgugubbwrrwgrburguwbgbbwggugbugwwruwwbgwwrwgubwruwb
|
||||||
|
wrwwgbwuwbbrwrrbbuurbbwrbubwrbwwugwrgbrubbgr
|
||||||
|
wgrgwbrrugwuwuurwrbgurbrrrbubuubwgrrruwurbrrgbug
|
||||||
|
bbrurgrgwwubgbbrwrruwbuuwgrbrrrrruwubbwgwgggbgruuggbg
|
||||||
|
brbrgburbrburugururrrrruwwbuurbwgrruuwwgbbuwwuugwwgwgbgrgg
|
||||||
|
uubrurrrubrgrwwwwwububggrggbuggurbbwrbuwbburbugrgwb
|
||||||
|
rrbbrbbwubrggbgrwbwgwgwugwgwgbbbwurwrgggrurgwurwbrrgrgbw
|
||||||
|
wwgbuuwruguuwwbwruuwggbbgwwguuurrwwbrurruuguubub
|
||||||
|
ggwbrggwuwwuwbbguguuggrugwbggugggrrrburguburbwbwrguwgw
|
||||||
|
buruubbruwrwbwgruwwuwrbuuwugrbrrrwgugrgggbruguwubbrurwb
|
||||||
|
wwrubbwggrwbuwrrurbbrrwurugbbwgrbwgubrrwwgwrgbg
|
||||||
|
rbguuwugrgruwbbbwruuurrgggrwwruggruuuurwuwrbgwggg
|
||||||
|
gbrrubbwurgwrwgubuubruwrbugbrwugwugbgbwgrggwgbbuubgwrb
|
||||||
|
bubwrwwgurrurubwbubrwuwuggwgrgwrrbwgwbwrrgrrbb
|
||||||
|
rrubuwbbruuggburwuugwwuubuwwuwurbgwgggwrwrgr
|
||||||
|
grgggubrgwbwwgggbwrwwrwgrguuwubgwuurgbrurgwgbg
|
||||||
|
brrbgrbwwuwrwuwwuwwgwrgugwgwugbgguwbbgurrgrwwuwgwubrbb
|
||||||
|
wrbbwgwgwwurbrrgguwbgwwwwbwwwrwwguggbuugugggubwubrug
|
||||||
|
rbbgubgwwruubgguwbwruubugruwuwbgwuugwgbg
|
||||||
|
wwgbuwuuuuugbrugrubgguuwrbgwruggrugbbbguggrburgubwub
|
||||||
|
buwugbwwrbgbbuugbgwwwuwgugbbubwugwbrrgubggwbrgrbbbrurwuwbu
|
||||||
|
bwruggrbwgggbugrgurrwurbrgbbgbbwgrwwrgruuwbbbgbuwrgbwuguggbg
|
||||||
|
wrruwrwwguwrgrggggwburbuubrrwwbruwgrwbbruwgwwggruwwgbgubg
|
||||||
|
bbbbrguruwrbruuubrwrwurbbbwwbguwwwgrrwgwbgbg
|
||||||
|
gbwurggbgwbbwruuggggruwurbbubwbrburgwbrbuuuubgbwgggw
|
||||||
|
rwbrbwgwwubrrrurrrubwbuwubgruguwgrwbggrwwrwubruugrbrggbg
|
||||||
|
ruurwgubuugwwggrrgrrwbgrbgwuburgugbwgrgurrgw
|
||||||
|
rrrrubbwbggrgrrbrrwbrbgrgrbgububgrbrbwbubuwrwbwugrgr
|
||||||
|
rbgwruruuuwrgwwwurrguurubrbburubbbggwwwrbgruwbgbg
|
||||||
|
ugwugurgwuuuuwguwgbugwgwggbgugrurwuwuurgwrgbgbbwuwuggbg
|
||||||
|
bwbrggwrbwbbubrbwwbbbgbrubwwrwbbrwubrruurwbbruugbugubwurgw
|
||||||
|
urggrbgwruurwrguuugrgwubgrbuwgwruwwwbugwuwg
|
||||||
|
bbuggwubwbggwwbgggwbbgbgbguuurbuwrgggbgbg
|
||||||
|
gwgugrwgrugrwrbrbgwuubrbbuurrgwwgbbruuwbwbuw
|
||||||
|
grgugwuwbgguwwwwrrwguurwgwruwgububbrbrggbg
|
||||||
|
uubugugwbrgububgrgbrwrwbrggbgrbbwrgrububwww
|
||||||
|
bgwurbwwgrwbwgrwwuguuwrrwrwruruggwgwgwbbbgbugbgbbbgbg
|
||||||
|
rbwrrggrguurgugwbwuurwwruwugburwrbruuugbuggrbbguu
|
||||||
|
wgrwgwgbbrgbwuwgbgrwrbbwwbgwrrwgwuuuugruuwwguguww
|
||||||
|
rugwwbwgwwbuwugrbwrbuwrwuuuggurbwruwguuuwruwwrgrbgbrubgugb
|
||||||
|
grbwrbbwwubgwbrbbbuurwuugbrwbwbgubbubrwbbwgwgbwwbbuu
|
||||||
|
rrugbrgrwwrwubrrrggrbrbruugwruuwrwrrwrggruwr
|
||||||
|
bburubrwuubwuwgubwbuubwbuubrwwggugbrrrurrbgbgbbbubbbwwr
|
||||||
|
buuurwwbuubgrruuurrwwwgwwwgwgwbgubwbrrbgwurbubwuruguubgg
|
||||||
|
rbwbrwwubrwururwubrbbgubrrbwwugbuurruwguugrwbbg
|
||||||
|
ubwwrbrruwwrwubgwrruwggbgwbggugururrugrrwwwuw
|
||||||
|
rbrwwwbwwgwguwgrgwurgrwububbrgwwuwugbuuuuggbgrbwwrgugur
|
||||||
|
bgwrbrrwrgrgrrbrwwugrrbubbrgwrwrrrguwwrbggrrw
|
||||||
|
uwwwrbwbrugrrbubugbbgwbwuubbrrgwrbbbbbbbrgbrwbrbuu
|
||||||
|
grgrbwugurggbwgwgbbgbbbrgbwgubrwbrgrrrrbwgrubwg
|
||||||
|
ugrbbuwbgwugbrwwuurrwwbbugruubwgbgwgrbwgbwu
|
||||||
|
uuwbgbugwrbuggwbbbugbgbwgrgbwguwbrbwrurwwuubggubrugrrr
|
||||||
|
grgggugbgububgwbgrgwgwbrrgruwrbubgrgrburwwrrug
|
||||||
|
gruwggbbugbgwwbbruwurbbrbrwwbrrwrrruwbwwggbgburggub
|
||||||
|
rgbbrrbrwuurubrwwgrguuwburrbbwruwbwrgrggbg
|
||||||
|
ubrwrwuubwgrruuurgrbgwwwrgrggwruuurrrwbrrrrbb
|
||||||
|
ggrbbbbuugrgbguurrgrgwgwburrrgwbgubggrwurwguwwgwrwbwrbruug
|
||||||
|
grrwrwwuugrggwbbwwwwurwbwbbbbgwgwrwburrugbbg
|
||||||
|
bwbgrurrwwgurwrwurgwwwbbwgrurwburbuwwuuggrgbrubrgwurbubu
|
||||||
|
urbrrwwbwwbwgbuwruuurrrbwbwrrrwgwrbuuwurbbuugr
|
||||||
|
uubrbgbubbrrubwrguggbubuwrgwgrggurguuwbrwgwgwwugwbbww
|
||||||
|
brgbwrbrwwwbrugguuwwwbgbgbgrurwuubbbgwgrugbg
|
||||||
|
ubbggrrububwbuuwbuwwggrurrugbguwwrgbbgbwwbbg
|
||||||
|
uubguburggrgggurwrwgbuggrbwuuwwgbburbgbbwuugrwgwrggruuubr
|
||||||
|
bbbgggruubuuwbruguubgwbrbgwgbwruwbrwbwwwggwwwbur
|
||||||
|
rbrruburrugrrggurugbuuubuggrbbuwgrbwrwrrbwgburgggwwwuubr
|
||||||
|
urbrrbwgbgrrgrwwrrbwuuruwubwrbrwrwwruugruu
|
||||||
|
bbgrguuuwwrwbrugbwwugggwbbbbbugbrwrbwwgwrrwwrubwugrbgwgwrw
|
||||||
|
wbguggrrrwrrbwrbruwbgggwwbgurgrbuwwgwgururbrurubggrwwbuuwu
|
||||||
|
wrubrrwggrgggwgrgrbbgwbuwrbwwrugwwwwbwburgbgguruubb
|
||||||
|
urbugrgbgrbbuwbgbwbuwbwwgwbbrrgggwgrgbgwwrbubrgwbrwr
|
||||||
|
wurgwrrbbbwrburgbgrubgurugbwgrgburrwwbgwugurwuuuguwrbgrugbg
|
||||||
|
gbgubuuwgwrurbgrwuuurwbbwggrrwubrruuburugrbuuguuguuugugbg
|
||||||
|
gbrrbrbuurguwbuwrrgbrrbbgwgwggwbuwgrgrwbbwgb
|
||||||
|
bbrugrwgrwburbrbburrurgrbggwrbrwrbgwrrrgbrwrgwgugbggwr
|
||||||
|
wrguwbgbbrubuwwwurgurrurbwbwrrbbggbbgwrrwbuuwww
|
||||||
|
guuubgrwrwurgbrubbguubrgggwwbwwurggbrwuuwuwwbrwuwbburbwww
|
||||||
|
uwrubwgwuugbbbwburgbuubwbuwbwwbggwbbbgwwrbbru
|
||||||
|
rbuwgwwgbrgggrgrwwuurrwggwuwwbrbggwbggbrgbbg
|
||||||
|
wgwwugbrwurguwuwubugbwgbwurbuwwguubrbbbrgubwgrbrr
|
||||||
|
gbrburgrruwubwwuggggugrbgbbubbgwuwbuguwrbbrbubgwugbwrr
|
||||||
|
bgbbrrbuuwgbubrwwrgbgrwwwubrrrrrrbwuurbgwubbgruwrbwgbg
|
||||||
|
grwrrwwuwwguwgrugwwwrbgbuuugubrwwgrbwwgrbrru
|
||||||
|
grwwwrbgggbwggrbgbwwrwwwbgbbrgbwuuruwbbugbgbuuuubwbgwgbg
|
||||||
|
bgbgwrrwugbrbwuggurruurrwuurggrrrbwbwbubwwwbgugggbugwrwgbg
|
||||||
|
urgrbugrgwguwgwbgbbwbrgwbbwggbuurbrbwwgwwuwwuuwurbwwwrgbg
|
||||||
|
bgugrbubgwubwuggrrrugwgbgwrgggbwbuwbggrrubbugbg
|
||||||
|
guurubwrbggwbrubuuggubrugrrbbwuggwuggggubguububbbbgbwuwr
|
||||||
|
bggwrwwrbwggwgwuruwwbububbwgurwurubruwwuguwugrurwwubwrub
|
||||||
|
wbwurrrgrgrrwuubbwugrrwububbwwrwgwwwbuwuwrgubrgguwrb
|
||||||
|
wrgrurgbbrwbugwgwwrbugbrrggggrrwrrrrrbruurbggggbg
|
||||||
|
gwbwuurbgrubrbrugbubbubbwuurbbrwbrwrwubggwubgbburwbbbrwwbg
|
||||||
|
wbuwgwgurgubbbuurwgrgwgubwgwwugugwrbuwuuwgbg
|
||||||
|
ggwgrbubuwggbgwbwbrwuugwgrgbrgbggwrububwgwuwuwbgubbgbg
|
||||||
|
gguwrbbgbgurbggwwgbugguurubruwrgwrguurgbg
|
||||||
|
rbbggbrbuggrgruwgwwrguguuwgbuwrwrbuwgwbwwuw
|
||||||
|
uuwbgrwwubwwwguburgbrwwubggwrgwbrrruwguubu
|
||||||
|
uubguwwurwrwwrgwrbwgurgubrwgwwrurrgwbbuuwrbubbbwu
|
||||||
|
buwbwuwbbwbbbbwugbuwwuuwrrgwbwugbwwuguwrwggrubwwuwggrg
|
||||||
|
wbwwrwwwururbbrugbgrbbwuuuuurwrgwrrbgrgubuugrrwwrgbwruub
|
||||||
|
gwrwwgugbggwbrgbwbrbgggurrrwbbuuwrbwrwgrguuwbrruguwrgbg
|
||||||
|
gggwurgwwuubgruggugbubbguwbgrguwbwwrubggguruwrrbugrgbg
|
||||||
|
ubwggggguguuwuruwwruuugguwrggrrurbrgrbgbg
|
||||||
|
rwuuuwgbggruurrwwgwbrrggwbwbrugrugrbrbggbbwbrgwubggbwb
|
||||||
|
uwugwuurwbrguuwbbgbrbwuwgwrruuububwwrrgrubwwbrgwrggbgbubbr
|
||||||
|
wggrbuuuuwuuwgbrbbubbuugrbbgbbwbrbuwguruwbrwrwgrgrrurgbg
|
||||||
|
rggrrwgguguwwgbgwbbrgbubuwgrurguugguurgwwwwgrgbg
|
||||||
|
wubgbbbuwrubuuruggbwwrrwrggrbrgburbrbuwgbuwwgbg
|
||||||
|
ugwrubgwwgwbuwgwurwuwrrwbgbrrbwrwrbggbbgwgwbrrggbg
|
||||||
|
grgwruuwwrugurrbbuwbwubrbrwbrbbrbguugrrrgbwgrrggugw
|
||||||
|
ggrgggbwrgbuuurugurbwurwrrrgwuburrbggwwbubwgbg
|
||||||
|
wgggruugrggurwgubruwbbuwbwruuwgbrugrbggrgbrbrugugbg
|
||||||
|
wrrrwgggrrrbrwrbrgwrgwrurgrgggwbgwrbbbrgugwwgwguu
|
||||||
|
rbgggwruwugugwrugburuwgrubbrrgubgwbbrgwbgggbbwgguwgbrw
|
||||||
|
buwwbugwuuwgubuuwbbgugrwbwggrgbruguugwgwwwwrruwbg
|
||||||
|
uwwrwrbgbrrrwgbgugwurgwrbrwgurburrbuwgruuwurbbugbwwrrrbrgbg
|
||||||
|
bgururwbgwubwwbrrurgugurbuubwggrrrguubugwbwgbg
|
||||||
|
uwuwbbwrgwubrbuwwrwbubwggwwrgwubgrbwuwbguwg
|
||||||
|
grruurwrrubrubbruurgrgrbwbgbwgurbbruwgbbruubrgrwu
|
||||||
|
wuwrrrwubggubbwgbwbbbrbwbgwrrgbrrgubrguuruwgrbgw
|
||||||
|
rwbrugugubwbbwbwgrgwuubrbbwuwwuggrwwgugugubr
|
||||||
|
wugubwbgwwuguwrgrggwwgbrwgubgurwbrubgwrruwgruwwgbgbg
|
||||||
|
wugugubuurwbrgrbrwuuubruuuurgurbuwbwuuwbrrww
|
||||||
|
uwwrwrrwuugggwbrwrwggrbubbuuwbwwwwbruwuwwrgbgbg
|
||||||
|
burrwugbwrgbuwrugrbbbgubwuggbgrwbwubrugrbu
|
||||||
|
gbuubrubrwwwgrugrgugrguuwwrwwruurbwgwbuuurbbuuwubrb
|
||||||
|
bbbgrbbbubrwuurgggrbwruruubrurbwwwruuuuwggrgbru
|
||||||
|
ruwwwbwggwbwugugrurgwbubwrubgggrubwrururrwuwuuu
|
||||||
|
wrgwuwgwrwwuwgbgbuuruwurrrgggwwubwbgbrgbg
|
||||||
|
uwrrrggrbwbuubbbrrgbrguwbwwuguwrubwgwgwrbwurwuugwgbb
|
||||||
|
ugwrrggbgbruggbggugbbbuwruubrugbgrrwbwrwbwrrbgu
|
||||||
|
rurwugugrurwgwgrwgbuburguguuwuurbgbugguwugurrurgbg
|
||||||
|
wggbwrgrgwuwggbuurbbgugurbwubrugrbburgugrbrggwb
|
||||||
|
gbugbbgbuwbrrubwgrwwbwgrrbbuurbgrguwguuubwb
|
||||||
|
wrbbrwwuguurrwbrbwgurbuwrugubgwbgbgbubbggbwr
|
||||||
|
rgwrggbwubgubruurbugugugurrbrwggrgwbgbwrgrgru
|
||||||
|
rbububggrrbbbubbuwgrwuurbburubbbwguuwubwwburrrwu
|
||||||
|
uurrruubwggggrrbruuuwgbgrbbbwrbrguwgbwgwwrwbr
|
||||||
|
bubwgrguwrurrwwurrgwrbwbwggrgwggwruwgrrguwbggbbbguurwbrbru
|
||||||
|
ggrugubwuwrwggwbubguugrwgubggbbwgugbwwgbguwbuururrwurgg
|
||||||
|
ubrrrbuubugururuugggruwbbwurggwwwruggbwwwuu
|
||||||
|
ruurrbwrrurwrubbwwgrrgbgururgwbrruwgrwwwugwbuwgug
|
||||||
|
wrrggurwubrgrrwburggrbbuwgrrgbuwbggrguwuwgwrwrrgwrurbbgbg
|
||||||
|
wrwbwbuurgugrugbwwbguuwwgwbuggrwuurwwugbg
|
||||||
|
rbrbrbwggbbwwbbbbbuggwbbubuguwwuugrgbrruugggbbwbwwrwgbg
|
||||||
|
rwrwuwrwgurgugbbrrwwwugrbbwbrgbugbbgbrurrgbg
|
||||||
|
buuubwrgwwbrrwbwuwrubruggbwrbruwggrgrgwggrwggugwbbgguw
|
||||||
|
urggwbugguugubguwruwrbbgbgbrggurrubuwrgbg
|
||||||
|
wgbwggwbrwgbgruuguururrbbrgrwgwbwubgrrwguwgwuwuububgbg
|
||||||
|
gwwwbgurgbwrgwbuugurwbuurrrwrgrggggbwubwwgbg
|
||||||
|
bgbuwbgwubgbwgwrruubrrwwrrruwuggrgbrrubbbwugwbwrbgwgrbuu
|
||||||
|
ururubwbugbuwrgrwgburrwuurgwugrgbbgguwgguruwwbuuwgrwbrrbb
|
||||||
|
rgurgruuwwwuubbbbwrrrwwrrrrgrburrguruwgggwwwugbg
|
||||||
|
bgrbwwuuggrbwgwbwbwubuwrbuurwugbbbubrruubrgbg
|
||||||
|
uubugurrgbrguuruwurrwgbuuuwwuwbrrubgbgwugwgwbgbwubwwgr
|
||||||
|
gbgwugwwrgwgwuwwurrggbrugrwrgugugbbbwggbg
|
||||||
|
rbwuggbwguruggbggugrubwrubwwgrggbgguburuubbrrururwubrgggbg
|
||||||
|
bgrwuurubggwrrguguwubbguwgrwgbgrurwugrwgww
|
||||||
|
rrwuububrbbwgbwrrugbwbwuwugruwugbuwrbwgwrgw
|
||||||
|
bbggbguwbbbuwugbguuuwgbrguwwgwwbbruburgbbbbrurrwburuwggbg
|
||||||
|
bgurwgrurbwwurwrgggwrgbubugwuwbbbrgruuugrrrruggbrggbg
|
||||||
|
wrgwubrwwrrbubwuruurbbgbuwgwgurwgwggubrwrwbruuuwrug
|
||||||
|
ggrbuggbbbwrubwgwubrbrbburbgbgwrbwgwgrgggrbrwrgugruubrbb
|
||||||
|
rbrbbruwuugrrbgrububrgrggrurbrbrwbgwbrbwuguwgrwwwub
|
||||||
|
wgrrbgugwurrubbwrwgbuggrrurbgrrbwwuuwurwggbbwwruugru
|
||||||
|
brwuuwwbrrrbggbuwgbbgwrugurwuwbwgubbrgrgwgbbbgrugbg
|
||||||
|
uguwuburgbrggrrbubgurwgrbgrwuwuubrbrwrwruwwwbwgwrbg
|
||||||
|
rbbubuwbubbbbrwubbwrbugwrwubbwrbbgugbgwrbwuwuwgwrw
|
||||||
|
uuuubwbrubwwbrbuwbrgugwubrrurbgugugrbrbbrwggrwggrur
|
||||||
|
gguuugwwbwrbrgwurwwurruwbgwurgrgrbrgbwubggrwgbg
|
||||||
|
gggwrugrbwwugwgwuugugwbugbwwggugguwguugwwuwrbrgbbrbbrwurgbg
|
||||||
|
ubbuugbgbubwbuwwgrbgrrgbbwbbwrrgbugugwugwgggbg
|
||||||
|
guburbrrbrwubbgguguurrwuubrbrwrgbrbguwwbrrrb
|
||||||
|
bwubgbwwrwbwbgbubggwwwbgbgurruugwuruwugbugwugurbugrgbwwbgbg
|
||||||
|
uubrgrwwrrgrrbubrrbwggggrwruwuurrbbrwrgbwrugwbwgbg
|
||||||
|
uubbggbrwugwgbbgbrbrgbrggruwrubbwwwuurgububuwbrrurubbugbg
|
||||||
|
wwgwgwgwggrwruuwugbbrbwwgbgwugbgwwbgbuwbubuuguwwgruwu
|
||||||
|
wrrbruruugbugrwurbwrrwuwuguurgrbugrrgbwurrggugbg
|
||||||
|
gurrrwruwwruuwrgrbgwbbrurgwwwwwrgrrwrubwgggbgwbburrbguww
|
||||||
|
wwrwrubgrrwurbgbbbubrgrwbwrbrgbuwrubuuggbg
|
||||||
|
grbwgwgrbrbrwwbruwgrubgubuwrrrrgbbrugbubrwguuubbbrwgbg
|
||||||
|
brwuwwwrgggrgubruguurbwbrrrwbwrgggbbggwrgugbbbgurbggrwurwg
|
||||||
|
wrbbrwrggbbguugwugwgrrguwugubbbwgwwuggggbubuwwbwgguwwrrwbu
|
||||||
|
gbgwbrwrbgwbwbwwgwgbuwbuwbgbrbrbgbbbrggbg
|
||||||
|
bububbwrwgubgwwggbruggbbrwgbbubwbwwbwbgbwwwwwwwbrurwrr
|
||||||
|
rrgbgrbbubrbwwbgrrggbgrgwubgbugurwbgurgwwbuguwwgbg
|
||||||
|
bbbggburbwwwwugwuubrwbgwbwbgruwbrwubrrrggrrwrwwwrrgwbgbg
|
||||||
|
wwwurgbbuwgbgrurgbbgwguuuuuwwwrubugrwuwwwbrwwbggrggbg
|
||||||
|
urrrubwburgrbwgburgbbgrgrwrggrrbgubwugbg
|
||||||
|
rguwrwgguwuggwrrwurwbubbuwrbwrrrgwrugrrubburrrbbrbgbwgbwgbg
|
||||||
|
buwurrbgwuruwbuuggbwbggbruggurguuugrrbgbg
|
||||||
|
guwuubgrbwrwwbuuwuugbbbrwbuubuurugrwubrguuurwuuwrrbuwrgbg
|
||||||
|
bbubgggwuugwrugbubbguwwrgubwrrgburgwgurugbbbgubwrgbg
|
||||||
|
ruruwgurggguwrugubgrwrrrwggwugugbwgbgwrgbbuuuwrw
|
||||||
|
rgruuwugwugugbgwwwguruuguuwurururbrbbuwrwurgwubgbg
|
||||||
|
ggwgguuugwwwrbuuuurbbbwwwruwubgbgrgurbwugwubuwwwggg
|
||||||
|
gburgwuwrbbrwgwwgbgbwurrwbgbwbwrgbgwrrbrgwwgrrwrgggruugrgbg
|
||||||
|
wbbguuwuurrugbwuwuubwbbuuwgbrgbwwbgwururwb
|
||||||
|
gbwwwgbbggwwgbwurrgrbwrrbubwwgwbgwwrwwbwggwbrwgbg
|
||||||
|
wwgbwwuubwuwrbugwrrugbguwbbwgrwbrwbggwgbgrgb
|
||||||
|
rbbgguubbwwbubgbwgugugwuburwrwgwwuwurrbrbuwurrgggbgrbbwrg
|
||||||
|
urwgrwrbrgggrbuugbbruwubbgrwrgurbwwrbgwbrwrgbbgubbbr
|
||||||
|
bubuwwwwrubburgwgwwubwuwbubruwubrwwgggrgbubwuwubwuwuurgrub
|
||||||
|
wbbgrurrwbuwrgbbbrrguwwurwrwrrrwwwrbubwguguubbruwbrurrgwrgbg
|
||||||
|
uwubwwggrurbrwguubrrwgrwugrugwbubwbbrbuubggbg
|
||||||
|
bgwuwruugwwwwbbwbrugurwguwugwrbuguburbbgrgbrburwwrugu
|
||||||
|
urugrwwgwggguwgbrbwrrwrggrwuuguruwurgbuubrggbwgbgrruuu
|
||||||
|
wurggrrurubwbuwwgbgwbrbuwrwuurrbrrbrrwwwrgbg
|
||||||
|
wwbubrgbbugruguuuruggrwrwgburwwwrbwbrubruwwubgwwbwgr
|
||||||
|
wrrrrggrubuuuuuurggbwwgwbgwubbgwwbrrbbbgrbgbwubwbugbg
|
||||||
|
wbgrrgrbwwbugbbbbgbgrugbrbugwuwubuuwgwuubwgbgwuwgbrrww
|
||||||
|
bwgrrbggbgwrwugwruurwbwugwugwrurrwbrrguwrwwb
|
||||||
|
gbgurggugggubwwgwgbubggrgguubwbururgwbgbubbbwr
|
||||||
|
gbuubwgugubwwgwguuggwbgwbrwgbrrggbwwbgbg
|
||||||
|
wwwgrbrwuuuwgwwgugbbrgbgbbwgbgbrwguwwgrrububgwwgbbbbbb
|
||||||
|
uruwggrbrrwuruburrbwrwwwgwuwwwwuurwgwugrbwwuubuwg
|
||||||
|
rgwugrbruurgrrwbguruwwgubbrwrwbgubgbuuubuugbggwrg
|
||||||
|
brgwgruubuuuuggwuwuggrwgrbgbbwwuwwrgurgwwwu
|
||||||
|
bgrrgurrgwbbrrrwuugugubwgugrruuwwuwrwbwbgb
|
||||||
|
gburggbrugbbbubwwwruwurgwubbbubrburgbuurgbggbgb
|
||||||
|
bbgwbbbwrbuwurgbuuurbwgbbgguubuwgbguggbwbwrguwgrug
|
||||||
|
wuguwwwubwrrbbwuuwbgbwguwbgbuwubgbubbgrbwubwrburgwg
|
||||||
|
wrwrgwurbgwwurubrbwgrgugwwbrrwbwwwugrrrwwbrbruggur
|
||||||
|
uwgurrubgburrguuuubuuuuggwrwgwrbbruggrrwggbgubg
|
||||||
|
wgrwggrwrwwwwbbgbuuurrrbggbgugurrrrgrurggg
|
||||||
|
ubwgwbgburrbguuguwruubrbggrbggbbwuwubrgggb
|
||||||
|
rwguwrurburbwwubuggbbbubrugrbbbbgwggwrrrwrrgubgwwgww
|
||||||
|
ggguurrrgburgrbgggbwuubgrruguwwugrggrwrbgugrbbbrgrgu
|
||||||
|
bbrrburrbbbrrruurgburgbwrbuwuubbugwwuubwbrugw
|
||||||
|
brbwwwuugbggwurgbwrwrrwurrurwwgggurwwuububbwbwugbuubrr
|
||||||
|
grwwuuwuwbgrrwgbrwrwbbgggrguurgwgbuubwbgrgruwbubwurbgwggbg
|
||||||
|
gbubgbwbururrbwrrbuurwrburrgrgrgwwrrurrrrbgbg
|
||||||
|
guurbguugrgbbugwbbwbbuwwbruuuuruwgburuuruwggbgrwrbrwg
|
||||||
|
wwgrbbuwbuwuubrrbwwrbrgugububrwggrugbwrrurugbugrwgbrgubbub
|
||||||
|
ubwwrgugrurbbbbwurwrubuwrwgwwurbuubuwbgwuwubwubgwuuuwuwwbgbg
|
||||||
|
wgwgbgrwgrgrubuurrwrgrwwwbgbubbwwbrgbgwwrrwurbwrgwwgbg
|
||||||
|
rrubwubbgggrwrguguguwggwguwrwrgwwggrgubrwbrbwwugwr
|
||||||
|
gbrrrwuggbgwugurubrgbwrgrbwubbgbuwbggbgrwbrrbbrwggbug
|
||||||
|
grbrbrbbwgruurbbrgbrwgurbubuuwruurbwurbgbwwwbuwugrg
|
||||||
|
brbbrubbuguubwgugwururwgbwubguurgwbrbbggwurrgrwubb
|
||||||
|
wbgwgbwgbbggrwwbubwurbuwgwwbuwbrrwwgrwrrgbuuuguwwbubwugbg
|
||||||
|
urbgbbuubgburwgrubguggbbwwggburgrbuuurgrbuuub
|
||||||
|
grbggbwwuggwrbbgrwuwbrguwwwbwrbbbgrwrguubrgrbrwggbbrurgbg
|
||||||
|
rrbwwgbwwrrbrgwbwururrwgrwggbwrbruubrrgurwurggrgubgggubw
|
||||||
|
bgbrrrgwrbuurruuuububwgwuuguggrrbbwbggurrgbgbrgrrwggbbgb
|
||||||
|
ugbbbwuwbrwgbwbggubwwuuwwrgrgwrburgbwbbwbuubbrwgrrgwr
|
||||||
|
buubrbbbrwgwuurwggggubgrggbrwrbgbbbbbwrruuuggbg
|
||||||
|
ubuggbwgbrwrgguguggwurrwrrwubwguurwbwgwbrwrubggubbw
|
||||||
|
bububuurbgrwrrwrbrurruguwubrbrggrwrrwgwurwbguu
|
||||||
|
rubbwrwrwrrgrubwwgbruguburbrbwwrguggrbbwubugrrgwuwgrggbg
|
||||||
|
uwrrruugwgwbwugbrwrbrrburubggbrubbgbguwruwbwrwubgwggwbbugbg
|
||||||
|
gwugrguuwwbbgubbrgguruwwwbguuuuwgurwuwugubbgbg
|
||||||
|
wurrwubuubuwuwbuurrgugwuggbgwrrwbgbwbwguugggrwwgugb
|
||||||
|
wgwgbwwuggruguruuubgbwurrwbbbwwbrugwbgggbg
|
||||||
|
wrwubrubruuubrrgwugbbrguwugrbgwruwburbwuwbrgrubbrwubrrbub
|
||||||
|
wrwuwubruggugrruwbrgbbbgbgbuuurwbwrwgwbuwuugwbbuwwwrbggw
|
||||||
|
rruwbuuwbrbwrgrggwbuurrugruububbwgwbgwggubgubbgwgubgbg
|
||||||
|
buwwgrgwurgbgrbgbgbbrrggbggguwuwgurbwubbbrwbwwuwbu
|
||||||
|
wwbrggrgurwruubbuwwurgbrbbrbuugwbrbwburbgugb
|
||||||
|
bgbgwugwrbburbrwwwgwuwgurwruguwgruuguwgruwbgbwugwb
|
||||||
|
uwwgwuwgggwbrwggbrbbguwrgrbrggugwrbgbugugwrwurrbubb
|
||||||
|
rgbrgrrrwrgrwuwbrrurugurbgbwwwgbuwbrbuugwgrrbwbrgbugbg
|
||||||
|
gwrwgbgrrgbbbbggrrwugbwrwggurbrwrwwbwggubgr
|
||||||
|
bwbwrbrubwrwuwrrbuwbrguwrgbbuggbubrbugugbrbbwrgrurrgbg
|
||||||
|
uuwbwrgubbguubbbguuwugurrurwwgubrbgwgbwrrrrwwbwuuuuruwgbg
|
||||||
|
rbwrgbgbrbuugrwguguuwwuwubbrgggbgwrwrrwgwubww
|
||||||
|
bwwrbwrbbwruubuwrgrbgbwwwuwgurrurrwrguburubuwgbg
|
||||||
|
bgbrrbbrwbuwwgubrwubrugurwguwgugwbwwrubwbbubrgbwrrbwbuwrrgbg
|
||||||
|
bggbruggbwgrwugurbwwubuuuwgbgwruburgbrrwbwugbg
|
||||||
|
rwguwwrguwrggggwrgwrgwwwbwgrggwrubuuubwuuggwwugrbwburrw
|
||||||
|
uwrgbgbbgbbwurugrwwgburgubrwuuwbbwwwbrrrggugrruwugugbwg
|
||||||
|
uuwwbgruuguwgbbrrbubwubbgubbgggbgrwuuwrrgggru
|
||||||
|
ggbugwurwguwwgrbbgwrurgrbbgrwrguwwrwwurguwgrbrwguugwbrrgrg
|
||||||
|
bwrwugburgbbbrbwuugggrrgwrubrrrgbwrrbrwurrrwbb
|
||||||
|
wbwbgrrrrrbbwbbrguguwgururgurrwgwgguwburggggburgwguu
|
||||||
|
uuurgrbgwwrwwwbrurgbggubrrgwwwgbwgbuuwbbbwwurrbwbgbg
|
||||||
|
brubbguwgrugbrbugwrwwbguuugwrwrrwbrrgwbwwwbgwwubwbuwwurrb
|
||||||
|
wbrwbbrurgwguubwrwrwbbuwwgubruwrrgbrugrwwrbubwgbbu
|
||||||
|
guwgggburrwwbwgwggbrgbwrrrrubbggbuurguwrbbgrbwwbg
|
||||||
|
bwuwguuwwugrbgwgwubbguurubbbbbwrwggbggwurrugbb
|
||||||
|
brwgurwbwrrgbguwbubrwgrbrgwwbbuwwrburgbg
|
||||||
|
ubuuwgwgruugrurgububrgwubbuuwbwruwbgbgrwurbugbg
|
||||||
|
wuubwwugrwwbgbbubbguwgruwrbgwguurgbrubgguwu
|
||||||
|
gbwrwggrrrwwgurwurwwruwbuburrgurrwwurrbbgbg
|
||||||
|
rbwbrruwwwwwgbgbburrrrbwurwbugbrgwwgwrwwurbuggr
|
||||||
|
ugwggugubuuuwuwgubggrwgrugwrwubgwgbbugrwgbg
|
||||||
|
rwbggrbruubbbwgrwuwbrwrwbgwrbbwrbrwgggugubgbwugwgugugbruub
|
||||||
|
gwrbgrrbbburwgwwbrurbwbwwuguwrwrbgurburwbbrbgugwrbu
|
10
2024/day19_linen_layout/tests/sample_input
Normal file
10
2024/day19_linen_layout/tests/sample_input
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
r, wr, b, g, bwu, rb, gb, br
|
||||||
|
|
||||||
|
brwrr
|
||||||
|
bggr
|
||||||
|
gbbr
|
||||||
|
rrbgbr
|
||||||
|
ubwu
|
||||||
|
bwurrg
|
||||||
|
brgr
|
||||||
|
bbrgwb
|
Loading…
Add table
Add a link
Reference in a new issue