summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore133
-rw-r--r--.idea/.gitignore8
-rw-r--r--.idea/aoc2024.iml15
-rw-r--r--.idea/inspectionProfiles/Project_Default.xml177
-rw-r--r--.idea/inspectionProfiles/profiles_settings.xml6
-rw-r--r--.idea/misc.xml4
-rw-r--r--.idea/modules.xml8
-rw-r--r--.idea/vcs.xml6
-rw-r--r--Cargo.toml3
-rw-r--r--aoc/Cargo.toml7
-rw-r--r--aoc/src/lib.rs74
11 files changed, 441 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..0f22051
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,133 @@
1# Created by https://www.toptal.com/developers/gitignore/api/rust,intellij
2# Edit at https://www.toptal.com/developers/gitignore?templates=rust,intellij
3
4### Intellij ###
5# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
6# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
7
8# User-specific stuff
9.idea/**/workspace.xml
10.idea/**/tasks.xml
11.idea/**/usage.statistics.xml
12.idea/**/dictionaries
13.idea/**/shelf
14
15# AWS User-specific
16.idea/**/aws.xml
17
18# Generated files
19.idea/**/contentModel.xml
20
21# Sensitive or high-churn files
22.idea/**/dataSources/
23.idea/**/dataSources.ids
24.idea/**/dataSources.local.xml
25.idea/**/sqlDataSources.xml
26.idea/**/dynamic.xml
27.idea/**/uiDesigner.xml
28.idea/**/dbnavigator.xml
29
30# Gradle
31.idea/**/gradle.xml
32.idea/**/libraries
33
34# Gradle and Maven with auto-import
35# When using Gradle or Maven with auto-import, you should exclude module files,
36# since they will be recreated, and may cause churn. Uncomment if using
37# auto-import.
38# .idea/artifacts
39# .idea/compiler.xml
40# .idea/jarRepositories.xml
41# .idea/modules.xml
42# .idea/*.iml
43# .idea/modules
44# *.iml
45# *.ipr
46
47# CMake
48cmake-build-*/
49
50# Mongo Explorer plugin
51.idea/**/mongoSettings.xml
52
53# File-based project format
54*.iws
55
56# IntelliJ
57out/
58
59# mpeltonen/sbt-idea plugin
60.idea_modules/
61
62# JIRA plugin
63atlassian-ide-plugin.xml
64
65# Cursive Clojure plugin
66.idea/replstate.xml
67
68# SonarLint plugin
69.idea/sonarlint/
70
71# Crashlytics plugin (for Android Studio and IntelliJ)
72com_crashlytics_export_strings.xml
73crashlytics.properties
74crashlytics-build.properties
75fabric.properties
76
77# Editor-based Rest Client
78.idea/httpRequests
79
80# Android studio 3.1+ serialized cache file
81.idea/caches/build_file_checksums.ser
82
83### Intellij Patch ###
84# Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721
85
86# *.iml
87# modules.xml
88# .idea/misc.xml
89# *.ipr
90
91# Sonarlint plugin
92# https://plugins.jetbrains.com/plugin/7973-sonarlint
93.idea/**/sonarlint/
94
95# SonarQube Plugin
96# https://plugins.jetbrains.com/plugin/7238-sonarqube-community-plugin
97.idea/**/sonarIssues.xml
98
99# Markdown Navigator plugin
100# https://plugins.jetbrains.com/plugin/7896-markdown-navigator-enhanced
101.idea/**/markdown-navigator.xml
102.idea/**/markdown-navigator-enh.xml
103.idea/**/markdown-navigator/
104
105# Cache file creation bug
106# See https://youtrack.jetbrains.com/issue/JBR-2257
107.idea/$CACHE_FILE$
108
109# CodeStream plugin
110# https://plugins.jetbrains.com/plugin/12206-codestream
111.idea/codestream.xml
112
113# Azure Toolkit for IntelliJ plugin
114# https://plugins.jetbrains.com/plugin/8053-azure-toolkit-for-intellij
115.idea/**/azureSettings.xml
116
117### Rust ###
118# Generated by Cargo
119# will have compiled files and executables
120debug/
121target/
122
123# Remove Cargo.lock from gitignore if creating an executable, leave it for libraries
124# More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html
125Cargo.lock
126
127# These are backup files generated by rustfmt
128**/*.rs.bk
129
130# MSVC Windows builds of rustc generate these, which store debugging information
131*.pdb
132
133# End of https://www.toptal.com/developers/gitignore/api/rust,intellij
diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 0000000..13566b8
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,8 @@
1# Default ignored files
2/shelf/
3/workspace.xml
4# Editor-based HTTP Client requests
5/httpRequests/
6# Datasource local storage ignored files
7/dataSources/
8/dataSources.local.xml
diff --git a/.idea/aoc2024.iml b/.idea/aoc2024.iml
new file mode 100644
index 0000000..784d79e
--- /dev/null
+++ b/.idea/aoc2024.iml
@@ -0,0 +1,15 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<module type="PYTHON_MODULE" version="4">
3 <component name="NewModuleRootManager">
4 <content url="file://$MODULE_DIR$">
5 <sourceFolder url="file://$MODULE_DIR$/aoc/src" isTestSource="false" />
6 <sourceFolder url="file://$MODULE_DIR$/day1/src" isTestSource="false" />
7 <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
8 <sourceFolder url="file://$MODULE_DIR$/day2/src" isTestSource="false" />
9 <excludeFolder url="file://$MODULE_DIR$/aoc/target" />
10 <excludeFolder url="file://$MODULE_DIR$/target" />
11 </content>
12 <orderEntry type="inheritedJdk" />
13 <orderEntry type="sourceFolder" forTests="false" />
14 </component>
15</module> \ No newline at end of file
diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml
new file mode 100644
index 0000000..a9696b0
--- /dev/null
+++ b/.idea/inspectionProfiles/Project_Default.xml
@@ -0,0 +1,177 @@
1<component name="InspectionProjectProfileManager">
2 <profile version="1.0">
3 <option name="myName" value="Project Default" />
4 <inspection_tool class="Eslint" enabled="true" level="WARNING" enabled_by_default="true" />
5 <inspection_tool class="PyCompatibilityInspection" enabled="true" level="WARNING" enabled_by_default="true">
6 <option name="ourVersions">
7 <value>
8 <list size="3">
9 <item index="0" class="java.lang.String" itemvalue="3.12" />
10 <item index="1" class="java.lang.String" itemvalue="3.11" />
11 <item index="2" class="java.lang.String" itemvalue="3.10" />
12 </list>
13 </value>
14 </option>
15 </inspection_tool>
16 <inspection_tool class="PyPackageRequirementsInspection" enabled="true" level="WARNING" enabled_by_default="true">
17 <option name="ignoredPackages">
18 <value>
19 <list size="151">
20 <item index="0" class="java.lang.String" itemvalue="stringcase" />
21 <item index="1" class="java.lang.String" itemvalue="django-sitemaps" />
22 <item index="2" class="java.lang.String" itemvalue="dj-database-url" />
23 <item index="3" class="java.lang.String" itemvalue="tabulate" />
24 <item index="4" class="java.lang.String" itemvalue="django-s3-storage" />
25 <item index="5" class="java.lang.String" itemvalue="whitenoise" />
26 <item index="6" class="java.lang.String" itemvalue="form-designer" />
27 <item index="7" class="java.lang.String" itemvalue="gunicorn" />
28 <item index="8" class="java.lang.String" itemvalue="django-cabinet" />
29 <item index="9" class="java.lang.String" itemvalue="django-debug-toolbar" />
30 <item index="10" class="java.lang.String" itemvalue="dataclasses-json" />
31 <item index="11" class="java.lang.String" itemvalue="celery" />
32 <item index="12" class="java.lang.String" itemvalue="django-sortedm2m" />
33 <item index="13" class="java.lang.String" itemvalue="Django" />
34 <item index="14" class="java.lang.String" itemvalue="django-redis" />
35 <item index="15" class="java.lang.String" itemvalue="feincms3" />
36 <item index="16" class="java.lang.String" itemvalue="django-db-geventpool" />
37 <item index="17" class="java.lang.String" itemvalue="django-redis-cache" />
38 <item index="18" class="java.lang.String" itemvalue="django-admin-sortable2" />
39 <item index="19" class="java.lang.String" itemvalue="gevent" />
40 <item index="20" class="java.lang.String" itemvalue="pycountry" />
41 <item index="21" class="java.lang.String" itemvalue="djangorestframework" />
42 <item index="22" class="java.lang.String" itemvalue="django-cors-headers" />
43 <item index="23" class="java.lang.String" itemvalue="greenlet" />
44 <item index="24" class="java.lang.String" itemvalue="pickleshare" />
45 <item index="25" class="java.lang.String" itemvalue="py" />
46 <item index="26" class="java.lang.String" itemvalue="invoke" />
47 <item index="27" class="java.lang.String" itemvalue="geocoder" />
48 <item index="28" class="java.lang.String" itemvalue="pycparser" />
49 <item index="29" class="java.lang.String" itemvalue="redis" />
50 <item index="30" class="java.lang.String" itemvalue="postmarker" />
51 <item index="31" class="java.lang.String" itemvalue="coreschema" />
52 <item index="32" class="java.lang.String" itemvalue="django-widget-tweaks" />
53 <item index="33" class="java.lang.String" itemvalue="Authlib" />
54 <item index="34" class="java.lang.String" itemvalue="ipython-genutils" />
55 <item index="35" class="java.lang.String" itemvalue="django-admin-sortable" />
56 <item index="36" class="java.lang.String" itemvalue="PyNaCl" />
57 <item index="37" class="java.lang.String" itemvalue="Pygments" />