Compare commits

...

2 Commits

Author SHA1 Message Date
Johannes
6e92d937a9 day05 part 1 (2 WIP) 2018-12-05 08:44:50 +01:00
Johannes
baacb780ba day04 both 2018-12-04 20:15:20 +01:00
9 changed files with 1252 additions and 2 deletions

66
Cargo.lock generated
View File

@@ -10,6 +10,7 @@ dependencies = [
name = "aoc_2018" name = "aoc_2018"
version = "0.1.0" version = "0.1.0"
dependencies = [ dependencies = [
"chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
"regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
] ]
@@ -18,6 +19,16 @@ name = "cfg-if"
version = "0.1.6" version = "0.1.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "chrono"
version = "0.4.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)",
"num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
"time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]] [[package]]
name = "lazy_static" name = "lazy_static"
version = "1.2.0" version = "1.2.0"
@@ -38,6 +49,24 @@ dependencies = [
"version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
] ]
[[package]]
name = "num-integer"
version = "0.1.39"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "num-traits"
version = "0.2.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "redox_syscall"
version = "0.1.43"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]] [[package]]
name = "regex" name = "regex"
version = "1.1.0" version = "1.1.0"
@@ -66,6 +95,16 @@ dependencies = [
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
] ]
[[package]]
name = "time"
version = "0.1.40"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)",
"redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]] [[package]]
name = "ucd-util" name = "ucd-util"
version = "0.1.3" version = "0.1.3"
@@ -81,15 +120,42 @@ name = "version_check"
version = "0.1.5" version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "winapi"
version = "0.3.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "winapi-i686-pc-windows-gnu"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "winapi-x86_64-pc-windows-gnu"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[metadata] [metadata]
"checksum aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1e9a933f4e58658d7b12defcf96dc5c720f20832deebe3e0a19efd3b6aaeeb9e" "checksum aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1e9a933f4e58658d7b12defcf96dc5c720f20832deebe3e0a19efd3b6aaeeb9e"
"checksum cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4" "checksum cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4"
"checksum chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878"
"checksum lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1" "checksum lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1"
"checksum libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)" = "10923947f84a519a45c8fefb7dd1b3e8c08747993381adee176d7a82b4195311" "checksum libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)" = "10923947f84a519a45c8fefb7dd1b3e8c08747993381adee176d7a82b4195311"
"checksum memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0a3eb002f0535929f1199681417029ebea04aadc0c7a4224b46be99c7f5d6a16" "checksum memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0a3eb002f0535929f1199681417029ebea04aadc0c7a4224b46be99c7f5d6a16"
"checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea"
"checksum num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1"
"checksum redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "679da7508e9a6390aeaf7fbd02a800fdc64b73fe2204dd2c8ae66d22d9d5ad5d"
"checksum regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "37e7cbbd370869ce2e8dff25c7018702d10b21a20ef7135316f8daecd6c25b7f" "checksum regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "37e7cbbd370869ce2e8dff25c7018702d10b21a20ef7135316f8daecd6c25b7f"
"checksum regex-syntax 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4e47a2ed29da7a9e1960e1639e7a982e6edc6d49be308a3b02daf511504a16d1" "checksum regex-syntax 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4e47a2ed29da7a9e1960e1639e7a982e6edc6d49be308a3b02daf511504a16d1"
"checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b" "checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
"checksum time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "d825be0eb33fda1a7e68012d51e9c7f451dc1a69391e7fdc197060bb8c56667b"
"checksum ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "535c204ee4d8434478593480b8f86ab45ec9aae0e83c568ca81abf0fd0e88f86" "checksum ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "535c204ee4d8434478593480b8f86ab45ec9aae0e83c568ca81abf0fd0e88f86"
"checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737" "checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737"
"checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd" "checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
"checksum winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0"
"checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
"checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"

View File

@@ -5,3 +5,4 @@ authors = ["Johannes <jschaef@mail.uni-paderborn.de>"]
[dependencies] [dependencies]
regex = "1.1.0" regex = "1.1.0"
chrono = "0.4.6"

979
input/day04.txt Normal file
View File

