few moore days. middle of day22

main
Shoofle 10 months ago
parent 14d98a5f48
commit 08cffbf2d2
  1. 2
      day16/target/.rustc_info.json
  2. 2
      day17/target/.rustc_info.json
  3. 2
      day18/target/.rustc_info.json
  4. 2
      day19/target/.rustc_info.json
  5. 8
      day21/.idea/.gitignore
  6. 11
      day21/.idea/day21.iml
  7. 8
      day21/.idea/modules.xml
  8. 6
      day21/.idea/vcs.xml
  9. 7
      day21/Cargo.lock
  10. 8
      day21/Cargo.toml
  11. 29
      day21/drawings
  12. 90
      day21/src/main.rs
  13. 1
      day21/target/.rustc_info.json
  14. 3
      day21/target/CACHEDIR.TAG
  15. 0
      day21/target/debug/.cargo-lock
  16. 1
      day21/target/debug/.fingerprint/day21-4366a4b2280a9166/bin-day21
  17. 1
      day21/target/debug/.fingerprint/day21-4366a4b2280a9166/bin-day21.json
  18. BIN
      day21/target/debug/.fingerprint/day21-4366a4b2280a9166/dep-bin-day21
  19. 1
      day21/target/debug/.fingerprint/day21-4366a4b2280a9166/invoked.timestamp
  20. 1
      day21/target/debug/.fingerprint/day21-aa9d24052146d0b2/bin-day21
  21. 1
      day21/target/debug/.fingerprint/day21-aa9d24052146d0b2/bin-day21.json
  22. 1
      day21/target/debug/.fingerprint/day21-aa9d24052146d0b2/invoked.timestamp
  23. 1
      day21/target/debug/.fingerprint/day21-f3c759690b3a77a6/invoked.timestamp
  24. 1
      day21/target/debug/.fingerprint/day21-f3c759690b3a77a6/test-bin-day21
  25. 1
      day21/target/debug/.fingerprint/day21-f3c759690b3a77a6/test-bin-day21.json
  26. BIN
      day21/target/debug/day21
  27. 1
      day21/target/debug/day21.d
  28. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166
  29. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.13o1ygn1t9a7g0gm.rcgu.o
  30. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.1akj2d3udkogd7ix.rcgu.o
  31. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.1b054wj5c26c0b8q.rcgu.o
  32. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.1d1rjibablwij5lb.rcgu.o
  33. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.1iqv29ntviu0hmzv.rcgu.o
  34. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.1jfkgowecbh448ls.rcgu.o
  35. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.1jho50chkjtp6utm.rcgu.o
  36. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.1lj6b2puwwnvqzrl.rcgu.o
  37. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.1m96q16ir68x34mx.rcgu.o
  38. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.1ou72scxz2zq7fkn.rcgu.o
  39. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.1zxgtw66ckz6rs5q.rcgu.o
  40. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.22elkzt97zl2rv2v.rcgu.o
  41. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.24h53w41ovxvl207.rcgu.o
  42. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.26myhzjctyqte2d7.rcgu.o
  43. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.293jm20yd6q5tgv8.rcgu.o
  44. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.29oh3rajp2z8ad60.rcgu.o
  45. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.2ar6omwj20zoyv3l.rcgu.o
  46. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.2atbbbhwjjalmwkr.rcgu.o
  47. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.2iyed1k4kb5qarje.rcgu.o
  48. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.2mb0270yoay854bd.rcgu.o
  49. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.2mt2zlzzz5sjh4n8.rcgu.o
  50. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.2niolxwraklluhn6.rcgu.o
  51. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.2q9w5f4mbpzkr9r.rcgu.o
  52. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.2r75gk5qfod514vk.rcgu.o
  53. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.2so62oiog7rmiq8y.rcgu.o
  54. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.2vf1jlajpjx2b8vx.rcgu.o
  55. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.2xvj3u2xo349xrth.rcgu.o
  56. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.2ye3ly94g6c1zdzr.rcgu.o
  57. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.31hbzf0nkzf3xltg.rcgu.o
  58. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.3grg7xixqbenxcl7.rcgu.o
  59. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.3hcb7jhgkiqtvol2.rcgu.o
  60. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.3iqz892r3dtn2st9.rcgu.o
  61. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.3kdmmhdjmh4o63xk.rcgu.o
  62. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.3kqt2uzdl8aw0h34.rcgu.o
  63. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.3pe6kgxg71hk5w9h.rcgu.o
  64. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.3q5ook61iiasvrpn.rcgu.o
  65. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.3r7olaky54ve1d3c.rcgu.o
  66. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.3tuju1pd5v5qju6z.rcgu.o
  67. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.3u5dqloazhmy73xt.rcgu.o
  68. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.3uinxvlytgtu5xxu.rcgu.o
  69. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.3vf79yi5cg3brf8s.rcgu.o
  70. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.3z7etljmz9en23w9.rcgu.o
  71. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.40rkbimbt023vdpi.rcgu.o
  72. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.44bhcuujzrryi7ls.rcgu.o
  73. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.44zbrfv0hkicy2wj.rcgu.o
  74. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.48668tatumlionh4.rcgu.o
  75. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.48th2f7hzajkgjwe.rcgu.o
  76. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.49rm2jkiwypvfs75.rcgu.o
  77. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.4b37rqv770dolpk2.rcgu.o
  78. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.4bq2491zme8hegdw.rcgu.o
  79. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.4fa1yhdojt4zkfmk.rcgu.o
  80. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.4ghhiak74pg1kjns.rcgu.o
  81. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.4gynve2vg4og6bad.rcgu.o
  82. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.4hoe8cz1y0vsg0si.rcgu.o
  83. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.4j8upeq95okfbwn5.rcgu.o
  84. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.4jejzh1id5swofda.rcgu.o
  85. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.4ktq6ypxzxwo3q9q.rcgu.o
  86. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.4mv9vzzdzclh0a23.rcgu.o
  87. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.4mxncc5ajt6sbyum.rcgu.o
  88. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.4nyunujk96fvmedu.rcgu.o
  89. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.4osx0rc2w59i7ufm.rcgu.o
  90. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.4pe6xdokj00eft78.rcgu.o
  91. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.4sdunr1mlcudk53u.rcgu.o
  92. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.4sseja6ddw3nfmix.rcgu.o
  93. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.4y7pcubi56xk1r14.rcgu.o
  94. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.4yv738l35t3ry5ja.rcgu.o
  95. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.50fjrwsllu11z550.rcgu.o
  96. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.56jf5qv9hh38qec0.rcgu.o
  97. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.573iw1uddhqficf8.rcgu.o
  98. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.579c1ibzi90h6zl7.rcgu.o
  99. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.57xbfy1aj77okqz2.rcgu.o
  100. BIN
      day21/target/debug/deps/day21-4366a4b2280a9166.6g6n90ntn2undy9.rcgu.o
  101. Some files were not shown because too many files have changed in this diff Show More

