day12: problem 1 solution
Slow and inefficient but fast enough for a solve
This commit is contained in:
4 files changed
+1223
No files matched your search
Generated
+106
@@ -0,0 +1,106 @@
|
||||
# This file is automatically @generated by Cargo.
|
||||
# It is not intended for manual editing.
|
||||
version = 3
|
||||
|
||||
[[package]]
|
||||
name = "autocfg"
|
||||
version = "1.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
|
||||
|
||||
[[package]]
|
||||
name = "cfg-if"
|
||||
version = "1.0.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
|
||||
|
||||
[[package]]
|
||||
name = "crossbeam-deque"
|
||||
version = "0.8.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"crossbeam-epoch",
|
||||
"crossbeam-utils",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "crossbeam-epoch"
|
||||
version = "0.9.15"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7"
|
||||
dependencies = [
|
||||
"autocfg",
|
||||
"cfg-if",
|
||||
"crossbeam-utils",
|
||||
"memoffset",
|
||||
"scopeguard",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "crossbeam-utils"
|
||||
version = "0.8.16"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "day12"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"itertools",
|
||||
"rayon",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "either"
|
||||
version = "1.9.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07"
|
||||
|
||||
[[package]]
|
||||
name = "itertools"
|
||||
version = "0.12.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "25db6b064527c5d482d0423354fcd07a89a2dfe07b67892e62411946db7f07b0"
|
||||
dependencies = [
|
||||
"either",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "memoffset"
|
||||
version = "0.9.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
|
||||
dependencies = [
|
||||
"autocfg",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "rayon"
|
||||
version = "1.8.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1"
|
||||
dependencies = [
|
||||
"either",
|
||||
"rayon-core",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "rayon-core"
|
||||
version = "1.12.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed"
|
||||
dependencies = [
|
||||
"crossbeam-deque",
|
||||
"crossbeam-utils",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "scopeguard"
|
||||
version = "1.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
|
||||
@@ -0,0 +1,8 @@
|
||||
[package]
|
||||
name = "day12"
|
||||
version = "0.1.0"
|
||||
edition = "2021"
|
||||
|
||||
[dependencies]
|
||||
itertools = "0.12.0"
|
||||
rayon = "1.8.0"
|
||||
@@ -0,0 +1,1000 @@
|
||||
.#?.##??.?? 2,2,1
|
||||
?.#?#?????.? 1,1,3
|
||||
??##??????????.?# 4,4,2
|
||||
..#?????.?#?.#?. 2,2,1,2
|
||||
????????????##?? 1,1,1,1,3
|
||||
?????.#????#??? 1,1,3,2,1
|
||||
.?#..?#?????#?? 1,2,5
|
||||
?#??????????????.? 4,1,2,2,1
|
||||
#??##?.#??. 1,2,3
|
||||
???????#??????#.?? 13,1
|
||||
?#..#??.?#.? 2,1,1,2
|
||||
?.###??????#???.?.?? 11,1
|
||||
.?????????#???. 3,7
|
||||
?????.#??????#.? 1,1,5,2
|
||||
?#???????? 4,4
|
||||
?.??.#.????#??#??? 1,1,1,4,1,1
|
||||
??.?????.#?.?#?????. 1,3,1,2,3,3
|
||||
.???#?????.?? 4,1,1,1
|
||||
??#??.#??.?? 3,2,2
|
||||
.???.?###. 1,4
|
||||
#.???##?#? 1,6
|
||||
#.??????#?.??. 1,5,1
|
||||
.??#???#?#????????? 3,8,2
|
||||
??.?????????.?.??# 1,5,1,1,1,1
|
||||
????????????#? 1,4,4
|
||||
?????????#??. 2,5
|
||||
?.?#?.?.??? 2,1,1
|
||||
?.?.??.??#???##?? 1,1,2,1,3
|
||||
.?#?.#????.. 2,1,2
|
||||
#??#??##?.#??? 1,2,2,1
|
||||
??.##?#?#???..? 1,4,4,1
|
||||
????.##?.? 1,3,1
|
||||
#???????#??#? 1,2,1,4
|
||||
??????????? 1,2,1
|
||||
#???.??##?? 1,2,3
|
||||
##?#?#?.??. 7,1
|
||||
?.?###????????? 4,7
|
||||
.?#??###???#?????? 12,2
|
||||
.#.???#????#. 1,6
|
||||
??.#???.#??#???##?? 1,1,1,1,6,1
|
||||
??#?.?#??? 3,4
|
||||
????????#.?. 2,2,2
|
||||
??.??????.??????#? 1,3,4,2
|
||||
.#??#???.?.???#??? 6,1,1,1,1
|
||||
?????????#??????#? 1,1,1,4,1,1
|
||||
???...?#??????????? 3,12
|
||||
????..?????? 2,1,2
|
||||
???.??.???? 1,1,2
|
||||
#..?###????????# 1,6,6
|
||||
.#?#.???#???##??#??? 1,1,1,1,10
|
||||
?.?#?#.????##.##.??? 3,6,2,1
|
||||
???????#?#????.?..# 4,9,1,1
|
||||
#??#??????????#.???? 1,2,1,7,1,2
|
||||
?#??????????????? 1,1,11
|
||||
???????#?#? 1,5
|
||||
.##?????????.## 4,3,2
|
||||
?#?????##??#.????## 1,1,1,3,1,6
|
||||
.????#.??..?#?.# 3,1,1,3,1
|
||||
?##????????????#?#?? 9,1,4
|
||||
.?????#.???.. 6,2
|
||||
?.??.#??.#?. 1,3,2
|
||||
#?.??.?#??# 2,1,5
|
||||
??#?#.????#??#.???.? 3,1,3,1,3
|
||||
.?#?#?#?.??.????? 6,1
|
||||
#?..??#??? 2,1
|
||||
#??#?????.##?# 2,5,4
|
||||
?.??..#.????? 1,1,1,2
|
||||
??????.?.?#? 1,1,1,2
|
||||
.???.?????.?????? 1,2,1,5
|
||||
?#...#???#? 2,1,1
|
||||
???.?????????#?#?? 2,4,1,6
|
||||
.#???##??????. 6,1,2
|
||||
#?????#???#?#?????.# 1,6,6,1,1
|
||||
.?#???##??.?.?#?? 7,1,1,1,1
|
||||
?#?...?##??.? 3,5
|
||||
#??#?????????..?##. 4,1,1,1,1,2
|
||||
?####?.?.??#?? 4,2
|
||||
#??##.?##???#?####?? 5,3,7
|
||||
??.?#????#??.??.??? 1,3,4,1,1,1
|
||||
.?.?#?##?.?##?????. 2,3,3,3
|
||||
???.?????#?#???.# 1,3,5,1,1
|
||||
???##?.??#.???#??#? 3,3,6
|
||||
.?#?????????.?#??? 2,1,2,3,1
|
||||
???...???? 1,3
|
||||
##?#?#?..?? 7,1
|
||||
????.?#.???# 3,1,2
|
||||
?????????##???.???#? 1,1,1,5,1,3
|
||||
?.#??????#?????. 1,2,2,4
|
||||
????.#???#? 4,2,2
|
||||
?????#????#?#??##?# 4,6,4
|
||||
#???.???###?#????? 1,1,1,7,2
|
||||
?.?#?#????##??#.?? 1,1,1,1,5,1
|
||||
?.????.?.???#? 1,1
|
||||
??##????????? 3,2,1
|
||||
???.?.??#???#? 1,6
|
||||
???#?#??#???.?.# 7,1,1,1,1
|
||||
.?.???#?##?? 1,5
|
||||
??#????#??????#? 8,3
|
||||
?#????#.?????#?#. 1,4,6
|
||||
???#.?#??#? 2,5
|
||||
??????????.??????# 4,2,7
|
||||
???#???...?? 1,2,1,1
|
||||
????.???????##?? 1,1,1,1,5
|
||||
.?##??.##? 2,1,2
|
||||
.???##??##??# 1,2,3,1
|
||||
????#?????##????? 1,10,3
|
||||
??#???.?.?##?..#??? 1,2,1,4,1,1
|
||||
???#?#???? 3,2
|
||||
.?.#???#????????? 1,9
|
||||
?#????##???#?????.# 3,7,3,1
|
||||
#.??##??????#????? 1,5,1,1,1
|
||||
?????.???????#?? 3,1,5,1
|
||||
#??????.##??????. 3,3,5,1
|
||||
.???????.? 1,1,1
|
||||
??#?#??##??#?.????# 11,3
|
||||
.?.?##.??##?.?#?#?#? 2,3,6
|
||||
#?????#?.??#??? 2,4,4,1
|
||||
.#???????#???? 1,2,6
|
||||
####?#?.#?????#?# 7,1,1,2,1
|
||||
??#?.?.??? 2,2
|
||||
?.??.??#????? 1,4,1
|
||||
?..????#?????##? 4,1,2
|
||||
#...????.?#?#??.?? 1,4,1,1,1,1
|
||||
????.????? 3,3,1
|
||||
#?.?##?????#?#? 2,3,1,1
|
||||
??????#?#?????## 2,12
|
||||
?.???#???.??#? 7,1
|
||||
#?#..??.#??#???#?.?? 1,1,2,1,6,2
|
||||
??#?...#.???#???.?? 1,2,1,1,4,1
|
||||
?.?..???.?. 1,1,1
|
||||
?.????..?.??#??? 2,3
|
||||
.??##??????.????? 10,1
|
||||
..?????###??? 1,4
|
||||
??????#???. 2,1,4
|
||||
????##.??.??#?????? 6,1,1,4,2
|
||||
??????????##?#?#?# 1,1,13
|
||||
???.??###?#?????#. 1,9,1
|
||||
?#??.????#?.?.?? 3,5,1
|
||||
???????????.??.???? 1,4,2,1,1
|
||||
??.##??.#... 1,4,1
|
||||
?.?#?#??#?.??##????? 7,6
|
||||
??.????#?#??#.?.? 1,8
|
||||
????#??#???? 4,4
|
||||
?..??????#?????. 1,9
|
||||
?????????.?##????? 4,1,5,1
|
||||
.?.#??.?#.#?? 1,1,2,2
|
||||
?.?##?????#.#?#? 9,1,1
|
||||
?#???#?????? 1,3,2
|
||||
..??#?.?????#??????. 2,11
|
||||
???#??????? 4,1
|
||||
???#??#????#?# 11,1
|
||||
?.?#?#?????#?.?#..? 1,6,3,2
|
||||
??.??#?#???.??.#?? 6,1
|
||||
?##.???????? 3,1,1,1
|
||||
???##?.??? 2,1
|
||||
#?.?.?#?#????. 1,1,5,1
|
||||
?.????#????? 1,1,4,1
|
||||
???#????.??? 1,1,2,1
|
||||
#.????..?.?.???#?? 1,1,1,1,1,6
|
||||
???##??.?#??#????#? 6,9
|
||||
???.#.??.???#??# 1,1,2,6
|
||||
????..?#?#?.##?#???. 3,5,2,4
|
||||
??#???#?#..???##? 7,3
|
||||
?#?##?.???.???? 5,1
|
||||
??.?#????#?#?.?#? 1,3,1,4,1
|
||||
.?.????.????##?? 1,2,1,1,6
|
||||
??????###. 1,1,3
|
||||
#?????.???. 3,1,1
|
||||
#?#..#????#???#?. 3,7,1
|
||||
?.?#??#?.???.?###. 1,3,1,1,1,3
|
||||
.#???.?.#?? 1,2,2
|
||||
.#?#??#?#??#?.?????? 12,1,2
|
||||
????#?????#?? 1,8,1
|
||||
..??????#?. 4,1
|
||||
##?#????#?#??????#?? 2,2,2,3,3
|
||||
?????#???#.#.. 4,2,1
|
||||
???##??..????..?#?# 5,3,4
|
||||
?#?#???#??..??## 8,4
|
||||
.?.???#???? 1,4
|
||||
???#?#??#.???.# 7,1,1,1
|
||||
..?.????????#??? 1,8
|
||||
?????.?##???????. 1,1,8,1
|
||||
?????.?????.???? 5,2,3
|
||||
???????????..?#??.?? 4,5,4,1
|
||||
?#?#???.???#???. 1,2,1,1,1
|
||||
.??.#?????.?? 2,3,1
|
||||
??..??#??.????. 1,1,3,3
|
||||
#??#.?.?.????????? 1,1,1,5,1
|
||||
??#????.??#. 1,2,2
|
||||
???#??????.?#.?? 1,2,1,2,1
|
||||
???#??.??????? 4,2,1
|
||||
??????.?#?##?????#?# 1,1,12
|
||||
??????.??.?#???.# 6,1,2,1,1
|
||||
??.?.????##?? 1,2,4
|
||||
????.?????#?#???#? 3,11
|
||||
.#????????.?.#?#??? 2,1,1,1,6
|
||||
??#????#?????????? 8,4
|
||||
??.?..?.?#???#????? 1,1,1,4,1,1
|
||||
?.????.###??#? 2,6
|
||||
??.#??????.?? 1,6,1
|
||||
.?.?.????#???? 1,6
|
||||
..??????.#?.?.? 5,2,1
|
||||
????.???.?? 4,2,1
|
||||
???###????#????##. 1,6,8
|
||||
.#??#???????? 1,8,1
|
||||
?#?##????.?? 5,1,1
|
||||
??####?####?????. 5,4,1,1
|
||||
?#??.?##?#???? 1,4,2
|
||||
#?????.#??????.# 4,1,3,1,1
|
||||
??#??#?????##.#? 8,2,2
|
||||
????##??..??#? 1,5,2
|
||||
?.#?##?..?#???. 4,3,1
|
||||
.?.?#???.????. 1,4,1,1
|
||||
??##..?... 3,1
|
||||
????#???##??#??# 1,12
|
||||
????#?#?.##??#??. 1,2,2,2,3
|
||||
.#?##?????#????????. 11,1,1
|
||||
?#??.???.#.?#.? 4,3,1,1
|
||||
??#?##???#. 7,1
|
||||
?.??#????#??.???.? 1,2,1,4,1,1
|
||||
.???##??.?.?????#?.# 4,1,2,4,1
|
||||
.?#???#??.##?####?. 2,1,1,8
|
||||
..???..??#??.? 1,4
|
||||
?##???????#??#?? 5,8
|
||||
????#?.??#?# 1,1,3,1
|
||||
??.?.??#.?.##.# 2,1,3,2,1
|
||||
???#???#??#????? 1,1,1,6,2
|
||||
#.???##.?.????#.? 1,5,5,1
|
||||
??????????#?#?#?#.. 1,1,7,1,1
|
||||
????..???? 4,2,1
|
||||
??????##??#??? 1,1,2,3
|
||||
#????#????# 1,5,2
|
||||
?????#???????#??? 1,14
|
||||
?#???.???? 1,2
|
||||
??#?##??.??????????? 7,1,1,1,1
|
||||
?.?#??#???#????.??? 2,3,5,1
|
||||
????##??##??.?#.# 1,9,2,1
|
||||
???????#?. 1,1,2
|
||||
#???###..?.???#? 2,4,1,1,1
|
||||
??????????? 1,1,6
|
||||
??#.?#?????.#??? 1,1,2,1,2
|
||||
#.??#???#.?#??#??#. 1,5,1,1,1,1
|
||||
??????????? 1,1
|
||||
??#.?#?????## 1,1,1,2
|
||||
???##?#?#?#? 1,5,1,1
|
||||
????##??#??? 1,1,7
|
||||
#????#.?????. 6,3
|
||||
?.?#???#?.# 7,1
|
||||
????.?#?????#?.? 2,2,3,2,1
|
||||
.?.#???#?.. 1,6
|
||||
.??#????.?????.## 3,4,2
|
||||
??.##??##??...?? 7,2
|
||||
##???.##???#??# 2,1,3,2,1
|
||||
?###?#??##?.?#???##? 10,3,3
|
||||
??#??????????###.? 15,1
|
||||
???###.????.# 1,4,3,1
|
||||
??.???????#?#?#?? 2,2,4,4
|
||||
????.??###?#?.? 2,7,1
|
||||
?.#?#????.????????. 1,4,1,1,3,1
|
||||
.??.?#?#??#.?#.??. 2,6,1,1
|
||||
????#.?.??.?. 1,2,1,1
|
||||
.??#???#?#??????? 6,8
|
||||
?????.??#?#?#??? 1,1,5,1
|
||||
??#?.#?#??#.#??????? 3,6,4
|
||||
????#????????#??.?? 1,1,2,1,7,1
|
||||
???????#?# 2,1,4
|
||||
??.???????#???#?? 2,2,5,1
|
||||
?#??..??????? 2,5
|
||||
?#???#?.???..#? 5,1,1
|
||||
??##.??.?#????.#?? 3,1,1,2,2
|
||||
#.??#?????.?.??????# 1,8,2,2,1
|
||||
?????.??.?.???.??? 1,1,1,1,1,3
|
||||
????#?.?????# 1,3,1,2
|
||||
????#???????#?#?? 5,9
|
||||
??#???.?#????#??#?.? 5,4,5,1
|
||||
##?..??#??..#?# 2,4,3
|
||||
?????.#?#?? 1,1,4
|
||||
..#?##????????.?#?? 4,2,1,4
|
||||
#?#?.??#?. 1,2,4
|
||||
????.?????????? 1,2,1
|
||||
??#??#???#?.? 1,1,1,4
|
||||
????#.????##?? 3,4
|
||||
???.???.?.?? 3,1,1
|
||||
?????.#???#?? 3,7
|
||||
.???#??.??.???? 3,2,1
|
||||
?????????##???#? 1,1,1,3,3
|
||||
?###??.??? 3,1,1
|
||||
#?????.?????.??? 4,4
|
||||
??#?.?#???#? 3,3,3
|
||||
???#???#??#??# 4,1,4
|
||||
??###.?.???#? 4,5
|
||||
.????????.?????.???. 1,2,3,3,2
|
||||
#.#??#?#??#?#?? 1,2,3,5
|
||||
???#?#??#????#????# 1,8,6
|
||||
?.??#??##??.??????. 8,1,1,1
|
||||
????##.?????#??#?? 4,6,3
|
||||
.???.????#?##??? 1,10
|
||||
?.?????.????????.? 2,1
|
||||
?#..??.?#.? 1,2
|
||||
??#????.??#?#???. 1,1,2,6
|
||||
???#??????????? 9,1
|
||||
#.#??????.#??????? 1,1,1,2,8
|
||||
???.?????..# 1,1,1,1
|
||||
.?###????. 3,1
|
||||
#.?????.?#?##??#???? 1,2,1,11
|
||||
????.??#???##.????#? 1,1,8,1,2
|
||||
#####.#??? 5,2
|
||||
??.???##??? 6,1
|
||||
???#?##?#??#??#.???. 15,2
|
||||
?#??.?.#?.#.?????? 3,1,1,1,1,1
|
||||
????.??##?#..? 3,2,1,1
|
||||
#???.??????#.?????# 2,1,7,2
|
||||
#???.??.???? 3,1,1,1
|
||||
.#???.????.#?? 1,1,3,3
|
||||
..??#??.#.?????.?.# 4,1,5,1
|
||||
???#####????????? 1,6,1,1
|
||||
???????.??????? 1,2,2,6
|
||||
?#.?.#???##? 2,1,2,2
|
||||
?#???#??????? 7,4
|
||||
.?#?#?.?.?### 1,1,1,3
|
||||
????.??????? 1,6
|
||||
?#?#???##????????. 8,5
|
||||
?#???#?.???#??????. 4,2,3,2
|
||||
???.??##??##????.??? 3,4,3,2
|
||||
..?#?#???#.?. 5,1
|
||||
???#?????#????##?# 3,2,7,1
|
||||
????????##?#? 2,7
|
||||
??????#.?..? 3,1,1
|
||||
..#??????#????## 2,5,2
|
||||
??##?.??.??? 2,1,3
|
||||
??#????????#?? 3,1,5
|
||||
?##?.##???????#??#.. 2,10,1
|
||||
?.?#????????.?#. 1,3,2,1,1
|
||||
.???#?????? 5,1
|
||||
???????#??#.????. 4,1,4,1,1
|
||||
.?.?#.?.#. 2,1
|
||||
?#.?.??.???? 1,1,3
|
||||
#?#??????.?# 1,2,1,1
|
||||
#?#.#.???????#???? 1,1,1,1,1,6
|
||||
?????.??#??..??? 3,4
|
||||
???????????#..? 3,2
|
||||
?#?.???.??#.?? 2,3,2
|
||||
??##????.??? 7,2
|
||||
????#??### 1,7
|
||||
.???????#?.?????###? 7,8
|
||||
???.???#?.#???????? 2,2,1,2,5
|
||||
.???????##??????# 3,5,1,1
|
||||
??#????#???#???##? 6,1,1,6
|
||||
?#?.?.??###??. 3,1,6
|
||||
????..?#?#?????? 2,9
|
||||
??.??...?##?###.? 2,7
|
||||
???#????###???? 2,1,7
|
||||
.????#.???? 2,1,1
|
||||
???.???##.#?##?#?? 1,1,2,1,6
|
||||
???#?#???#? 4,2
|
||||
?.#??????? 1,1,2
|
||||
.?.?.#?..# 1,2,1
|
||||
?.#.???????. 1,5
|
||||
?.#.?.#?##????? 1,1,4,2
|
||||
???????????#?? 4,1,4
|
||||
#?##????#??? 6,3
|
||||
?.????#?#???? 1,5,1
|
||||
??????#?#?. 7,1
|
||||
?#??.?.??###?????? 2,5,3,1
|
||||
##?????##????? 2,7,2
|
||||
#??#?..?##??.???#? 5,3,1,1
|
||||
.#?.?####???? 1,5,2
|
||||
???..?#?.? 1,1,1
|
||||
#??.???#?###??? 1,1,1,8
|
||||
?.?.?##????#..?#.?.? 1,1,8,2,1,1
|
||||
????.??????#? 1,2,1,1
|
||||
#?..?#??????.??? 1,6,2
|
||||
??#?.?####?? 3,6
|
||||
#.???????. 1,1,1
|
||||
#???????.?.???? 1,4,1,3
|
||||
???#??#??? 5,2
|
||||
?????.?????#???. 1,1,5,2
|
||||
##??#?#?.#?????#?. 7,1,2,1
|
||||
?????#?#.?????#??#?? 5,1,2,5
|
||||
?.##.???##?#???? 2,5
|
||||
#????.#???.??.?????? 1,3,4,1,1,2
|
||||
??#?#??#?.???##? 1,1,5,1,3
|
||||
?.?????.??. 2,1,1
|
||||
.??.?#??????#? 1,1,3,2
|
||||
??#??.????.? 4,1
|
||||
??.????#?.? 1,2,1
|
||||
#??#?.??#??? 1,2,1,2
|
||||
??.?##?.????? 3,4
|
||||
?.????#??.#????#??# 1,2,3,1,4,1
|
||||
?.#?..???#.?. 2,4,1
|
||||
?#???#??.#??#? 2,3,1,1
|
||||
?.???##???..#??#. 7,4
|
||||
#??#.?#??.????? 2,1,1,3
|
||||
?#?##????.? 7,1
|
||||
.??????#???##?? 4,7
|
||||
.?#??#?????..??? 6,1
|
||||
??#??#????#####???.? 6,6
|
||||
.????##.#?.???????. 6,2,4
|
||||
???.##?#??.?.##???.? 5,3
|
||||
..?..?#??..#?# 1,2,3
|
||||
##.?.??..?? 2,1,1
|
||||
???##????.?? 4,1,1
|
||||
.??##.???? 4,1
|
||||
??..???#??.????..?? 2,6,3,2
|
||||
?#??#??#?## 4,5
|
||||
??????.?#..??. 3,1,1,1
|
||||
??#?#??#??.???# 8,1,1,1
|
||||
.?#?.??#?.#.?#? 2,1,1,1,1
|
||||
?.?..??????#??. 1,6
|
||||
?.?.????????????? 1,7,1
|
||||
#??#????#.??????## 4,1,1,8
|
||||
?#.??#.#??#???#?#? 1,1,1,1,1,6
|
||||
???.????#????#?#.#? 2,1,2,4,1
|
||||
.?#?.???#? 2,1,1
|
||||
##????????? 3,4
|
||||
?#????#?#??#?#?#.? 2,4,6,1
|
||||
?????????##? 1,9
|
||||
?..#.#??#????#?#?? 1,4,5,1
|
||||
#??#?????? 4,4
|
||||
#.?.#??#?#???????##? 1,1,7,1,2
|
||||
????##?.?#..? 1,4,1
|
||||
????????#?. 2,2,1
|
||||
??.????.?#??.?#?? 1,2,4,1,1
|
||||
.??????.??##?# 1,1,5
|
||||
???#?#?.#??.#???? 7,3,2
|
||||
??.??#?.?. 2,1,1
|
||||
.#..????.? 1,1
|
||||
.???##????#??#? 1,2,6
|
||||
?..???#??#?? 1,1,5
|
||||
?#.??????#??#? 1,1,1,5
|
||||
#?.???.#?.?##?.#??#? 1,2,2,4,5
|
||||
??.?#???## 1,1,3
|
||||
?????.?.#????.?. 3,5,1
|
||||
?#?.???#?#?#.???# 2,7,1
|
||||
??.?..??..????....?. 2,2
|
||||
???#??##?.??? 7,1
|
||||
???#????.??????.???# 8,1,1,2,1,1
|
||||
??#????????#?#??.? 5,4
|
||||
####????????.?.??? 5,5,1,1,1
|
||||
????#?.????###?#. 3,7
|
||||
.??????????? 1,1,1,1
|
||||
##?????.##?? 2,1,3
|
||||
????????#?#?? 2,4
|
||||
??.#?.??#.??#??##?#? 1,2,3,9
|
||||
#??#?#?#??##???.??.? 4,1,6,1,1
|
||||
.?#..?##???? 2,4,2
|
||||
???.???##?? 2,6
|
||||
##???..?#? 4,2
|
||||
?.????#??.#.??#??? 1,2,1,4,1
|
||||
?##?#.???? 2,1,1
|
||||
?.?#????.?##??#??#?? 2,1,3,6
|
||||
#?????.?#?? 3,2,3
|
||||
.??#?????###??.?##?? 1,6,4
|
||||
??#.?#?.?##????? 1,1,1,3,1
|
||||
.??#??#?#?#???#.#? 12,2
|
||||
?.??.#?#?????.???#. 1,8,2,1
|
||||
#?..??#??? 1,1,4
|
||||
?.????..???#????? 1,2,1,5
|
||||
.???#???#####?? 4,7
|
||||
?.#????#??? 3,1
|
||||
????#???#???????.# 1,9,1,1,1
|
||||
??.???.?####. 1,4
|
||||
??.#???.?#?????. 1,1,1,4,1
|
||||
??.#????????..? 5,1
|
||||
.??#?????????.???. 1,2,5,1,1
|
||||
#??.###..? 1,3,1
|
||||
????#.?#??.??? 3,1,3,2
|
||||
###??????. 4,4
|
||||
.????#??#? 1,4
|
||||
?.#????????#???#?? 1,5,1,2,1,1
|
||||
?.???.???##? 1,1,3
|
||||
?????#??#??.??#? 2,3,1,3
|
||||
.???.?#???#????# 1,6,1,1
|
||||
?#???.???#?? 1,1,4
|
||||
?#????.???# 2,1,4
|
||||
??#?.?#????.?. 1,4
|
||||
?????#?????.???????. 6,3
|
||||
??#?#?????#.? 1,3,1,1
|
||||
??###..????.??#?#. 1,3,1,1,5
|
||||
??.??#??#. 1,2,1
|
||||
?????????????#?? 6,1,2
|
||||
?????##??????.#? 3,2,2,1,1
|
||||
.???????##?#..??#?. 5,4,3
|
||||
.#..????.??##?????.# 1,3,8,1
|
||||
?#?.???.#???? 3,1,2,1
|
||||
??????.??#??.#???. 2,1,2,1,1
|
||||
.??#?.?#?? 3,2
|
||||
#???.?..?..???##? 2,1,1,6
|
||||
?#.#.??????#? 1,1,6
|
||||
??.?????.?...???#? 1,4
|
||||
.?.???#...??##?.. 3,4
|
||||
..?###..???#??.???? 4,2,1,1,1
|
||||
..???.????## 1,1,5
|
||||
..?#?????? 2,2
|
||||
.???????????? 2,1
|
||||
#??#????#??????? 5,5,1
|
||||
???#??.????#?#.?#??? 5,1,5,2,1
|
||||
?#?#??????#??##?.??. 6,8
|
||||
?.#?#.?.?????? 1,1,5
|
||||
.#???#?#??????.????# 1,3,1,3,1,1
|
||||
.??????#??????#.?? 2,5
|
||||
..#.??????#???? 1,1,1,3,1
|
||||
.#.??#????.? 1,1,1,1
|
||||
?#?#????#????.?#? 1,2,3,1,3
|
||||
??.#?????.?.?? 1,1,3,1
|
||||
?.#??????? 1,5
|
||||
??#.??????##??#??? 1,5,7
|
||||
.???????#????##.??. 14,1
|
||||
????###???.?.????# 2,6,1,1,3
|
||||
?#?#?.????.##. 4,1,1,2
|
||||
?#????.?##?#?#? 4,6
|
||||
?????#?#?.?####?? 1,4,5
|
||||
#??????.#??#???# 3,2,1,6
|
||||
#?.??.#??????.? 2,7,1
|
||||
?????.???.?????? 2,1
|
||||
??????????? 2,1,3
|
||||
?#??.??????. 3,5
|
||||
?##????.??...# 3,2,1,1
|
||||
?#.?.#???? 1,2,1
|
||||
##??????.?????? 4,2,1,2
|
||||
??#??#?????????#. 12,3
|
||||
????.?.#?## 3,4
|
||||
.??#?????.. 3,1
|
||||
??#.?.?#.#??#?# 3,1,1,2,3
|
||||
???#?.??????#?? 3,3,1,1
|
||||
??#?#?##.????#..? 8,1,2,1
|
||||
#??#???#?#?#??#? 1,2,10
|
||||
??#??##??.#?.??? 1,2,1
|
||||
??#????##?? 2,7
|
||||
??#?#.?#??.#??#??? 4,1,1,1,1,1
|
||||
....??#???..???#??? 6,4
|
||||
??##???????#?? 3,3,3
|
||||
?#????#?.??.## 2,4,1,2
|
||||
.???.????.?#??.? 1,1,1,1,4
|
||||
?###????##??#?#?? 12,3
|
||||
???#?.????#?? 5,5
|
||||
??##???????????. 6,1,1
|
||||
?????.?#?##???###? 2,1,2,2,1,4
|
||||
??.?.#?.?#???#? 2,1,1,3,1
|
||||
???????##???.??? 9,3
|
||||
?.??#??#??#?????? 1,12,1
|
||||
..??????#?#?????? 1,9
|
||||
??.?#?#???? 2,4
|
||||
?.?.??#??.? 1,1
|
||||
???#?.??????.?.?.?? 5,2,1
|
||||
?#?#?##???..??? 9,2
|
||||
?#?.???#?#?.? 2,3,1,1
|
||||
??????.??? 4,2
|
||||
?.??..?.?.????.??. 1,1
|
||||
..??##.??#? 2,1
|
||||
..??.????#. 1,5
|
||||
.???.?????#? 1,1,6
|
||||
?#??#??#??#?# 5,1,2,1
|
||||
?????#???..? 1,5
|
||||
.#??????????? 2,2,3
|
||||
??.#?.?.?. 1,1,1
|
||||
???????#??.???.#? 1,4,2,2
|
||||
????#???????.?..?? 1,3,2,2,1,2
|
||||
??.###?#?..?#???? 5,2
|
||||
#????##?#?##??. 1,3,1,4
|
||||
?.??.?#??. 1,1,3
|
||||
.#?.?????#??##???? 2,1,1,6
|
||||
?.?????##.??? 4,2,2
|
||||
.?.???##??? 1,4
|
||||
??#.???????#?.?????? 3,3,5,2,1
|
||||
???##?#??.??? 3,2
|
||||
??##?#????..# 7,1,1
|
||||
???????.???????.#.? 1,1,1,7,1
|
||||
?????#??#????#?? 8,4
|
||||
????#.#####?#??? 2,1,8
|
||||
???????#????##?#?.?# 16,2
|
||||
?.????#??.#??###?#?? 2,3,9
|
||||
????????#?.??????.?? 1,6,1,2,1
|
||||
?.#??#????.?#?????.? 5,1,7
|
||||
?.#.##?##??.#.??.. 1,1,6,1,1
|
||||
#????????.??.#?? 1,4,1,1,3
|
||||
??..?#?###?#??#???? 1,8,2,1
|
||||
.?????#?#???.??. 2,6
|
||||
?#?????.#????? 6,1,1,1
|
||||
.??????????? 2,1,1,1
|
||||
#?#.#??#?.????#??# 3,5,1,1,2
|
||||
?#????.#?##??##? 2,1,8
|
||||
?????#?.???### 3,4
|
||||
.????#???..?##?????? 5,7
|
||||
???#?.????#####???# 1,2,10
|
||||
????.?#??# 3,4
|
||||
???#.#?.??###.#?#? 2,2,3,1,1
|
||||
?#???.?????..#?. 1,1,2,1
|
||||
##???????## 3,6
|
||||
####.???.# 4,1
|
||||
?##???##?#???.#?#??? 10,5
|
||||
..??????.??.?# 2,1
|
||||
??????.#?.? 2,1,1
|
||||
.?#??????##?##. 5,5
|
||||
??..???##??#.??. 1,8,1
|
||||
.#????.#??. 2,1
|
||||
#??.#?.????.? 3,1,3,1
|
||||
#?#?????.???.?.?. 5,2,1,1,1
|
||||
????.??.??#?#??.?#? 1,1,1,6,1
|
||||
..?.?..???? 1,1
|
||||
?##??????#????.?? 3,5,1
|
||||
???.????#??## 1,2,1,3
|
||||
???????#?????#??? 4,2,3
|
||||
???#?.?.##?#?????.? 1,1,1,9,1
|
||||
.#??#?#??..?? 2,4,1
|
||||
?.??.???.??#?.?##?. 1,2,1,4,3
|
||||
???.?#??#??? 2,6
|
||||
.##??#????? 2,2,2
|
||||
???????????#? 3,1,1,2
|
||||
.????#.#??????#. 1,2,5,1
|
||||
?.##?????..???#????? 1,7,1,1,2,1
|
||||
??.#??#??????#?????# 1,4,1,10
|
||||
?????????.? 1,4
|
||||
???#?#?#.??.?????#? 6,1,1,3
|
||||
??????.?##?# 5,5
|
||||
#??..???#????? 3,8
|
||||
?#.??.??#?#. 1,1,1,1
|
||||
??.????.?#??.#? 1,1,3,2
|
||||
..#???.???.???.#. 4,2,2,1
|
||||
?????????.?#?.???? 1,3,1,2,2
|
||||
??##?????#?#???.???? 2,9
|
||||
?##??????#. 3,1,2
|
||||
.?#??#??#?????? 1,6,1,1
|
||||
.???#.???###????#??. 4,6,2,1,1
|
||||
?#??#???#?#????.? 2,1,5,3
|
||||
?#?.?????#.?#?#?? 2,1,1,2,6
|
||||
#?.#?.#??????#???.# 1,1,1,1,6,1
|
||||
?.?##????#?? 4,2
|
||||
####???????# 5,2,2
|
||||
???.?????#??? 2,1,1,1
|
||||
?.????#.#??#???? 1,2,1,5,1
|
||||
##?.#?#???#?????#??# 3,8,1,1,2
|
||||
..???##.?? 1,2,2
|
||||
??#????#?#?#?#.???#? 3,1,7,1,2
|
||||
.???.#?????# 2,2,1
|
||||
..?#????.?? 2,3
|
||||
?????.??????? 1,1,2,1
|
||||
?????###?#?..##???#? 8,6
|
||||
?#?.??????????? 1,1,1,1,3
|
||||
??##?.?##? 4,2
|
||||
#??##?.?????#????? 1,4,1,6,1
|
||||
????#??#??? 1,7
|
||||
???????#???# 2,6
|
||||
??##????#?#??????.? 1,2,3,1,1,1
|
||||
?.?.???##??#? 1,1,5
|
||||
.???#??.??.. 1,3,1
|
||||
???????###??#?##?. 1,12
|
||||
??.????.?# 1,1,1
|
||||
??#???##??..#?.#. 3,4,1,1
|
||||
??????.#?????#???? 6,2,2,2
|
||||
###..????#?#..????#? 3,2,3,2,3
|
||||
#?#????#??#????? 6,4,1
|
||||
?????.????.????.??? 2,1,3,4,1,1
|
||||
???.?#??#?? 2,4
|
||||
.??.???#??#???##??#. 1,6,3,1
|
||||
?.???.?.???? 3,3
|
||||
.?#?.??#???????. 3,9
|
||||
????##?#?.?#?.# 1,4,2,2,1
|
||||
??..???##?? 1,7
|
||||
?..????.???????# 3,4
|
||||
?.?..??#.? 1,1
|
||||
.??#??#?#?????.?? 7,2
|
||||
???##????.?#??.?.#?. 6,2,2,1,1
|
||||
?#?###??????.?#?.?. 9,2
|
||||
.????.????##..#?#??? 2,1,3,4,1
|
||||
??..??.??? 2,1
|
||||
.??#??????.?#?.? 1,1,3,2,1
|
||||
??..??#?##.?..? 2,5,1,1
|
||||
?.#.??#?#? 1,5
|
||||
.???#???.?????#??#? 3,1,1,2,2,1
|
||||
?????.?.???#?? 3,5
|
||||
?.??#???##?#???# 1,13
|
||||
??????.?..???????. 4,1,2
|
||||
????.#?#??#???#???? 2,4,7
|
||||
.??.??.?#.?? 1,1,1,1
|
||||
#.????#??? 1,7
|
||||
????????##???.??#? 3,6,1,3
|
||||
.?????##?##???????? 14,1
|
||||
.?.???.##? 1,3
|
||||
???????#?##??.? 1,1,1,6,1
|
||||
?#?.????#?#.#??.??# 2,4,1,3,1
|
||||
??.??.??#? 1,1,3
|
||||
.??##??.?#??#?#?#?.? 4,7,2
|
||||
??#???????#???# 4,1,3,2
|
||||
#??#????##???? 1,11
|
||||
?.#?????#?? 2,2
|
||||
.????#???###??#? 3,10
|
||||
????.?#???.#? 4,2,2,1
|
||||
??.????.?..#.??? 1,4,1,1,1
|
||||
.??.????#??.?.?#?#? 1,2,3,1,2,2
|
||||
.????????## 1,1,3
|
||||
?##?????#??#?##?## 9,1,2,2
|
||||
?##??????????.???? 7,1,1,1,1
|
||||
??.?????#.??.? 1,4,1,1
|
||||
.????#??#??#.?#????? 11,7
|
||||
??.?.?#?#???????? 2,7
|
||||
?????####????.?#. 9,2,1
|
||||
???????.??? 1,1,2
|
||||
?????.??..#?.## 2,1,1,1,2
|
||||
??????#?.??????? 2,3
|
||||
?????#.#?##??????#?? 5,6,5
|
||||
?###??.??????..??? 4,4,2
|
||||
?##???????? 4,2,1
|
||||
.??????#??????.?.?#. 13,2
|
||||
.?.#?#???#????#?? 1,4,5,1,1
|
||||
??????????. 1,6
|
||||
?.???????#?????#? 9,2
|
||||
#??.??.???????????. 3,4,2,1,1
|
||||
???#??..????#.??##?# 3,4,3,1
|
||||
????#??..?#. 5,1,1
|
||||
????#??.???.?? 1,4,1,1
|
||||
?#?????.????#? 1,2,4
|
||||
?#??#.??????#?.????? 3,1,2,1,1,3
|
||||
?.?????.#??? 1,2,1,1
|
||||
.??.????##??.??????? 2,7,1,2
|
||||
???#?....?????#???? 2,6,1
|
||||
.?????.??###?..? 5,4
|
||||
.#??###?#?.???? 9,1,1
|
||||
?#?.#????.?..??##?#? 2,1,1,1,1,5
|
||||
.??#??#?#??.#?.??.? 1,8,1,2
|
||||
??.??.?#???#?#??#?? 1,11
|
||||
#????###??##.? 8,2
|
||||
????.#?#???. 1,1,4
|
||||
??#??#?.#?#?##??# 1,1,1,7,1
|
||||
#?#?.???#??..#. 4,1,1,1,1
|
||||
.??#?#??#?.?? 5,2
|
||||
?.??????#?? 1,3,1
|
||||
???.?????# 1,1,2
|
||||
??#..#?.##? 3,1,2
|
||||
?.?.#?????????#?# 1,7,2,1
|
||||
#??#?#?#?..?.????? 4,1,2,1
|
||||
?.?#.?..#.?.. 2,1
|
||||
????????###.?#??? 2,1,1,3,4
|
||||
#???#?????#????...? 1,11,1
|
||||
.#?#?#????#????#?# 1,1,7,5
|
||||
?.?#.?.??.?. 1,1,1,1
|
||||
.?#.????## 1,1,3
|
||||
???.????#???.??...? 3,6,1
|
||||
?.?###???#????#?#? 1,5,1,2,1,1
|
||||
????????#??.? 5,2,1,1
|
||||
???.?.?.?? 1,1,2
|
||||
..?#?..???? 3,2
|
||||
?.#??#?####???#.?? 1,11,1,1
|
||||
??.##????#????. 1,4,1,2
|
||||
????????.?#??##? 2,1,1,1,3
|
||||
?????#.??????.? 3,1,1,2
|
||||
????.?#?..?# 1,1,3,2
|
||||
#??.???????#???#.? 1,1,2,1,6,1
|
||||
###????#?? 5,2
|
||||
##??#.??????#?.?# 5,1,4,1
|
||||
#?..?#?.??#?.?#? 2,2,3,3
|
||||
??????.?####? 1,1,6
|
||||
??.???????..?.???## 2,1,1,1,1,5
|
||||
?..???#???????#?. 4,5
|
||||
???#??.#?? 3,1,1
|
||||
??#??#?.???? 5,1
|
||||
?#??????#?. 2,2
|
||||
?.???.?????#?#. 1,2,1,5
|
||||
?.???????????? 2,1,1,2
|
||||
.?##?.???#?#? 3,4
|
||||
???.??????#??.#???? 3,7,2,2
|
||||
?#??????##??.?#?#?? 11,2,2
|
||||
??.?.????# 1,4
|
||||
????.?.?????????? 3,4,1
|
||||
???????#???##?? 8,3
|
||||
?..?.??#?????#?.?? 1,9,1
|
||||
.????#???#?.? 5,3,1
|
||||
..???##??##?#? 2,9
|
||||
?#????????#??. 2,2,4
|
||||
??..??#??#??#???##?. 1,1,1,5,4
|
||||
?????????#?????#??#? 2,1,10,2
|
||||
?????#??#?????#???.# 4,1,6,1,1,1
|
||||
??????#??# 4,2,1
|
||||
?#?..??.?#???#?##?# 2,1,11
|
||||
?#?.????#? 3,3,1
|
||||
??#?.???????? 2,1,2,1
|
||||
???.????##???.### 2,1,6,3
|
||||
.????####??.#? 1,8,1
|
||||
?.???#??#?.?. 3,1
|
||||
...??.???#?#?#?.? 1,6
|
||||
#??.?#?.?#.?????? 3,1,2,1,1
|
||||
#?????.##?#??.?. 2,2,5
|
||||
?????#?.????.?# 6,1,1,2
|
||||
?????#.?#.????? 3,1,2,1,1
|
||||
????#????.????? 3,1
|
||||
##???#?.?. 2,2
|
||||
?????.#?.#??#?#?.??? 1,1,1,1,5,1
|
||||
??#?.??..? 4,2,1
|
||||
?#????#???#??.. 2,1,6
|
||||
.?#?????#?.????? 8,1
|
||||
??#???..?. 1,1,1
|
||||
.?#??.??.#.??? 4,1,1,1
|
||||
?####?#?.??#.???. 7,1,2
|
||||
.##????.?? 2,2
|
||||
??.#.??#??.?#????#? 1,1,2,5,1
|
||||
???.????#?#?# 1,1,6,1
|
||||
?##????.#?#?.??#?#? 2,1,3,4
|
||||
#??##??#.???? 1,6,1,1
|
||||
##?##?????? 2,3,1
|
||||
???????#.##?##?? 2,3,6
|
||||
.???#???????? 8,1
|
||||
??#?##??..? 7,1
|
||||
#???????????? 2,5,1,1
|
||||
?#??##????#??? 5,6
|
||||
?##????????##?.??? 5,6,1
|
||||
??????.?#?#?##. 1,1,2,1,4
|
||||
????????.??#???#?? 1,1,1,1,2,2
|
||||
..?.#?.?????#?#? 2,1,5
|
||||
.?#???#?##?????#?? 2,7,1,3
|
||||
??#?.????????? 2,2,1,3
|
||||
?????????.??## 7,2
|
||||
?#.??.??#?#? 2,1,2,2
|
||||
??????????..??#???.? 1,5,1,2,1,1
|
||||
##??.???????..???.. 2,7,2
|
||||
.#?#?????????##??# 4,5,4,1
|
||||
.??.#??#?#?? 1,7
|
||||
?..?.##?.???????.? 2,4
|
||||
?.??????#??#??? 1,1,1,6
|
||||
##?#?.??#????????#? 5,2,1,1,1,1
|
||||
.?#?#?.?#??#?.?? 4,6,1
|
||||
????????#?????.????. 1,1,4,1,1,4
|
||||
.?????.??#?.??? 2,1,1,1,1
|
||||
#?#???#?#?? 5,1,1
|
||||
??.?#???##?#?# 1,1,6,1
|
||||
??????#?##?.?. 2,6
|
||||
.?#??##??.????## 8,1,1,2
|
||||
.?#?.?????. 2,3
|
||||
#??????#????####? 2,4,6
|
||||
??.#??#??#?##??? 4,1,2,1
|
||||
???###?.?? 1,4
|
||||
??.????.???.#?.??.? 2,2,1,2,1,1
|
||||
??..???.??? 1,1,2
|
||||
#???#?#???##?.??? 7,3,3
|
||||
.???#???##??..#?? 10,3
|
||||
?????#??????#??? 1,2,1,5
|
||||
??????????#???##? 10,2
|
||||
.??????###? 1,4
|
||||
?.??#??#??.###???? 1,5,1,3,1
|
||||
?????.?????#? 3,2,1,2
|
||||
#??.??#???#?. 3,8
|
||||
???#??????#?. 3,6
|
||||
??.?????#??????.? 1,4,3,2
|
||||
??##???##?#????.?#? 6,2,2,1,2
|
||||
?.??.????#??# 1,1,2,2
|
||||
?????..??.???#?#?.? 1,1,2,6,1
|
||||
?????##???????.? 8,1,1
|
||||
????..????#???.##?? 3,7,3
|
||||
?????#???#????#???? 2,11,1
|
||||
?????.???#.????.?? 1,1,1,4,1,1
|
||||
.?.?#???????.????#?? 9,2
|
||||
???#?#?#???#. 1,1,3,3
|
||||
##????#?.??.?????. 8,1,1,1,1
|
||||
?????????? 3,1
|
||||
.?#?.?.#??.. 2,1
|
||||
.????.??#?? 3,2
|
||||
#?#??###?#??#????#? 1,12,3
|
||||
##?.?#???.??# 2,3,3
|
||||
##?????#????? 3,8
|
||||
???.#..????.?#??#? 1,1,3,1,3
|
||||
??#.?????.?#?##? 3,3,1,1,3
|
||||
#?????????#????????? 11,2,1
|
||||
?#?##?????? 5,2
|
||||
?.#..?#.?????.???.?? 1,1,2,5,1,2
|
||||
??#????#.?? 8,1
|
||||
??#?#??#?#.? 1,4,1
|
||||
?.??..?.??#??? 2,3
|
||||
??????????.?. 2,1
|
||||
?????#.??#?.? 2,1,1,2
|
||||
.?#??##??#.?? 6,1
|
||||
??#??#?.?#??? 1,1,1,4
|
||||
#???##?????? 1,1,2,3
|
||||
???#.?#???????? 1,1,6,1
|
||||
?#????.?##???#??? 4,3,1,1
|
||||
..?.???.?.??##?.. 1,4
|
||||
????..??#??#??.?? 1,6,1
|
||||
?.#??####??.??????? 7,1
|
||||
??..?#.#??#??????? 1,2,1,2,1,1
|
||||
??.?#???#?##.??#?? 1,3,4,5
|
||||
????.???.?#?? 2,1,1,3
|
||||
??.#?.??.?..?? 2,1,1
|
||||
.#??###...#???... 6,2
|
||||
.?????????#.?#??#.# 1,1,3,1,5,1
|
||||
???????.?? 1,3,1
|
||||
??.##?.##???????#??? 2,3,5,1,4
|
||||
??#???#.??###???? 7,4,1
|
||||
???????#???.?? 5,1
|
||||
??#???#??? 1,1,5
|
||||
??????#?..???. 7,2
|
||||
????????#?????#? 2,1,9
|
||||
????..???#?#? 1,7
|
||||
.??????.???##? 1,2,1,3
|
||||
?????#????.??? 3,4,2
|
||||
?#???##..?????? 3,2,3
|
||||
?##??#???????#??? 2,2,1,5
|
||||
.??.???#####???????? 1,8,4
|
||||
?????#???.??????#??? 1,2,2,9
|
||||
.?##?#??##?..?? 2,6,1
|
||||
??.??????##???? 1,7,2
|
||||
.???????#?? 1,5
|
||||
??#?.?#?.? 1,2
|
||||
?#??????#??#????? 1,1,4,1,1
|
||||
??#?.??.???.? 3,1,3
|
||||
?#??..???????#?#? 1,2,2,5
|
||||
..?????.?#?. 3,2
|
||||
##.??#?####??#???#.? 2,2,7,3
|
||||
?.????????. 2,1
|
||||
????..??.#?##.?#? 1,1,1,4,1
|
||||
?#??#?#??.???#? 8,3
|
||||
???.?#??.???#????? 1,1,1,1,5,2
|
||||
?.???????? 1,1,4
|
||||
#????#????#???.# 1,1,6,2,1
|
||||
?#?#???#.#?? 7,1
|
||||
##???#?.????????? 2,1,1,9
|
||||
#????????..?.?#? 1,1,3,1,1
|
||||
.?.????.?????.?? 2,4
|
||||
????#.##?? 3,3
|
||||
?.?????.?????? 1,5,1,1
|
||||
#?.????#???? 2,1,4,1
|
||||
?.??.???????## 1,1,2
|
||||
.????..?###?.. 1,4
|
||||
??#?.?.?#. 2,1,1
|
||||
.?#.?#.??. 1,1,1
|
||||
.??##??##??#?#? 8,3
|
||||
#??.#??.??.#? 3,3,1,2
|
||||
#?.?#.#.???#?#??#?.# 1,1,1,8,1
|
||||
??????...#?????.# 1,1,1,4,1
|
||||
.#.#??##.??##???? 1,5,7
|
||||
???#?????# 4,3
|
||||
?##????#??????? 6,2,2,1
|
||||
#?????.?##.?.??? 3,1,2,1,1
|
||||
?..?.#????.? 1,1,1,1
|
||||
.?#?.#????#???#??? 1,12
|
||||
?#??#?????##? 4,4
|
||||
.??.??#?#? 1,5
|
||||
??.????#????#??? 4,6
|
||||
????#????#. 6,1
|
||||
#?##???#?.?#?? 9,1
|
||||
#??#??.??#.?..??? 2,1,3,2
|
||||
#???????#?#?##?? 4,7,1
|
||||
???.?#???##..???#? 2,3,3,1,1
|
||||
?????#.?????.? 2,2,3
|
||||
??..?#????.#?. 2,2,2
|
||||
.???#???..??##?#? 6,1,4
|
||||
?##?#.#?????..??? 2,1,3,2,3
|
||||
.#???#?????.#.?? 1,1,5,1,2
|
||||
#?????#??.??????. 2,5,1,3
|
||||
??.?###.###??? 1,4,3
|
||||
???.??..????#? 3,1,1,1
|
||||
?.?.?????##? 1,1,1,2
|
||||
????.?????#?.??? 2,1,3,3
|
||||
??#?.?#??#???.??.? 4,5,2,1,1
|
||||
###??.#?.?. 5,2
|
||||
??#..????#?.????? 2,5,2,1
|
||||
????.????? 2,1,1
|
||||
??##?.?.????.???? 4,3,1,1
|
||||
??????#???.?. 1,2
|
||||
.??#?#?#??#??#? 1,1,9
|
||||
.???????????#???. 1,4,2,2
|
||||
??.?.#??###??????? 1,11,1
|
||||
#####?????? 6,2
|
||||
.??.???#??#??. 1,3,3
|
||||
?????#.?.?#? 2,1,1
|
||||
?#????##?#??.???#?? 3,6,4
|
||||
?..#?.?#??#???.#??#? 1,1,2,2,5
|
||||
#????.??#.??#??.?? 1,1,1,2,5,1
|
||||
?##???????#?#?????. 2,9,3
|
||||
.????#??.?#?? 4,2
|
||||
?????##?#?#?#? 1,10
|
||||
?????#??????. 1,1,4
|
||||
?.??#??##??##??.? 1,5,3,1
|
||||
??#?##.?#??.?#? 5,3,1
|
||||
??#??#?#???#?#?#. 3,1,1,4,1
|
||||
????#?.?##?????#???# 1,3,5,3,1
|
||||
.??#????.?##???#?? 3,7
|
||||
???#?.##?.?##?..???? 4,2,4,2
|
||||
??.??????????#. 1,2,3,1
|
||||
???#???#?? 2,2,3
|
||||
.?#?##?#?#??.??#??#? 9,6
|
||||
????#?#?#??#?.???? 4,3,2,1
|
||||
??#?????????##?.??? 3,2,4,2
|
||||
???????????. 1,1,1,1
|
||||
#??##???????#?? 9,2
|
||||
?##?####??#???.?? 8,1,1
|
||||
??##?.??#?#??.? 4,7
|
||||
????#?????##??.??? 1,3,7,3
|
||||
?.?#?..??.??#?.??# 1,2,2,1,2,2
|
||||
??#?#?#??.??? 7,1
|
||||
?.?#?#..??? 3,1
|
||||
?#..?.#?.?. 2,1,1
|
||||
???.?#??.??. 1,3
|
||||
..???.#???##?#.? 2,8
|
||||
?????#.??# 1,1,1
|
||||
??###??????#???#? 8,5
|
||||
#????.#?#???#?##?#?# 1,1,1,1,1,9
|
||||
?????????.??? 2,1,3,2
|
||||
.????..??.? 1,2,1
|
||||
?#??.?#.#?.????.? 4,2,1,2,1
|
||||
?#???##?????????? 1,5,1,1,1
|
||||
.??.???##?????#?.?#? 1,12,1
|
||||
??.????.?..?.???. 2,1
|
||||
+109
@@ -0,0 +1,109 @@
|
||||
use itertools::Itertools;
|
||||
use std::fs::File;
|
||||
use std::io::{BufRead, BufReader, Lines};
|
||||
|
||||
// BOILERPLATE
|
||||
type InputIter = Lines<BufReader<File>>;
|
||||
|
||||
fn get_input() -> InputIter {
|
||||
let f = File::open("input").unwrap();
|
||||
let br = BufReader::new(f);
|
||||
br.lines()
|
||||
}
|
||||
|
||||
fn main() {
|
||||
println!("Problem 1 solution: {}", problem1(get_input()));
|
||||
println!("Problem 2 solution: {}", problem2(get_input()));
|
||||
}
|
||||
|
||||
// PARSE
|
||||
|
||||
#[derive(Debug)]
|
||||
struct SpringRow {
|
||||
springs: Vec<char>,
|
||||
spans: Vec<usize>,
|
||||
}
|
||||
|
||||
impl From<&str> for SpringRow {
|
||||
fn from(s: &str) -> Self {
|
||||
let (springs_s, spans_s) = s.split_once(' ').unwrap();
|
||||
SpringRow {
|
||||
springs: springs_s.chars().collect(),
|
||||
spans: spans_s.split(',').map(|x| x.parse().unwrap()).collect(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl SpringRow {
|
||||
fn possible_arrangements(&self) -> u64 {
|
||||
let mut permutations = vec![self.springs.clone()];
|
||||
while let Some(cur) = permutations.iter().position(|perm| perm.contains(&'?')) {
|
||||
let perm = permutations.remove(cur);
|
||||
let rep_pos = perm.iter().position(|c| *c == '?').unwrap();
|
||||
|
||||
let mut new_elem = perm.clone();
|
||||
|
||||
new_elem[rep_pos] = '.';
|
||||
permutations.push(new_elem.clone());
|
||||
new_elem[rep_pos] = '#';
|
||||
permutations.push(new_elem);
|
||||
}
|
||||
|
||||
permutations
|
||||
.iter()
|
||||
.filter_map(|perm| {
|
||||
let groups: Vec<usize> = perm
|
||||
.iter()
|
||||
.group_by(|c| **c == '#')
|
||||
.into_iter()
|
||||
.filter_map(|(key, group)| if key { Some(group.count()) } else { None })
|
||||
.collect();
|
||||
if groups == self.spans {
|
||||
Some(())
|
||||
} else {
|
||||
None
|
||||
}
|
||||
})
|
||||
.count() as u64
|
||||
}
|
||||
}
|
||||
|
||||
// PROBLEM 1 solution
|
||||
|
||||
fn problem1<T: BufRead>(input: Lines<T>) -> u64 {
|
||||
let rows: Vec<SpringRow> = input
|
||||
.map(|row| SpringRow::from(row.unwrap().as_str()))
|
||||
.collect();
|
||||
|
||||
rows.iter().map(|row| row.possible_arrangements()).sum()
|
||||
}
|
||||
|
||||
// PROBLEM 2 solution
|
||||
fn problem2<T: BufRead>(input: Lines<T>) -> u64 {
|
||||
0
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use crate::*;
|
||||
use std::io::Cursor;
|
||||
|
||||
const EXAMPLE: &str = &"???.### 1,1,3
|
||||
.??..??...?##. 1,1,3
|
||||
?#?#?#?#?#?#?#? 1,3,1,6
|
||||
????.#...#... 4,1,1
|
||||
????.######..#####. 1,6,5
|
||||
?###???????? 3,2,1";
|
||||
|
||||
#[test]
|
||||
fn problem1_example() {
|
||||
let c = Cursor::new(EXAMPLE);
|
||||
assert_eq!(problem1(c.lines()), 21);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn problem2_example() {
|
||||
let c = Cursor::new(EXAMPLE);
|
||||
assert_eq!(problem2(c.lines()), 0);
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user