@@ -0,0 +1,979 @@
[1518-07-10 23:54] Guard #3167 begins shift
[1518-04-15 00:20] falls asleep
[1518-09-30 00:49] wakes up
[1518-05-29 00:57] wakes up
[1518-11-03 00:00] Guard #1319 begins shift
[1518-06-07 00:03] Guard #1619 begins shift
[1518-09-02 00:15] falls asleep
[1518-04-26 00:48] wakes up
[1518-11-02 00:56] wakes up
[1518-08-30 00:22] falls asleep
[1518-06-11 00:00] Guard #1319 begins shift
[1518-08-07 00:57] wakes up
[1518-09-08 00:59] wakes up
[1518-11-23 00:00] Guard #2861 begins shift
[1518-05-21 00:39] wakes up
[1518-08-19 23:57] Guard #1319 begins shift
[1518-07-05 00:39] falls asleep
[1518-06-02 23:57] Guard #101 begins shift
[1518-09-02 00:58] wakes up
[1518-11-08 23:59] Guard #263 begins shift
[1518-10-07 00:15] falls asleep
[1518-06-06 00:03] Guard #1319 begins shift
[1518-08-11 00:57] wakes up
[1518-06-01 00:51] falls asleep
[1518-10-24 00:26] wakes up
[1518-05-16 23:57] Guard #1619 begins shift
[1518-11-17 00:13] falls asleep
[1518-04-21 00:37] wakes up
[1518-09-03 00:55] wakes up
[1518-10-30 00:10] wakes up
[1518-04-18 00:49] wakes up
[1518-11-07 00:51] wakes up
[1518-07-05 00:52] falls asleep
[1518-09-09 00:46] wakes up
[1518-06-06 00:33] falls asleep
[1518-06-08 00:42] wakes up
[1518-08-17 00:02] falls asleep
[1518-11-17 00:24] wakes up
[1518-05-28 00:50] falls asleep
[1518-04-27 00:00] Guard #3203 begins shift
[1518-04-20 00:01] Guard #2539 begins shift
[1518-05-25 00:24] falls asleep
[1518-08-13 00:04] falls asleep
[1518-09-05 23:57] Guard #1913 begins shift
[1518-08-31 00:03] Guard #521 begins shift
[1518-05-05 00:42] falls asleep
[1518-10-26 00:01] Guard #1069 begins shift
[1518-07-20 00:03] Guard #809 begins shift
[1518-07-04 00:24] wakes up
[1518-04-01 00:00] Guard #3167 begins shift
[1518-07-07 00:50] falls asleep
[1518-07-12 00:48] wakes up
[1518-10-02 00:16] falls asleep
[1518-04-10 00:17] falls asleep
[1518-09-17 00:06] falls asleep
[1518-10-23 23:50] Guard #3203 begins shift
[1518-08-20 00:48] falls asleep
[1518-08-09 00:15] wakes up
[1518-11-08 00:19] falls asleep
[1518-10-03 00:56] falls asleep
[1518-11-06 00:21] falls asleep
[1518-04-18 00:03] Guard #421 begins shift
[1518-07-15 00:26] wakes up
[1518-09-29 23:49] Guard #1237 begins shift
[1518-05-28 00:04] Guard #2441 begins shift
[1518-10-10 23:52] Guard #3167 begins shift
[1518-04-29 00:42] wakes up
[1518-08-08 00:01] falls asleep
[1518-06-24 23:58] Guard #2221 begins shift
[1518-04-06 00:09] falls asleep
[1518-09-13 00:01] Guard #101 begins shift
[1518-05-10 00:08] falls asleep
[1518-09-05 00:42] falls asleep
[1518-06-02 00:17] falls asleep
[1518-07-30 00:57] wakes up
[1518-09-27 00:07] wakes up
[1518-06-16 23:59] Guard #89 begins shift
[1518-06-02 00:53] wakes up
[1518-09-24 00:00] Guard #1069 begins shift
[1518-08-16 00:54] wakes up
[1518-06-27 00:46] wakes up
[1518-06-08 00:02] Guard #3167 begins shift
[1518-09-02 00:02] Guard #953 begins shift
[1518-10-29 00:18] falls asleep
[1518-09-15 00:59] wakes up
[1518-04-20 00:23] falls asleep
[1518-07-01 00:20] falls asleep
[1518-05-24 00:43] falls asleep
[1518-09-02 00:50] falls asleep
[1518-06-29 00:17] falls asleep
[1518-06-14 00:04] Guard #881 begins shift
[1518-08-04 00:02] Guard #421 begins shift
[1518-08-16 00:02] Guard #263 begins shift
[1518-07-07 00:17] wakes up
[1518-11-21 00:45] falls asleep
[1518-10-04 00:03] falls asleep
[1518-05-07 00:03] Guard #421 begins shift
[1518-08-30 00:24] wakes up
[1518-11-23 00:29] falls asleep
[1518-04-25 00:00] Guard #2381 begins shift
[1518-09-02 00:45] wakes up
[1518-05-15 00:52] falls asleep
[1518-09-05 00:32] falls asleep
[1518-07-01 23:47] Guard #1069 begins shift
[1518-10-08 00:21] falls asleep
[1518-08-13 00:07] wakes up
[1518-06-16 00:40] wakes up
[1518-05-15 23:56] Guard #1601 begins shift
[1518-07-25 00:00] Guard #2221 begins shift
[1518-04-03 00:53] wakes up
[1518-06-15 00:55] wakes up
[1518-04-27 00:59] wakes up
[1518-08-09 23:53] Guard #421 begins shift
[1518-09-01 00:01] Guard #2381 begins shift
[1518-10-05 00:07] falls asleep
[1518-05-28 00:17] falls asleep
[1518-08-12 23:50] Guard #1601 begins shift
[1518-10-11 00:51] wakes up
[1518-08-16 00:13] falls asleep
[1518-05-21 00:50] wakes up
[1518-04-18 23:56] Guard #3203 begins shift
[1518-06-22 00:34] wakes up
[1518-05-31 00:57] wakes up
[1518-10-19 00:42] wakes up
[1518-06-20 00:53] falls asleep
[1518-09-30 00:26] falls asleep
[1518-05-14 00:56] wakes up
[1518-10-23 00:51] wakes up
[1518-06-17 23:59] Guard #421 begins shift
[1518-05-05 00:37] wakes up
[1518-06-12 00:07] falls asleep
[1518-07-09 00:41] falls asleep
[1518-05-13 00:39] falls asleep
[1518-09-04 00:38] wakes up
[1518-09-10 00:00] Guard #881 begins shift
[1518-10-11 00:01] falls asleep
[1518-11-14 00:03] falls asleep
[1518-05-14 00:45] falls asleep
[1518-09-20 23:57] Guard #1601 begins shift
[1518-06-27 00:40] falls asleep
[1518-09-20 00:39] falls asleep
[1518-07-17 00:17] falls asleep
[1518-05-09 00:57] falls asleep
[1518-05-20 00:25] falls asleep
[1518-07-06 00:40] wakes up
[1518-04-06 00:13] wakes up
[1518-07-27 00:50] wakes up
[1518-05-06 00:01] Guard #1069 begins shift
[1518-10-11 00:38] wakes up
[1518-06-13 00:57] falls asleep
[1518-05-18 23:57] Guard #1913 begins shift
[1518-06-07 00:50] falls asleep
[1518-04-29 00:50] falls asleep
[1518-07-20 00:15] falls asleep
[1518-08-22 00:52] wakes up
[1518-04-02 00:38] falls asleep
[1518-05-30 00:23] wakes up
[1518-07-02 00:00] falls asleep
[1518-09-17 00:51] wakes up
[1518-10-10 00:42] wakes up
[1518-07-23 00:50] wakes up
[1518-06-04 00:52] wakes up
[1518-06-03 00:45] wakes up
[1518-09-05 00:33] wakes up
[1518-07-16 00:51] wakes up
[1518-06-28 23:59] Guard #2647 begins shift
[1518-07-06 00:18] falls asleep
[1518-11-13 00:11] falls asleep
[1518-08-11 00:03] Guard #881 begins shift
[1518-08-15 00:46] wakes up
[1518-11-07 23:59] Guard #521 begins shift
[1518-06-01 00:58] wakes up
[1518-06-21 00:44] wakes up
[1518-05-17 00:37] wakes up
[1518-04-25 23:57] Guard #1319 begins shift
[1518-08-02 00:18] falls asleep
[1518-04-11 00:49] wakes up
[1518-06-27 00:56] wakes up
[1518-11-04 00:58] wakes up
[1518-06-28 00:54] wakes up
[1518-10-24 00:19] falls asleep
[1518-05-11 00:06] falls asleep
[1518-10-05 00:52] falls asleep
[1518-08-01 00:03] Guard #331 begins shift
[1518-04-10 00:55] wakes up
[1518-06-30 00:44] wakes up
[1518-07-03 00:57] wakes up
[1518-10-06 00:45] falls asleep
[1518-09-23 00:38] falls asleep
[1518-09-11 00:19] falls asleep
[1518-08-08 23:57] Guard #263 begins shift
[1518-04-06 23:56] Guard #521 begins shift
[1518-08-30 00:29] falls asleep
[1518-10-17 00:53] wakes up
[1518-05-09 00:01] Guard #3203 begins shift
[1518-08-10 00:34] falls asleep
[1518-06-16 00:13] falls asleep
[1518-08-02 00:35] wakes up
[1518-11-03 00:49] wakes up
[1518-09-25 00:55] falls asleep
[1518-05-30 00:35] falls asleep
[1518-09-19 00:38] falls asleep
[1518-08-02 00:54] wakes up
[1518-11-12 23:57] Guard #2861 begins shift
[1518-05-28 23:57] Guard #3203 begins shift
[1518-04-07 00:57] wakes up
[1518-07-17 00:02] falls asleep
[1518-08-18 00:30] falls asleep
[1518-06-30 00:19] falls asleep
[1518-09-17 00:48] falls asleep
[1518-07-05 00:35] wakes up
[1518-08-25 00:58] wakes up
[1518-06-07 00:36] falls asleep
[1518-10-27 23:57] Guard #2221 begins shift
[1518-09-09 00:00] Guard #101 begins shift
[1518-11-21 00:37] falls asleep
[1518-07-15 00:08] falls asleep
[1518-05-25 00:30] wakes up
[1518-10-27 00:28] falls asleep
[1518-05-16 00:53] wakes up
[1518-05-06 00:49] falls asleep
[1518-05-12 00:47] falls asleep
[1518-07-27 00:03] Guard #521 begins shift
[1518-06-24 00:56] wakes up
[1518-07-07 00:57] wakes up
[1518-09-24 00:54] wakes up
[1518-09-23 00:02] Guard #2221 begins shift
[1518-08-06 00:31] wakes up
[1518-10-07 00:56] wakes up
[1518-11-04 00:00] Guard #881 begins shift
[1518-05-09 00:06] falls asleep
[1518-09-21 00:32] falls asleep
[1518-09-04 00:36] falls asleep
[1518-10-18 00:37] wakes up
[1518-06-19 00:04] Guard #521 begins shift
[1518-08-29 00:32] wakes up
[1518-05-20 23:58] Guard #2539 begins shift
[1518-09-12 00:04] Guard #1237 begins shift
[1518-07-15 23:58] Guard #1913 begins shift
[1518-05-10 00:59] wakes up
[1518-10-31 00:30] wakes up
[1518-04-22 00:54] wakes up
[1518-09-24 00:50] falls asleep
[1518-07-29 00:58] wakes up
[1518-07-03 00:49] falls asleep
[1518-04-05 00:47] falls asleep
[1518-08-18 00:36] wakes up
[1518-10-03 00:51] wakes up
[1518-08-27 00:46] wakes up
[1518-06-29 00:54] wakes up
[1518-05-25 00:49] wakes up
[1518-04-14 00:34] falls asleep
[1518-07-18 23:53] Guard #1913 begins shift
[1518-06-06 00:08] falls asleep
[1518-06-21 00:57] wakes up
[1518-08-28 00:54] wakes up
[1518-05-01 00:26] falls asleep
[1518-11-14 00:48] wakes up
[1518-08-02 00:00] Guard #521 begins shift
[1518-09-04 00:01] Guard #953 begins shift
[1518-10-16 23:57] Guard #3203 begins shift
[1518-04-23 00:46] falls asleep
[1518-08-02 00:44] falls asleep
[1518-11-11 00:19] falls asleep
[1518-08-20 23:46] Guard #881 begins shift
[1518-05-03 00:00] Guard #101 begins shift
[1518-04-28 00:33] falls asleep
[1518-07-09 00:59] wakes up
[1518-05-11 00:51] wakes up
[1518-10-03 23:52] Guard #2647 begins shift
[1518-09-26 00:57] wakes up
[1518-10-26 00:56] wakes up
[1518-06-08 00:30] falls asleep
[1518-08-23 00:55] wakes up
[1518-11-12 00:39] wakes up
[1518-04-27 00:54] falls asleep
[1518-05-29 00:19] falls asleep
[1518-05-12 00:59] wakes up
[1518-10-12 00:04] Guard #1069 begins shift
[1518-05-15 00:58] wakes up
[1518-06-01 00:37] wakes up
[1518-10-21 00:03] Guard #1601 begins shift
[1518-08-21 00:03] falls asleep
[1518-10-29 00:04] Guard #2861 begins shift
[1518-05-01 00:46] falls asleep
[1518-04-15 00:02] Guard #953 begins shift
[1518-07-11 00:01] falls asleep
[1518-09-11 00:48] wakes up
[1518-07-18 00:15] falls asleep
[1518-07-17 00:11] wakes up
[1518-07-13 00:41] falls asleep
[1518-04-04 00:37] wakes up
[1518-10-14 00:23] falls asleep
[1518-05-07 00:19] falls asleep
[1518-11-17 00:32] falls asleep
[1518-10-12 00:43] wakes up
[1518-11-01 00:28] falls asleep
[1518-11-15 00:01] Guard #1069 begins shift
[1518-07-17 23:56] Guard #1619 begins shift
[1518-04-04 00:58] wakes up
[1518-05-26 00:49] wakes up
[1518-08-15 00:20] wakes up
[1518-04-12 00:37] falls asleep
[1518-08-12 00:33] wakes up
[1518-05-18 00:30] falls asleep
[1518-08-28 00:04] Guard #1319 begins shift
[1518-07-28 23:49] Guard #1319 begins shift
[1518-11-02 00:45] falls asleep
[1518-04-28 00:51] falls asleep
[1518-06-09 00:25] falls asleep
[1518-10-03 00:00] Guard #1619 begins shift
[1518-06-18 00:24] wakes up
[1518-06-14 00:35] falls asleep
[1518-08-04 00:34] wakes up
[1518-06-12 00:42] wakes up
[1518-08-03 00:46] wakes up
[1518-05-05 00:56] wakes up
[1518-11-09 00:23] falls asleep
[1518-05-19 00:47] falls asleep
[1518-05-21 00:37] falls asleep
[1518-06-27 00:16] falls asleep
[1518-06-11 00:07] falls asleep
[1518-07-22 00:52] wakes up
[1518-11-10 00:26] falls asleep
[1518-09-07 00:00] falls asleep
[1518-09-22 00:59] wakes up
[1518-10-31 00:00] Guard #101 begins shift
[1518-09-23 00:33] wakes up
[1518-11-21 00:29] falls asleep
[1518-09-24 00:35] falls asleep
[1518-11-20 00:34] wakes up
[1518-05-01 00:37] wakes up
[1518-06-15 23:59] Guard #2221 begins shift
[1518-06-04 00:00] Guard #1619 begins shift
[1518-05-14 23:56] Guard #421 begins shift
[1518-10-24 00:45] wakes up
[1518-04-06 00:02] Guard #1069 begins shift
[1518-04-10 23:58] Guard #2861 begins shift
[1518-04-30 00:14] wakes up
[1518-06-23 00:39] wakes up
[1518-05-25 00:38] falls asleep
[1518-04-30 00:00] Guard #2539 begins shift
[1518-10-22 00:33] falls asleep
[1518-04-01 00:54] wakes up
[1518-05-11 00:37] falls asleep
[1518-06-04 00:47] falls asleep
[1518-10-24 00:10] wakes up
[1518-08-11 00:52] wakes up
[1518-08-10 00:55] wakes up
[1518-05-03 23:56] Guard #953 begins shift
[1518-04-20 23:56] Guard #3167 begins shift
[1518-11-20 00:02] falls asleep
[1518-04-01 23:59] Guard #881 begins shift
[1518-08-25 00:30] falls asleep
[1518-04-03 00:43] falls asleep
[1518-04-30 00:41] falls asleep
[1518-07-22 00:04] Guard #953 begins shift
[1518-07-27 23:56] Guard #809 begins shift
[1518-11-09 00:57] wakes up
[1518-09-08 00:51] wakes up
[1518-11-06 23:56] Guard #2647 begins shift
[1518-08-25 00:57] falls asleep
[1518-07-25 00:44] falls asleep
[1518-06-13 00:58] wakes up
[1518-10-18 00:59] wakes up
[1518-04-23 00:00] Guard #2861 begins shift
[1518-10-18 00:00] Guard #1319 begins shift
[1518-05-09 00:59] wakes up
[1518-10-30 00:04] falls asleep
[1518-06-26 00:57] wakes up
[1518-09-02 23:56] Guard #421 begins shift
[1518-09-18 00:02] Guard #3203 begins shift
[1518-08-26 00:01] Guard #2861 begins shift
[1518-08-20 00:14] wakes up
[1518-07-26 00:31] falls asleep
[1518-05-30 00:11] falls asleep
[1518-05-06 00:53] wakes up
[1518-05-31 00:30] falls asleep
[1518-09-07 00:46] wakes up
[1518-09-22 00:34] falls asleep
[1518-08-19 00:58] wakes up
[1518-11-02 00:01] falls asleep
[1518-04-14 00:46] falls asleep
[1518-04-13 00:02] falls asleep
[1518-07-31 00:04] Guard #809 begins shift
[1518-07-15 00:40] falls asleep
[1518-04-02 00:25] falls asleep
[1518-11-21 00:52] wakes up
[1518-10-09 23:50] Guard #1237 begins shift
[1518-10-31 00:58] wakes up
[1518-10-25 00:55] falls asleep
[1518-07-15 00:55] wakes up
[1518-11-12 00:26] falls asleep
[1518-07-04 00:46] falls asleep
[1518-06-23 00:36] falls asleep
[1518-10-02 00:03] Guard #809 begins shift
[1518-10-27 00:53] wakes up
[1518-07-29 00:17] wakes up
[1518-10-24 00:30] falls asleep
[1518-04-07 00:45] falls asleep
[1518-10-12 00:37] falls asleep
[1518-05-16 00:51] falls asleep
[1518-06-10 00:21] falls asleep
[1518-09-19 00:18] falls asleep
[1518-08-24 00:01] Guard #1319 begins shift
[1518-06-26 00:37] wakes up
[1518-04-28 00:00] Guard #3203 begins shift
[1518-04-24 00:41] wakes up
[1518-05-23 00:56] wakes up
[1518-11-23 00:52] falls asleep
[1518-08-22 00:36] wakes up
[1518-07-03 00:53] falls asleep
[1518-05-04 00:43] falls asleep
[1518-07-19 00:27] wakes up
[1518-08-06 23:50] Guard #2861 begins shift
[1518-07-25 00:11] falls asleep
[1518-07-12 00:01] falls asleep
[1518-05-20 00:39] falls asleep
[1518-08-24 00:33] falls asleep
[1518-07-06 00:00] Guard #2861 begins shift
[1518-07-07 00:00] falls asleep
[1518-09-18 00:54] wakes up
[1518-04-16 00:22] falls asleep
[1518-09-03 00:06] falls asleep
[1518-08-13 00:21] falls asleep
[1518-10-08 00:33] wakes up
[1518-09-29 00:00] Guard #1601 begins shift
[1518-11-13 23:54] Guard #1601 begins shift
[1518-07-07 23:47] Guard #3203 begins shift
[1518-04-24 00:01] Guard #881 begins shift
[1518-11-07 00:49] falls asleep
[1518-10-08 00:55] wakes up
[1518-09-23 00:19] falls asleep
[1518-08-17 23:59] Guard #2539 begins shift
[1518-06-22 00:32] falls asleep
[1518-04-07 00:09] falls asleep
[1518-07-27 00:57] falls asleep
[1518-06-05 00:03] Guard #89 begins shift
[1518-09-30 00:07] wakes up
[1518-10-19 00:38] falls asleep
[1518-10-23 00:12] wakes up
[1518-09-30 00:04] falls asleep
[1518-06-07 00:42] wakes up
[1518-10-30 00:25] falls asleep
[1518-10-19 00:54] falls asleep
[1518-09-06 23:46] Guard #263 begins shift
[1518-07-12 00:57] wakes up
[1518-08-15 00:04] Guard #2647 begins shift
[1518-10-28 00:51] wakes up
[1518-07-27 00:58] wakes up
[1518-10-01 00:47] falls asleep
[1518-04-11 00:38] falls asleep
[1518-05-17 00:14] falls asleep
[1518-04-05 00:31] wakes up
[1518-10-25 00:58] wakes up
[1518-04-30 23:59] Guard #2861 begins shift
[1518-09-25 23:59] Guard #3203 begins shift
[1518-11-11 00:50] wakes up
[1518-09-12 00:55] falls asleep
[1518-10-13 00:28] wakes up
[1518-08-27 00:18] falls asleep
[1518-07-08 00:57] wakes up
[1518-08-26 00:15] falls asleep
[1518-05-18 00:03] falls asleep
[1518-11-17 00:27] falls asleep
[1518-05-28 00:43] wakes up
[1518-07-03 23:48] Guard #2861 begins shift
[1518-10-04 00:58] wakes up
[1518-05-01 23:57] Guard #2221 begins shift
[1518-04-22 00:36] falls asleep
[1518-05-28 00:54] wakes up
[1518-05-23 00:04] falls asleep
[1518-09-21 00:34] wakes up
[1518-09-19 00:01] falls asleep
[1518-07-01 00:01] Guard #101 begins shift
[1518-05-16 00:31] falls asleep
[1518-11-23 00:44] wakes up
[1518-07-14 00:44] wakes up
[1518-10-20 00:03] Guard #3167 begins shift
[1518-04-27 00:39] wakes up
[1518-07-22 00:09] falls asleep
[1518-08-29 00:00] Guard #1237 begins shift
[1518-07-05 00:53] wakes up
[1518-11-20 00:54] wakes up
[1518-05-11 23:57] Guard #881 begins shift
[1518-05-11 00:00] Guard #521 begins shift
[1518-06-20 00:00] Guard #1601 begins shift
[1518-09-23 00:48] falls asleep
[1518-06-09 00:00] Guard #3167 begins shift
[1518-06-19 00:20] wakes up
[1518-05-02 00:59] wakes up
[1518-10-12 00:58] wakes up
[1518-05-20 00:34] wakes up
[1518-11-05 00:00] Guard #1619 begins shift
[1518-04-07 00:28] wakes up
[1518-04-22 00:44] falls asleep
[1518-07-31 00:47] wakes up
[1518-07-01 00:23] wakes up
[1518-10-01 00:55] wakes up
[1518-09-10 00:58] wakes up
[1518-10-26 00:52] falls asleep
[1518-10-14 00:45] wakes up
[1518-08-25 00:42] falls asleep
[1518-04-15 00:53] wakes up
[1518-10-13 00:02] Guard #1237 begins shift
[1518-05-27 00:20] falls asleep
[1518-07-26 00:19] falls asleep
[1518-07-28 00:59] wakes up
[1518-04-09 00:18] wakes up
[1518-06-11 00:38] falls asleep
[1518-10-05 00:56] wakes up
[1518-11-04 00:42] wakes up
[1518-09-12 00:57] wakes up
[1518-07-30 00:05] falls asleep
[1518-05-03 00:28] falls asleep
[1518-04-14 00:41] wakes up
[1518-10-13 00:27] falls asleep
[1518-05-01 00:58] wakes up
[1518-08-23 00:40] wakes up
[1518-04-18 00:14] falls asleep
[1518-08-11 00:39] falls asleep
[1518-07-14 00:00] Guard #1601 begins shift
[1518-10-30 00:41] wakes up
[1518-06-16 00:46] falls asleep
[1518-08-07 23:54] Guard #1601 begins shift
[1518-10-28 00:30] falls asleep
[1518-04-06 00:50] wakes up
[1518-05-04 00:55] wakes up
[1518-10-14 00:01] Guard #421 begins shift
[1518-11-15 00:55] falls asleep
[1518-11-20 00:53] falls asleep
[1518-05-29 00:47] wakes up
[1518-11-19 00:44] falls asleep
[1518-05-26 00:30] falls asleep
[1518-07-25 23:58] Guard #2441 begins shift
[1518-08-25 00:35] wakes up
[1518-07-06 00:29] wakes up
[1518-10-26 00:43] wakes up
[1518-11-13 00:49] wakes up
[1518-06-10 00:53] wakes up
[1518-05-22 23:53] Guard #2441 begins shift
[1518-09-26 00:39] falls asleep
[1518-07-19 00:00] falls asleep
[1518-08-25 00:52] wakes up
[1518-09-29 00:49] wakes up
[1518-04-26 00:14] falls asleep
[1518-10-05 00:38] wakes up
[1518-07-06 23:47] Guard #421 begins shift
[1518-09-03 00:46] wakes up
[1518-09-28 00:01] Guard #953 begins shift
[1518-09-18 23:49] Guard #1319 begins shift
[1518-10-10 00:02] wakes up
[1518-06-24 00:30] wakes up
[1518-05-15 00:43] falls asleep
[1518-11-19 00:58] wakes up
[1518-08-21 00:54] wakes up
[1518-06-09 00:47] falls asleep
[1518-06-27 23:57] Guard #2647 begins shift
[1518-07-11 23:50] Guard #881 begins shift
[1518-05-24 23:59] Guard #2221 begins shift
[1518-04-08 00:20] falls asleep
[1518-04-30 00:12] falls asleep
[1518-05-21 00:57] wakes up
[1518-10-13 00:57] wakes up
[1518-04-27 00:15] falls asleep
[1518-09-04 00:54] wakes up
[1518-06-25 00:34] falls asleep
[1518-11-18 00:18] falls asleep
[1518-06-14 00:47] wakes up
[1518-09-08 00:55] falls asleep
[1518-07-06 00:37] falls asleep
[1518-07-19 00:55] wakes up
[1518-08-23 00:08] falls asleep
[1518-04-23 00:56] wakes up
[1518-08-15 00:39] falls asleep
[1518-09-11 00:00] Guard #521 begins shift
[1518-10-08 00:03] Guard #881 begins shift
[1518-10-06 00:56] wakes up
[1518-06-03 00:24] falls asleep
[1518-07-12 00:15] wakes up
[1518-10-25 00:00] Guard #2647 begins shift
[1518-06-10 00:51] falls asleep
[1518-11-09 00:39] wakes up
[1518-08-12 00:54] falls asleep
[1518-07-28 00:53] wakes up
[1518-10-17 00:25] falls asleep
[1518-09-25 00:01] Guard #263 begins shift
[1518-06-12 23:59] Guard #101 begins shift
[1518-11-06 00:34] falls asleep
[1518-08-07 00:00] falls asleep
[1518-08-16 23:52] Guard #521 begins shift
[1518-06-06 00:53] wakes up
[1518-07-24 00:04] Guard #421 begins shift
[1518-11-17 00:04] Guard #1913 begins shift
[1518-08-03 00:41] falls asleep
[1518-05-16 00:56] falls asleep
[1518-11-01 00:03] Guard #2221 begins shift
[1518-08-13 00:48] wakes up
[1518-04-19 00:23] falls asleep
[1518-09-25 00:46] wakes up
[1518-06-16 00:54] wakes up
[1518-07-16 00:17] falls asleep
[1518-09-17 00:20] wakes up
[1518-07-24 00:43] falls asleep
[1518-09-14 00:55] wakes up
[1518-04-04 00:51] falls asleep
[1518-08-05 00:04] Guard #89 begins shift
[1518-05-10 00:55] falls asleep
[1518-07-08 00:00] falls asleep
[1518-07-10 00:23] falls asleep
[1518-07-12 00:18] falls asleep
[1518-10-13 00:35] falls asleep
[1518-04-02 00:29] wakes up
[1518-11-16 00:25] falls asleep
[1518-07-18 00:45] wakes up
[1518-05-08 00:01] Guard #1601 begins shift
[1518-08-22 00:28] falls asleep
[1518-04-29 00:04] Guard #1319 begins shift
[1518-06-11 00:59] wakes up
[1518-06-27 00:03] Guard #809 begins shift
[1518-05-11 00:20] wakes up
[1518-07-10 00:03] Guard #421 begins shift
[1518-10-26 00:06] falls asleep
[1518-11-14 00:54] falls asleep
[1518-11-08 00:10] falls asleep
[1518-04-24 00:37] falls asleep
[1518-08-19 00:57] falls asleep
[1518-11-23 00:57] wakes up
[1518-06-20 00:33] falls asleep
[1518-08-29 23:56] Guard #521 begins shift
[1518-11-15 00:57] wakes up
[1518-04-21 23:56] Guard #521 begins shift
[1518-08-26 23:57] Guard #809 begins shift
[1518-04-16 23:57] Guard #1069 begins shift
[1518-10-26 23:56] Guard #2861 begins shift
[1518-11-17 00:57] wakes up
[1518-11-20 23:56] Guard #1601 begins shift
[1518-11-18 23:59] Guard #3203 begins shift
[1518-05-31 00:02] Guard #1319 begins shift
[1518-07-08 23:46] Guard #953 begins shift
[1518-06-04 00:35] falls asleep
[1518-08-31 00:32] falls asleep
[1518-04-03 00:08] falls asleep
[1518-07-29 00:05] falls asleep
[1518-07-20 00:55] wakes up
[1518-05-16 00:58] wakes up
[1518-06-21 00:18] falls asleep
[1518-11-21 00:34] wakes up
[1518-05-20 00:53] wakes up
[1518-07-23 00:28] falls asleep
[1518-08-19 00:47] wakes up
[1518-04-06 00:24] falls asleep
[1518-11-01 00:48] wakes up
[1518-10-21 00:24] falls asleep
[1518-06-06 00:26] wakes up
[1518-07-05 00:15] falls asleep
[1518-10-02 00:45] wakes up
[1518-08-15 00:19] falls asleep
[1518-04-10 00:00] Guard #881 begins shift
[1518-10-29 23:51] Guard #3167 begins shift
[1518-11-03 00:27] wakes up
[1518-09-08 00:00] Guard #3203 begins shift
[1518-09-17 00:41] falls asleep
[1518-05-31 00:44] falls asleep
[1518-10-15 00:27] falls asleep
[1518-10-06 00:00] Guard #1319 begins shift
[1518-04-14 00:47] wakes up
[1518-07-25 00:26] wakes up
[1518-09-17 00:45] wakes up
[1518-04-30 00:58] wakes up
[1518-05-22 00:15] falls asleep
[1518-04-19 00:48] wakes up
[1518-07-26 00:28] wakes up
[1518-07-31 00:41] falls asleep
[1518-07-17 00:39] wakes up
[1518-07-01 00:28] falls asleep
[1518-10-16 00:01] Guard #1237 begins shift
[1518-08-29 00:30] falls asleep
[1518-04-13 23:59] Guard #2861 begins shift
[1518-07-10 00:28] wakes up
[1518-10-24 00:04] falls asleep
[1518-07-28 00:48] wakes up
[1518-11-10 23:57] Guard #1619 begins shift
[1518-11-09 00:44] falls asleep
[1518-10-10 00:01] falls asleep
[1518-05-06 00:58] wakes up
[1518-09-22 00:54] falls asleep
[1518-09-05 00:54] wakes up
[1518-07-29 23:48] Guard #1619 begins shift
[1518-10-11 00:47] falls asleep
[1518-07-12 00:54] falls asleep
[1518-05-11 00:54] falls asleep
[1518-07-26 00:36] wakes up
[1518-07-28 00:47] falls asleep
[1518-05-31 00:16] wakes up
[1518-09-08 00:11] falls asleep
[1518-06-23 23:58] Guard #263 begins shift
[1518-10-09 00:02] falls asleep
[1518-11-22 00:57] wakes up
[1518-05-08 00:08] falls asleep
[1518-10-23 00:11] falls asleep
[1518-10-09 00:34] wakes up
[1518-08-14 00:04] Guard #2539 begins shift
[1518-04-28 00:54] wakes up
[1518-06-30 00:00] Guard #1069 begins shift
[1518-06-28 00:47] wakes up
[1518-10-15 00:00] Guard #3167 begins shift
[1518-06-25 23:56] Guard #2221 begins shift
[1518-07-18 00:23] wakes up
[1518-08-08 00:49] wakes up
[1518-09-27 00:06] falls asleep
[1518-07-05 00:44] wakes up
[1518-06-11 00:31] wakes up
[1518-07-29 00:50] falls asleep
[1518-09-27 00:02] Guard #2647 begins shift
[1518-07-18 00:30] falls asleep
[1518-06-28 00:52] falls asleep
[1518-06-10 00:24] wakes up
[1518-08-22 00:00] Guard #1601 begins shift
[1518-09-28 00:37] falls asleep
[1518-07-04 00:48] wakes up
[1518-09-15 00:06] falls asleep
[1518-05-04 00:21] falls asleep
[1518-08-14 00:44] wakes up
[1518-10-20 00:35] wakes up
[1518-05-17 23:51] Guard #2647 begins shift
[1518-07-23 00:02] Guard #1619 begins shift
[1518-09-10 00:40] falls asleep
[1518-10-03 00:57] wakes up
[1518-11-16 00:03] Guard #1619 begins shift
[1518-06-22 00:43] falls asleep
[1518-06-22 00:58] wakes up
[1518-09-11 00:39] wakes up
[1518-09-20 00:02] Guard #1619 begins shift
[1518-10-04 00:19] wakes up
[1518-10-31 00:34] falls asleep
[1518-05-14 00:39] wakes up
[1518-11-01 23:49] Guard #1601 begins shift
[1518-04-03 00:00] Guard #881 begins shift
[1518-05-05 00:32] falls asleep
[1518-04-12 00:02] Guard #1619 begins shift
[1518-05-26 00:01] Guard #1913 begins shift
[1518-07-09 00:04] falls asleep
[1518-09-18 00:30] falls asleep
[1518-08-20 00:12] falls asleep
[1518-09-19 00:27] wakes up
[1518-07-15 00:02] Guard #3203 begins shift
[1518-04-08 00:55] wakes up
[1518-04-09 00:00] Guard #881 begins shift
[1518-04-15 00:12] falls asleep
[1518-10-20 00:26] falls asleep
[1518-08-19 00:42] falls asleep
[1518-11-16 00:48] wakes up
[1518-04-16 00:37] wakes up
[1518-05-14 00:27] falls asleep
[1518-09-29 00:23] falls asleep
[1518-11-06 00:27] wakes up
[1518-09-10 00:51] wakes up
[1518-08-09 00:08] falls asleep
[1518-11-10 00:52] wakes up
[1518-08-24 23:57] Guard #1601 begins shift
[1518-11-22 00:45] falls asleep
[1518-11-02 00:23] wakes up
[1518-09-16 00:57] wakes up
[1518-11-06 00:00] Guard #2861 begins shift
[1518-05-18 00:26] wakes up
[1518-08-10 00:26] wakes up
[1518-09-28 00:54] wakes up
[1518-06-01 00:12] falls asleep
[1518-10-23 00:19] falls asleep
[1518-09-05 00:00] Guard #1601 begins shift
[1518-09-11 00:43] falls asleep
[1518-07-28 00:57] falls asleep
[1518-05-10 00:32] wakes up
[1518-10-05 00:04] Guard #881 begins shift
[1518-04-29 00:58] wakes up
[1518-11-04 00:22] falls asleep
[1518-09-25 00:15] falls asleep
[1518-10-23 00:01] Guard #3167 begins shift
[1518-09-30 23:56] Guard #2647 begins shift
[1518-08-10 00:03] falls asleep
[1518-06-20 00:54] wakes up
[1518-10-22 00:02] falls asleep
[1518-05-03 00:48] wakes up
[1518-07-28 00:51] falls asleep
[1518-08-28 00:23] falls asleep
[1518-11-14 00:56] wakes up
[1518-10-21 00:09] falls asleep
[1518-08-31 00:24] falls asleep
[1518-05-16 00:36] wakes up
[1518-04-08 00:00] Guard #521 begins shift
[1518-10-12 00:53] falls asleep
[1518-09-12 00:20] falls asleep
[1518-11-21 23:58] Guard #2221 begins shift
[1518-05-22 00:43] wakes up
[1518-10-22 00:51] wakes up
[1518-04-01 00:53] falls asleep
[1518-06-27 00:51] falls asleep
[1518-07-19 00:48] falls asleep
[1518-04-22 00:30] wakes up
[1518-05-07 00:51] wakes up
[1518-09-21 23:57] Guard #2221 begins shift
[1518-09-09 00:31] falls asleep
[1518-05-04 00:40] wakes up
[1518-06-28 00:32] falls asleep
[1518-08-06 00:19] falls asleep
[1518-05-24 00:00] Guard #421 begins shift
[1518-10-16 00:36] wakes up
[1518-06-24 00:51] falls asleep
[1518-05-09 00:54] wakes up
[1518-05-21 00:54] falls asleep
[1518-04-29 00:18] falls asleep
[1518-06-21 00:49] falls asleep
[1518-04-15 00:13] wakes up
[1518-08-11 00:55] falls asleep
[1518-10-29 00:55] wakes up
[1518-07-09 00:35] wakes up
[1518-07-24 00:53] wakes up
[1518-06-26 00:46] falls asleep
[1518-04-09 00:11] falls asleep
[1518-05-27 00:52] wakes up
[1518-04-02 00:54] wakes up
[1518-10-18 00:46] wakes up
[1518-07-04 00:05] falls asleep
[1518-04-17 00:53] wakes up
[1518-11-03 00:48] falls asleep
[1518-11-18 00:53] wakes up
[1518-05-20 00:03] Guard #1619 begins shift
[1518-07-25 00:53] wakes up
[1518-08-22 00:40] falls asleep
[1518-08-14 00:42] falls asleep
[1518-10-21 00:51] wakes up
[1518-06-20 00:38] wakes up
[1518-08-31 00:27] wakes up
[1518-11-19 23:54] Guard #2441 begins shift
[1518-10-08 00:41] falls asleep
[1518-07-06 00:43] falls asleep
[1518-09-23 00:43] wakes up
[1518-09-06 00:59] wakes up
[1518-09-13 00:51] wakes up
[1518-10-22 00:25] wakes up
[1518-09-13 00:36] falls asleep
[1518-06-22 00:00] Guard #2221 begins shift
[1518-04-03 00:18] wakes up
[1518-05-02 00:52] falls asleep
[1518-06-25 00:46] wakes up
[1518-08-22 23:59] Guard #809 begins shift
[1518-08-30 00:42] wakes up
[1518-08-12 00:58] wakes up
[1518-04-12 00:58] wakes up
[1518-08-24 00:54] wakes up
[1518-05-14 00:02] Guard #1069 begins shift
[1518-05-21 00:43] falls asleep
[1518-11-05 00:18] falls asleep
[1518-07-17 00:45] wakes up
[1518-06-09 00:31] wakes up
[1518-07-11 00:56] wakes up
[1518-04-13 00:56] wakes up
[1518-08-04 00:09] falls asleep
[1518-08-18 23:57] Guard #2647 begins shift
[1518-07-02 00:46] wakes up
[1518-10-06 23:59] Guard #521 begins shift
[1518-08-26 00:53] wakes up
[1518-09-12 00:46] wakes up
[1518-06-14 23:57] Guard #1913 begins shift
[1518-05-08 00:44] wakes up
[1518-06-23 00:01] Guard #2539 begins shift
[1518-04-17 00:51] falls asleep
[1518-11-17 00:29] wakes up
[1518-09-14 00:27] falls asleep
[1518-07-14 00:18] falls asleep
[1518-09-25 00:56] wakes up
[1518-05-12 23:59] Guard #521 begins shift
[1518-07-01 00:34] wakes up
[1518-08-31 00:45] wakes up
[1518-08-12 00:02] Guard #1601 begins shift
[1518-11-03 00:21] falls asleep
[1518-05-31 00:07] falls asleep
[1518-05-05 00:01] Guard #1601 begins shift
[1518-05-10 00:01] Guard #1069 begins shift
[1518-07-20 23:56] Guard #89 begins shift
[1518-09-23 00:53] wakes up
[1518-07-16 23:50] Guard #2539 begins shift
[1518-04-04 23:56] Guard #809 begins shift
[1518-09-24 00:44] wakes up
[1518-05-11 00:56] wakes up
[1518-09-20 00:53] wakes up
[1518-05-19 00:37] falls asleep
[1518-06-26 00:09] falls asleep
[1518-04-24 00:54] wakes up
[1518-07-12 23:59] Guard #2861 begins shift
[1518-10-04 00:43] falls asleep
[1518-05-29 00:53] falls asleep
[1518-05-19 00:39] wakes up
[1518-05-19 00:48] wakes up
[1518-05-26 23:59] Guard #2539 begins shift
[1518-06-11 23:59] Guard #421 begins shift
[1518-10-18 00:42] falls asleep
[1518-07-04 23:56] Guard #2441 begins shift
[1518-07-13 00:48] wakes up
[1518-06-10 00:02] Guard #263 begins shift
[1518-09-10 00:57] falls asleep
[1518-04-21 00:26] falls asleep
[1518-10-16 00:23] falls asleep
[1518-06-27 00:28] wakes up
[1518-11-04 00:51] falls asleep
[1518-08-12 00:28] falls asleep
[1518-11-21 00:38] wakes up
[1518-04-12 23:54] Guard #1319 begins shift
[1518-06-15 00:43] falls asleep
[1518-04-24 00:46] falls asleep
[1518-05-06 00:57] falls asleep
[1518-07-27 00:27] falls asleep
[1518-06-09 00:58] wakes up
[1518-10-10 00:16] falls asleep
[1518-06-21 00:00] Guard #953 begins shift
[1518-05-24 00:52] wakes up
[1518-04-16 00:01] Guard #1069 begins shift
[1518-10-19 00:00] Guard #881 begins shift
[1518-10-15 00:30] wakes up
[1518-05-31 23:59] Guard #2221 begins shift
[1518-09-22 00:50] wakes up
[1518-09-17 00:02] Guard #1619 begins shift
[1518-08-20 00:49] wakes up
[1518-10-21 23:46] Guard #521 begins shift
[1518-06-01 23:57] Guard #1319 begins shift
[1518-10-18 00:30] falls asleep
[1518-05-21 23:56] Guard #1619 begins shift
[1518-09-04 00:44] falls asleep
[1518-04-05 00:52] wakes up
[1518-09-15 23:59] Guard #881 begins shift
[1518-10-21 00:19] wakes up
[1518-06-07 00:54] wakes up
[1518-07-06 00:58] wakes up
[1518-04-04 00:00] Guard #809 begins shift
[1518-06-18 00:09] falls asleep
[1518-09-19 00:55] wakes up
[1518-09-13 23:56] Guard #521 begins shift
[1518-11-12 00:01] Guard #101 begins shift
[1518-09-06 00:31] falls asleep
[1518-06-24 00:11] falls asleep
[1518-09-14 23:56] Guard #2539 begins shift
[1518-06-04 00:44] wakes up
[1518-05-30 00:04] Guard #3203 begins shift
[1518-05-30 00:56] wakes up
[1518-09-16 00:13] falls asleep
[1518-05-08 00:49] falls asleep
[1518-11-10 00:01] Guard #1619 begins shift
[1518-11-05 00:51] wakes up
[1518-05-15 00:48] wakes up
[1518-07-02 23:56] Guard #1619 begins shift
[1518-11-18 00:02] Guard #3203 begins shift
[1518-04-05 00:27] falls asleep
[1518-08-23 00:51] falls asleep
[1518-10-18 00:49] falls asleep
[1518-11-06 00:52] wakes up
[1518-08-06 00:01] Guard #2441 begins shift
[1518-05-13 00:59] wakes up
[1518-04-28 00:37] wakes up
[1518-06-19 00:18] falls asleep
[1518-09-19 00:12] wakes up
[1518-05-08 00:53] wakes up
[1518-04-22 00:40] wakes up
[1518-11-08 00:11] wakes up
[1518-07-03 00:50] wakes up
[1518-10-19 00:59] wakes up
[1518-09-03 00:49] falls asleep
[1518-11-08 00:38] wakes up
[1518-08-03 00:02] Guard #2861 begins shift
[1518-04-22 00:29] falls asleep
[1518-10-08 23:47] Guard #1601 begins shift
[1518-10-31 00:29] falls asleep
[1518-10-03 00:16] falls asleep
[1518-07-17 00:42] falls asleep
[1518-04-20 00:42] wakes up
[1518-04-04 00:30] falls asleep
[1518-05-31 00:40] wakes up
[1518-08-17 00:47] wakes up
[1518-05-18 00:57] wakes up

