Skip to content

Commit e9ddbcc

Browse files
committed
2023 day 2 slight speedup
1 parent cb1c58a commit e9ddbcc

File tree

1 file changed

+3
-5
lines changed

1 file changed

+3
-5
lines changed

AdventOfCode/Solutions/Year2023/Day20-Solution.cs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -64,15 +64,15 @@ protected override object SolvePartOne()
6464
long lowPulses = 0;
6565
long highPulses = 0;
6666

67-
for(int i = 0; i < 1000; i++)
67+
for(int i = 1; i <= 1000; i++)
6868
{
6969
modules["button"].incomingPulses.Enqueue(("finger", false));
7070
processOrder.Enqueue("button");
7171

7272
while(processOrder.TryDequeue(out string nextPulseTarget))
7373
{
7474
(long pulsesSent, bool pulseVal) = modules[nextPulseTarget].ProcessPulse();
75-
75+
if (rxConjunctions.ContainsKey(nextPulseTarget) && rxConjunctions[nextPulseTarget] == 0 && pulseVal) rxConjunctions[nextPulseTarget] = i;
7676
if (pulseVal) highPulses += pulsesSent;
7777
else lowPulses += pulsesSent;
7878
}
@@ -83,9 +83,7 @@ protected override object SolvePartOne()
8383

8484
protected override object SolvePartTwo()
8585
{
86-
foreach (var m in modules.Values) m.Reset();
87-
88-
for (int i = 1; ; i++)
86+
for (int i = 1001; ; i++)
8987
{
9088
modules["button"].incomingPulses.Enqueue(("finger", false));
9189
processOrder.Enqueue("button");

0 commit comments

Comments
 (0)