@ -1 +1 @@
{"rustc_fingerprint":14318102787793507742,"outputs":{"15729799797837862367":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.dylib\nlib___.dylib\nlib___.a\nlib___.dylib\n/Users/shoofle/.rustup/toolchains/stable-x86_64-apple-darwin\noff\npacked\nunpacked\n___\ndebug_assertions\npanic=\"unwind\"\nproc_macro\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"\"\ntarget_family=\"unix\"\ntarget_feature=\"cmpxchg16b\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_feature=\"sse3\"\ntarget_feature=\"sse4.1\"\ntarget_feature=\"ssse3\"\ntarget_has_atomic=\"128\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_os=\"macos\"\ntarget_pointer_width=\"64\"\ntarget_vendor=\"apple\"\nunix\n","stderr":""},"4614504638168534921":{"success":true,"status":"","code":0,"stdout":"rustc 1.74.1 (a28077b28 2023-12-04)\nbinary: rustc\ncommit-hash: a28077b28a02b92985b3a3faecf92813155f1ea1\ncommit-date: 2023-12-04\nhost: x86_64-apple-darwin\nrelease: 1.74.1\nLLVM version: 17.0.4\n","stderr":""}},"successes":{}}
{"rustc_fingerprint":18427324047803895159,"outputs":{"12285253167677315500":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.dylib\nlib___.dylib\nlib___.a\nlib___.dylib\n/Users/shoofle/.rustup/toolchains/stable-x86_64-apple-darwin\noff\npacked\nunpacked\n___\ndebug_assertions\noverflow_checks\npanic=\"unwind\"\nproc_macro\nrelocation_model=\"pic\"\ntarget_abi=\"\"\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"\"\ntarget_family=\"unix\"\ntarget_feature=\"cmpxchg16b\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_feature=\"sse3\"\ntarget_feature=\"sse4.1\"\ntarget_feature=\"ssse3\"\ntarget_has_atomic\ntarget_has_atomic=\"128\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_has_atomic_equal_alignment=\"16\"\ntarget_has_atomic_equal_alignment=\"32\"\ntarget_has_atomic_equal_alignment=\"64\"\ntarget_has_atomic_equal_alignment=\"8\"\ntarget_has_atomic_equal_alignment=\"ptr\"\ntarget_has_atomic_load_store\ntarget_has_atomic_load_store=\"128\"\ntarget_has_atomic_load_store=\"16\"\ntarget_has_atomic_load_store=\"32\"\ntarget_has_atomic_load_store=\"64\"\ntarget_has_atomic_load_store=\"8\"\ntarget_has_atomic_load_store=\"ptr\"\ntarget_os=\"macos\"\ntarget_pointer_width=\"64\"\ntarget_thread_local\ntarget_vendor=\"apple\"\nunix\n","stderr":""},"4614504638168534921":{"success":true,"status":"","code":0,"stdout":"rustc 1.74.1 (a28077b28 2023-12-04)\nbinary: rustc\ncommit-hash: a28077b28a02b92985b3a3faecf92813155f1ea1\ncommit-date: 2023-12-04\nhost: x86_64-apple-darwin\nrelease: 1.74.1\nLLVM version: 17.0.4\n","stderr":""}},"successes":{}}