1
input/day05.txt Normal file
View File

@@ -0,0 +1 @@
dabAcCaCBAcCcaDA

View File

@@ -1,3 +1,4 @@
extern crate chrono;
extern crate regex; extern crate regex;
pub mod tasks; pub mod tasks;

View File

@@ -1,4 +1,4 @@
fn main() { fn main() {
aoc_2018::tasks::day03::task1(); // aoc_2018::tasks::day05::task1();
aoc_2018::tasks::day03::task2(); aoc_2018::tasks::day05::task2();
} }

149
src/tasks/day04.rs Normal file
View File

@@ -0,0 +1,149 @@
use chrono::prelude::*;
use chrono::Duration;
use chrono::NaiveDateTime;
use std::collections::HashMap;
use utils;
enum Activity {
Starts(u32),
FallsAsleep,
Awakens,
}
#[derive(PartialEq)]
enum State {
Asleep,
Awake,
}
pub fn task1() {
use self::Activity::*;
let input = utils::read_file("input/day04.txt");
let mut input: Vec<_> = input
.lines()
.map(|line| {
// [1518-10-26 00:01] Guard #1069 begins shift
let time = NaiveDateTime::parse_from_str(&line[1..=16], "%Y-%m-%d %H:%M").unwrap();
let activity = if line.contains("falls asleep") {
Activity::FallsAsleep
} else if line.contains("wakes up") {
Activity::Awakens
} else {
let number: u32 = line.split(' ').find(|part| part.starts_with("#")).unwrap()[1..]
.parse()
.unwrap();
Activity::Starts(number)
};
(time, activity)
}).collect();
input.sort_by_key(|it| it.0);
let mut current_id: u32 = 0;
let mut current_state = State::Awake;
let mut last_time = input[0].0;
let mut sleep_map: HashMap<u32, [usize; 60]> = HashMap::new();
let minute = Duration::minutes(1);
for (time, activity) in input.into_iter() {
// for all minutes since last time slot fill arrays
let mut iter_time = last_time.clone();
while iter_time < time {
if current_state == State::Asleep && iter_time.hour() == 0 {
sleep_map.entry(current_id).or_insert([0; 60])[iter_time.minute() as usize] += 1;
}
iter_time += minute;
}
match activity {
Starts(id) => {
current_state = State::Awake;
current_id = id;
}
FallsAsleep => current_state = State::Asleep,
Awakens => current_state = State::Awake,
}
last_time = time;
}
let sleeper = sleep_map
.iter()
.map(|(id, schedule)| (id, schedule.iter().sum::<usize>()))
.max_by_key(|it| it.1)
.unwrap();
println!("Sleeper: {:?}", sleeper);
let worst_minute = sleep_map
.get(sleeper.0)
.unwrap()
.iter()
.enumerate()
.max_by_key(|it| it.1)
.unwrap()
.0;
println!("Worst minute: {}", worst_minute);
println!("Result: {}", *sleeper.0 as usize * worst_minute);
}
pub fn task2() {
use self::Activity::*;
let input = utils::read_file("input/day04.txt");
let mut input: Vec<_> = input
.lines()
.map(|line| {
// [1518-10-26 00:01] Guard #1069 begins shift
let time = NaiveDateTime::parse_from_str(&line[1..=16], "%Y-%m-%d %H:%M").unwrap();
let activity = if line.contains("falls asleep") {
Activity::FallsAsleep
} else if line.contains("wakes up") {
Activity::Awakens
} else {
let number: u32 = line.split(' ').find(|part| part.starts_with("#")).unwrap()[1..]
.parse()
.unwrap();
Activity::Starts(number)
};
(time, activity)
}).collect();
input.sort_by_key(|it| it.0);
let mut current_id: u32 = 0;
let mut current_state = State::Awake;
let mut last_time = input[0].0;
let mut sleep_map: HashMap<u32, [usize; 60]> = HashMap::new();
let minute = Duration::minutes(1);
for (time, activity) in input.into_iter() {
// for all minutes since last time slot fill arrays
let mut iter_time = last_time.clone();
while iter_time < time {
if current_state == State::Asleep && iter_time.hour() == 0 {
sleep_map.entry(current_id).or_insert([0; 60])[iter_time.minute() as usize] += 1;
}
iter_time += minute;
}
match activity {
Starts(id) => {
current_state = State::Awake;
current_id = id;
}
FallsAsleep => current_state = State::Asleep,
Awakens => current_state = State::Awake,
}
last_time = time;
}
let sleeper = sleep_map
.iter()
.max_by_key(|(_, array)| array.iter().max())
.unwrap();
let worst_minute = sleeper
.1
.iter()
.enumerate()
.max_by_key(|it| it.1)
.unwrap()
.0;
println!("Result 2: {}", *sleeper.0 as usize * worst_minute);
}

