summaryrefslogtreecommitdiff
path: root/day4/day4.part1.92f
blob: 26f290b304cbdfbe5392e225d5ce7d5edca738c7 (plain)
ofshex dumpascii
0000 2a 2a 54 49 39 32 2a 2a 01 00 64 61 79 34 00 00 00 00 50 61 72 74 31 20 44 61 79 34 20 73 3a 20 **TI92**..day4....Part1.Day4.s:.
0020 70 61 72 73 65 64 20 69 6e 70 75 74 2c 20 77 3a 20 69 6e 70 75 74 20 77 69 64 01 00 52 00 00 00 parsed.input,.w:.input.wid..R...
0040 70 61 72 74 31 00 00 00 12 00 00 00 74 02 00 00 a5 5a 00 00 00 00 02 1a 28 73 2c 77 29 0d 46 75 part1.......t....Z......(s,w).Fu
0060 6e 63 0d 4c 6f 63 61 6c 20 68 2c 69 2c 6a 2c 63 75 72 72 2c 70 72 65 76 73 2c 70 63 2c 72 65 73 nc.Local.h,i,j,curr,prevs,pc,res
0080 75 6c 74 0d 0d 64 69 6d 28 73 29 16 68 0d 49 66 20 68 3c 31 20 54 68 65 6e 0d 20 52 65 74 75 72 ult..dim(s).h.If.h<1.Then..Retur
00a0 6e 20 30 0d 45 6c 73 65 49 66 20 68 3d 31 20 54 68 65 6e 0d 20 52 65 74 75 72 6e 20 63 6e 74 62 n.0.ElseIf.h=1.Then..Return.cntb
00c0 69 74 73 28 73 5b 31 5d 29 0d 45 6e 64 49 66 0d 0d 30 16 72 65 73 75 6c 74 0d 46 6f 72 20 69 2c its(s[1]).EndIf..0.result.For.i,
00e0 31 2c 77 0d 20 6e 65 77 4c 69 73 74 28 33 29 16 70 72 65 76 73 0d 20 66 61 6c 73 65 16 70 63 0d 1,w..newList(3).prevs..false.pc.
0100 20 46 6f 72 20 6a 2c 31 2c 68 0d 20 20 67 65 74 62 69 74 73 28 73 5b 6a 5d 2c 69 2d 31 2c 33 29 .For.j,1,h...getbits(s[j],i-1,3)
0120 16 63 75 72 72 0d 20 20 63 6e 74 33 62 69 74 73 28 63 75 72 72 29 16 70 72 65 76 73 5b 6d 6f 64 .curr...cnt3bits(curr).prevs[mod
0140 28 6a 2c 33 29 2b 31 5d 0d 20 20 a9 27 61 6e 64 27 20 69 73 20 6e 6f 74 20 73 68 6f 72 74 20 63 (j,3)+1]....'and'.is.not.short.c
0160 69 72 63 75 69 74 69 6e 67 0d 20 20 49 66 20 70 63 20 54 68 65 6e 0d 20 20 20 49 66 20 73 75 6d ircuiting...If.pc.Then....If.sum
0180 28 70 72 65 76 73 29 3c 35 20 54 68 65 6e 0d 20 20 20 20 72 65 73 75 6c 74 2b 31 16 72 65 73 75 (prevs)<5.Then.....result+1.resu
01a0 6c 74 0d 20 20 20 45 6e 64 49 66 0d 20 20 45 6e 64 49 66 0d 20 20 63 75 72 72 3d 32 20 6f 72 20 lt....EndIf...EndIf...curr=2.or.
01c0 63 75 72 72 3d 33 20 6f 72 20 63 75 72 72 3d 36 20 6f 72 20 63 75 72 72 3d 37 16 70 63 0d 20 45 curr=3.or.curr=6.or.curr=7.pc..E
01e0 6e 64 46 6f 72 0d 20 a9 20 6c 61 73 74 20 6c 69 6e 65 0d 20 49 66 20 70 63 20 54 68 65 6e 0d 20 ndFor....last.line..If.pc.Then..
0200 20 30 16 70 72 65 76 73 5b 6d 6f 64 28 68 2b 31 2c 33 29 2b 31 5d 0d 20 20 49 66 20 73 75 6d 28 .0.prevs[mod(h+1,3)+1]...If.sum(
0220 70 72 65 76 73 29 3c 35 20 54 68 65 6e 0d 20 20 20 72 65 73 75 6c 74 2b 31 16 72 65 73 75 6c 74 prevs)<5.Then....result+1.result
0240 0d 20 20 45 6e 64 49 66 0d 20 45 6e 64 49 66 0d 45 6e 64 46 6f 72 0d 0d 72 65 73 75 6c 74 0d 0d ...EndIf..EndIf.EndFor..result..
0260 45 6e 64 46 75 6e 63 0d 00 00 00 19 e4 e5 00 00 08 dc d6 a5 EndFunc.............