@ -1 +1 @@
{"rustc_fingerprint":14318102787793507742,"outputs":{"4614504638168534921":{"success":true,"status":"","code":0,"stdout":"rustc 1.74.1 (a28077b28 2023-12-04)\nbinary: rustc\ncommit-hash: a28077b28a02b92985b3a3faecf92813155f1ea1\ncommit-date: 2023-12-04\nhost: x86_64-apple-darwin\nrelease: 1.74.1\nLLVM version: 17.0.4\n","stderr":""},"15729799797837862367":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.dylib\nlib___.dylib\nlib___.a\nlib___.dylib\n/Users/shoofle/.rustup/toolchains/stable-x86_64-apple-darwin\noff\npacked\nunpacked\n___\ndebug_assertions\npanic=\"unwind\"\nproc_macro\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"\"\ntarget_family=\"unix\"\ntarget_feature=\"cmpxchg16b\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_feature=\"sse3\"\ntarget_feature=\"sse4.1\"\ntarget_feature=\"ssse3\"\ntarget_has_atomic=\"128\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_os=\"macos\"\ntarget_pointer_width=\"64\"\ntarget_vendor=\"apple\"\nunix\n","stderr":""}},"successes":{}}
{"rustc_fingerprint":18427324047803895159,"outputs":{"12285253167677315500":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.dylib\nlib___.dylib\nlib___.a\nlib___.dylib\n/Users/shoofle/.rustup/toolchains/stable-x86_64-apple-darwin\noff\npacked\nunpacked\n___\ndebug_assertions\noverflow_checks\npanic=\"unwind\"\nproc_macro\nrelocation_model=\"pic\"\ntarget_abi=\"\"\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"\"\ntarget_family=\"unix\"\ntarget_feature=\"cmpxchg16b\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_feature=\"sse3\"\ntarget_feature=\"sse4.1\"\ntarget_feature=\"ssse3\"\ntarget_has_atomic\ntarget_has_atomic=\"128\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_has_atomic_equal_alignment=\"16\"\ntarget_has_atomic_equal_alignment=\"32\"\ntarget_has_atomic_equal_alignment=\"64\"\ntarget_has_atomic_equal_alignment=\"8\"\ntarget_has_atomic_equal_alignment=\"ptr\"\ntarget_has_atomic_load_store\ntarget_has_atomic_load_store=\"128\"\ntarget_has_atomic_load_store=\"16\"\ntarget_has_atomic_load_store=\"32\"\ntarget_has_atomic_load_store=\"64\"\ntarget_has_atomic_load_store=\"8\"\ntarget_has_atomic_load_store=\"ptr\"\ntarget_os=\"macos\"\ntarget_pointer_width=\"64\"\ntarget_thread_local\ntarget_vendor=\"apple\"\nunix\n","stderr":""},"4614504638168534921":{"success":true,"status":"","code":0,"stdout":"rustc 1.74.1 (a28077b28 2023-12-04)\nbinary: rustc\ncommit-hash: a28077b28a02b92985b3a3faecf92813155f1ea1\ncommit-date: 2023-12-04\nhost: x86_64-apple-darwin\nrelease: 1.74.1\nLLVM version: 17.0.4\n","stderr":""}},"successes":{}}