51
src/tasks/day05.rs Normal file
View File

@@ -0,0 +1,51 @@
use utils;
pub fn task1() {
let mut input = utils::read_file("input/day05.txt");
input = reduce(input);
println!("resulting polymer: {}", input); //11591 too high
println!("RESULT: {}", input.len());
}
pub fn task2() {
let input = utils::read_file("input/day05.txt");
let best = "abcdefghijklmnopqrstuvwxyz"
.chars()
.map(|c| {
(
c,
reduce(
input
.chars()
.filter(|ch| ch.to_lowercase().next().unwrap() != c)
.collect(),
),
)
}).max_by_key(|it| it.1.len())
.unwrap();
println!("Best: {} (length {})", best.0, best.1.len()); // 11184 too high
}
fn reduce(mut input: String) -> String {
let mut go_on = true;
while go_on {
go_on = false;
let mut index = 0;
while index < input.len() - 1 {
let a = input.chars().nth(index).unwrap();
let b = input.chars().nth(index + 1).unwrap();
if a.is_lowercase() && b.is_uppercase() && a == b.to_lowercase().next().unwrap()
|| b.is_lowercase() && a.is_uppercase() && b == a.to_lowercase().next().unwrap()
{
// println!("{} and {} match", a, b);
input.remove(index);
input.remove(index);
go_on = true;
}
index += 1;
}
}
input
}

View File

@@ -1,3 +1,5 @@
pub mod day01; pub mod day01;
pub mod day02; pub mod day02;
pub mod day03; pub mod day03;
pub mod day04;
pub mod day05;