@ -1 +1 @@
{"rustc_fingerprint":14318102787793507742,"outputs":{"4614504638168534921":{"success":true,"status":"","code":0,"stdout":"rustc 1.74.1 (a28077b28 2023-12-04)\nbinary: rustc\ncommit-hash: a28077b28a02b92985b3a3faecf92813155f1ea1\ncommit-date: 2023-12-04\nhost: x86_64-apple-darwin\nrelease: 1.74.1\nLLVM version: 17.0.4\n","stderr":""},"15729799797837862367":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.dylib\nlib___.dylib\nlib___.a\nlib___.dylib\n/Users/shoofle/.rustup/toolchains/stable-x86_64-apple-darwin\noff\npacked\nunpacked\n___\ndebug_assertions\npanic=\"unwind\"\nproc_macro\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"\"\ntarget_family=\"unix\"\ntarget_feature=\"cmpxchg16b\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_feature=\"sse3\"\ntarget_feature=\"sse4.1\"\ntarget_feature=\"ssse3\"\ntarget_has_atomic=\"128\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_os=\"macos\"\ntarget_pointer_width=\"64\"\ntarget_vendor=\"apple\"\nunix\n","stderr":""}},"successes":{}}
{"rustc_fingerprint":18427324047803895159,"outputs":{"12285253167677315500":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.dylib\nlib___.dylib\nlib___.a\nlib___.dylib\n/Users/shoofle/.rustup/toolchains/stable-x86_64-apple-darwin\noff\npacked\nunpacked\n___\ndebug_assertions\noverflow_checks\npanic=\"unwind\"\nproc_macro\nrelocation_model=\"pic\"\ntarget_abi=\"\"\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"\"\ntarget_family=\"unix\"\ntarget_feature=\"cmpxchg16b\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_feature=\"sse3\"\ntarget_feature=\"sse4.1\"\ntarget_feature=\"ssse3\"\ntarget_has_atomic\ntarget_has_atomic=\"128\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_has_atomic_equal_alignment=\"16\"\ntarget_has_atomic_equal_alignment=\"32\"\ntarget_has_atomic_equal_alignment=\"64\"\ntarget_has_atomic_equal_alignment=\"8\"\ntarget_has_atomic_equal_alignment=\"ptr\"\ntarget_has_atomic_load_store\ntarget_has_atomic_load_store=\"128\"\ntarget_has_atomic_load_store=\"16\"\ntarget_has_atomic_load_store=\"32\"\ntarget_has_atomic_load_store=\"64\"\ntarget_has_atomic_load_store=\"8\"\ntarget_has_atomic_load_store=\"ptr\"\ntarget_os=\"macos\"\ntarget_pointer_width=\"64\"\ntarget_thread_local\ntarget_vendor=\"apple\"\nunix\n","stderr":""},"4614504638168534921":{"success":true,"status":"","code":0,"stdout":"rustc 1.74.1 (a28077b28 2023-12-04)\nbinary: rustc\ncommit-hash: a28077b28a02b92985b3a3faecf92813155f1ea1\ncommit-date: 2023-12-04\nhost: x86_64-apple-darwin\nrelease: 1.74.1\nLLVM version: 17.0.4\n","stderr":""}},"successes":{}}

@ -1 +1 @@
{"rustc_fingerprint":14318102787793507742,"outputs":{"15729799797837862367":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.dylib\nlib___.dylib\nlib___.a\nlib___.dylib\n/Users/shoofle/.rustup/toolchains/stable-x86_64-apple-darwin\noff\npacked\nunpacked\n___\ndebug_assertions\npanic=\"unwind\"\nproc_macro\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"\"\ntarget_family=\"unix\"\ntarget_feature=\"cmpxchg16b\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_feature=\"sse3\"\ntarget_feature=\"sse4.1\"\ntarget_feature=\"ssse3\"\ntarget_has_atomic=\"128\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_os=\"macos\"\ntarget_pointer_width=\"64\"\ntarget_vendor=\"apple\"\nunix\n","stderr":""},"4614504638168534921":{"success":true,"status":"","code":0,"stdout":"rustc 1.74.1 (a28077b28 2023-12-04)\nbinary: rustc\ncommit-hash: a28077b28a02b92985b3a3faecf92813155f1ea1\ncommit-date: 2023-12-04\nhost: x86_64-apple-darwin\nrelease: 1.74.1\nLLVM version: 17.0.4\n","stderr":""}},"successes":{}}
{"rustc_fingerprint":18427324047803895159,"outputs":{"4614504638168534921":{"success":true,"status":"","code":0,"stdout":"rustc 1.74.1 (a28077b28 2023-12-04)\nbinary: rustc\ncommit-hash: a28077b28a02b92985b3a3faecf92813155f1ea1\ncommit-date: 2023-12-04\nhost: x86_64-apple-darwin\nrelease: 1.74.1\nLLVM version: 17.0.4\n","stderr":""},"12285253167677315500":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.dylib\nlib___.dylib\nlib___.a\nlib___.dylib\n/Users/shoofle/.rustup/toolchains/stable-x86_64-apple-darwin\noff\npacked\nunpacked\n___\ndebug_assertions\noverflow_checks\npanic=\"unwind\"\nproc_macro\nrelocation_model=\"pic\"\ntarget_abi=\"\"\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"\"\ntarget_family=\"unix\"\ntarget_feature=\"cmpxchg16b\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_feature=\"sse3\"\ntarget_feature=\"sse4.1\"\ntarget_feature=\"ssse3\"\ntarget_has_atomic\ntarget_has_atomic=\"128\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_has_atomic_equal_alignment=\"16\"\ntarget_has_atomic_equal_alignment=\"32\"\ntarget_has_atomic_equal_alignment=\"64\"\ntarget_has_atomic_equal_alignment=\"8\"\ntarget_has_atomic_equal_alignment=\"ptr\"\ntarget_has_atomic_load_store\ntarget_has_atomic_load_store=\"128\"\ntarget_has_atomic_load_store=\"16\"\ntarget_has_atomic_load_store=\"32\"\ntarget_has_atomic_load_store=\"64\"\ntarget_has_atomic_load_store=\"8\"\ntarget_has_atomic_load_store=\"ptr\"\ntarget_os=\"macos\"\ntarget_pointer_width=\"64\"\ntarget_thread_local\ntarget_vendor=\"apple\"\nunix\n","stderr":""}},"successes":{}}

@ -0,0 +1,8 @@
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="EMPTY_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/day21.iml" filepath="$PROJECT_DIR$/.idea/day21.iml" />
</modules>
</component>
</project>

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
</component>
</project>

7
day21/Cargo.lock generated

@ -0,0 +1,7 @@
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
version = 3
[[package]]
name = "day21"
version = "0.1.0"

@ -0,0 +1,8 @@
[package]
name = "day21"
version = "0.1.0"
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]

@ -0,0 +1,29 @@
.^.
<#>
.v.
points + #
# = 7596
points + # = 34324
..^..
./#\.
<#@#>
.\#/.
..v..
...^...
../#\..
./#@#\.
<#@#@#>
.\#@#/.
..\#/..
...v...
<+^+v+> +2\+2\+2/+2/+9#+4@
<+^+v+>+\+\+/+/+4*#+@
65 => x
131+65 => <x>
262+6

@ -0,0 +1,90 @@
use std::collections::HashSet;
use std::fs;
use std::env;
use crate::Dir::{Up, Down, Right, Left};
// THIS IS NOT A PLACE OF HONOR
type Coord = (i64, i64);
fn step(start: &Coord, d: &Dir, steps: i64) -> Coord {
match d {
Up => (start.0, start.1 - steps),
Down => (start.0, start.1 + steps),
Right => (start.0 + steps, start.1),
Left => (start.0 - steps, start.1),
}
}
fn neighbors(here: &Coord) -> HashSet<Coord> {
return HashSet::from([
step(here, &Up, 1), step(here, &Down, 1),
step(here, &Left, 1), step(here, &Right, 1)
]);
}
fn is_floor(here: &Coord, floors: &HashSet<Coord>, corner: &Coord) -> bool {
let here2: Coord = ((here.0 % corner.0 + corner.0) % corner.0,
(here.1 % corner.1 + corner.1) % corner.1);
return floors.contains(&here2);
}
#[derive(Clone, Copy, PartialEq, Eq, Hash, Debug)]
enum Dir { Up, Down, Left, Right }
fn main() {
println!("Hello, AoC day 21!");
let args: Vec<String> = env::args().collect();
if args.len() != 2 {
println!("wrong number of arguments!");
std::process::exit(1);
}
let file_path = &args[1];
let contents = fs::read_to_string(file_path).expect("Should have been able to read the file");
// build our grid!
let mut floors: HashSet<Coord> = HashSet::new();
let mut y = 0;
let mut x = 0;
let mut start = (-2, -2);
for line in contents.lines() {
x = 0;
for c in line.chars() {
if c == '.' || c == 'S' { floors.insert((x,y)); }
if c == 'S' { start = (x,y);}
x += 1;
}
y += 1;
}
let corner = (x,y);
let mut evens: HashSet<Coord> = HashSet::new();
let mut odds: HashSet<Coord> = HashSet::new();
let mut wavefront = HashSet::from([start]);
let iterations = 65+262+262+262 + 262+262;
for i in 0..iterations {
if i%2 == 0 {
evens.extend(&wavefront);
} else {
odds.extend(&wavefront);
}
wavefront = wavefront.iter()
.flat_map(|x| neighbors(x))
.filter(|x| is_floor(x, &floors, &corner))
.filter(|x| !evens.contains(x))
.filter(|x| !odds.contains(x))
.collect();
}
let count;
if iterations%2 == 0 {
count = wavefront.len() + evens.len();
} else {
count = wavefront.len() + odds.len();
}
println!("today's grid is {}x{}", corner.0, corner.1);
println!("The total number of spaces visitable after {iterations} steps is {count} with a wavefront of {}", wavefront.len());
}

@ -0,0 +1 @@
{"rustc_fingerprint":14318102787793507742,"outputs":{"4614504638168534921":{"success":true,"status":"","code":0,"stdout":"rustc 1.74.1 (a28077b28 2023-12-04)\nbinary: rustc\ncommit-hash: a28077b28a02b92985b3a3faecf92813155f1ea1\ncommit-date: 2023-12-04\nhost: x86_64-apple-darwin\nrelease: 1.74.1\nLLVM version: 17.0.4\n","stderr":""},"15729799797837862367":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.dylib\nlib___.dylib\nlib___.a\nlib___.dylib\n/Users/shoofle/.rustup/toolchains/stable-x86_64-apple-darwin\noff\npacked\nunpacked\n___\ndebug_assertions\npanic=\"unwind\"\nproc_macro\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"\"\ntarget_family=\"unix\"\ntarget_feature=\"cmpxchg16b\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_feature=\"sse3\"\ntarget_feature=\"sse4.1\"\ntarget_feature=\"ssse3\"\ntarget_has_atomic=\"128\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_os=\"macos\"\ntarget_pointer_width=\"64\"\ntarget_vendor=\"apple\"\nunix\n","stderr":""}},"successes":{}}

@ -0,0 +1,3 @@
Signature: 8a477f597d28d172789f06886806bc55
# This file is a cache directory tag created by cargo.
# For information about cache directory tags see https://bford.info/cachedir/

@ -0,0 +1 @@
{"rustc":4443399816165520464,"features":"[]","target":3944935762996468705,"profile":237655285757591511,"path":1684066648322511884,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/day21-4366a4b2280a9166/dep-bin-day21"}}],"rustflags":[],"metadata":7797948686568424061,"config":2202906307356721367,"compile_kind":0}

@ -0,0 +1 @@
This file has an mtime of when this was started.

@ -0,0 +1 @@
{"rustc":4443399816165520464,"features":"[]","target":3944935762996468705,"profile":13396965805329499462,"path":1684066648322511884,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/day21-aa9d24052146d0b2/dep-bin-day21"}}],"rustflags":[],"metadata":7797948686568424061,"config":2202906307356721367,"compile_kind":0}

@ -0,0 +1 @@
This file has an mtime of when this was started.

@ -0,0 +1 @@
This file has an mtime of when this was started.

@ -0,0 +1 @@
{"rustc":4443399816165520464,"features":"[]","target":3944935762996468705,"profile":13053956386274884697,"path":1684066648322511884,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/day21-f3c759690b3a77a6/dep-test-bin-day21"}}],"rustflags":[],"metadata":7797948686568424061,"config":2202906307356721367,"compile_kind":0}

Binary file not shown.

@ -0,0 +1 @@
/Users/shoofle/Projects/aoc_2023/day21/target/debug/day21: /Users/shoofle/Projects/aoc_2023/day21/src/main.rs

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save