revert to single input file for day19/2 (will be handled in code)
This commit is contained in:
2
README
2
README
@@ -6,5 +6,5 @@ Status:
|
|||||||
|
|
||||||
Done:
|
Done:
|
||||||
Day 1: Bash, C, and Cobol
|
Day 1: Bash, C, and Cobol
|
||||||
Days 2-17: Bash and C
|
Days 2-18: Bash and C
|
||||||
Days 18-19: Bash
|
Days 18-19: Bash
|
||||||
|
@@ -1,616 +0,0 @@
|
|||||||
0: 8 11
|
|
||||||
4: 92 5 | 5 5
|
|
||||||
123: 5 3 | 92 99
|
|
||||||
22: 103 92 | 88 5
|
|
||||||
90: 92 70 | 5 117
|
|
||||||
73: 24 92
|
|
||||||
27: 92 12 | 5 109
|
|
||||||
14: 55 5 | 4 92
|
|
||||||
109: 5 21 | 92 78
|
|
||||||
63: 92 91 | 5 64
|
|
||||||
118: 92 116 | 5 49
|
|
||||||
131: 103 92 | 111 5
|
|
||||||
115: 46 5 | 93 92
|
|
||||||
93: 92 89 | 5 107
|
|
||||||
84: 92 100 | 5 57
|
|
||||||
98: 5 40 | 92 72
|
|
||||||
39: 5 4 | 92 21
|
|
||||||
102: 59 5 | 131 92
|
|
||||||
55: 92 92 | 5 92
|
|
||||||
92: "b"
|
|
||||||
20: 92 103 | 5 21
|
|
||||||
110: 121 92 | 35 5
|
|
||||||
47: 78 5 | 4 92
|
|
||||||
48: 92 92 | 92 5
|
|
||||||
96: 92 73 | 5 1
|
|
||||||
106: 110 5 | 56 92
|
|
||||||
101: 92 83 | 5 127
|
|
||||||
105: 5 53 | 92 55
|
|
||||||
91: 117 5 | 117 92
|
|
||||||
60: 5 21 | 92 4
|
|
||||||
85: 92 55 | 5 33
|
|
||||||
103: 5 44 | 92 5
|
|
||||||
45: 108 5 | 119 92
|
|
||||||
82: 5 53 | 92 68
|
|
||||||
78: 92 92 | 5 5
|
|
||||||
58: 28 92 | 133 5
|
|
||||||
121: 92 90 | 5 14
|
|
||||||
16: 117 5 | 111 92
|
|
||||||
31: 92 114 | 5 87
|
|
||||||
112: 41 5 | 132 92
|
|
||||||
65: 53 5 | 48 92
|
|
||||||
19: 64 5 | 1 92
|
|
||||||
1: 5 24 | 92 70
|
|
||||||
77: 21 92 | 78 5
|
|
||||||
61: 92 32 | 5 102
|
|
||||||
52: 92 15 | 5 101
|
|
||||||
79: 92 75 | 5 38
|
|
||||||
64: 92 70
|
|
||||||
99: 67 92 | 23 5
|
|
||||||
94: 21 5 | 111 92
|
|
||||||
30: 92 24 | 5 117
|
|
||||||
26: 5 34 | 92 61
|
|
||||||
126: 5 45 | 92 113
|
|
||||||
50: 53 92 | 48 5
|
|
||||||
83: 5 48 | 92 111
|
|
||||||
25: 92 111 | 5 4
|
|
||||||
49: 33 5 | 21 92
|
|
||||||
40: 24 5 | 24 92
|
|
||||||
124: 92 55 | 5 4
|
|
||||||
7: 5 36 | 92 106
|
|
||||||
62: 128 5 | 60 92
|
|
||||||
97: 92 78 | 5 2
|
|
||||||
69: 2 5 | 111 92
|
|
||||||
70: 44 44
|
|
||||||
21: 5 92 | 5 5
|
|
||||||
117: 92 92
|
|
||||||
116: 92 70 | 5 2
|
|
||||||
23: 44 70
|
|
||||||
72: 92 55 | 5 24
|
|
||||||
87: 130 5 | 126 92
|
|
||||||
86: 5 115 | 92 18
|
|
||||||
36: 92 71 | 5 43
|
|
||||||
108: 59 5 | 81 92
|
|
||||||
80: 5 39 | 92 6
|
|
||||||
34: 92 9 | 5 134
|
|
||||||
119: 25 5 | 85 92
|
|
||||||
120: 5 129 | 92 47
|
|
||||||
10: 5 70 | 92 48
|
|
||||||
42: 7 92 | 86 5
|
|
||||||
125: 95 92 | 80 5
|
|
||||||
17: 65 5 | 77 92
|
|
||||||
43: 120 92 | 122 5
|
|
||||||
6: 78 5 | 88 92
|
|
||||||
81: 21 5 | 68 92
|
|
||||||
89: 5 54 | 92 47
|
|
||||||
35: 104 5 | 10 92
|
|
||||||
134: 129 5 | 76 92
|
|
||||||
66: 5 24
|
|
||||||
122: 5 66 | 92 22
|
|
||||||
53: 92 5
|
|
||||||
51: 5 111 | 92 117
|
|
||||||
68: 5 5 | 44 92
|
|
||||||
3: 1 5 | 97 92
|
|
||||||
56: 74 92 | 62 5
|
|
||||||
12: 92 117 | 5 21
|
|
||||||
57: 33 5 | 70 92
|
|
||||||
113: 118 92 | 84 5
|
|
||||||
104: 5 117
|
|
||||||
5: "a"
|
|
||||||
107: 124 92 | 90 5
|
|
||||||
9: 16 92 | 50 5
|
|
||||||
2: 5 5 | 92 44
|
|
||||||
88: 44 92 | 92 5
|
|
||||||
8: 42 | 42 8
|
|
||||||
41: 5 70 | 92 4
|
|
||||||
54: 5 4 | 92 78
|
|
||||||
15: 92 51 | 5 105
|
|
||||||
75: 63 92 | 112 5
|
|
||||||
67: 4 92
|
|
||||||
46: 98 92 | 19 5
|
|
||||||
132: 21 5 | 24 92
|
|
||||||
29: 94 5 | 65 92
|
|
||||||
13: 92 88 | 5 117
|
|
||||||
33: 5 92
|
|
||||||
76: 92 70 | 5 53
|
|
||||||
127: 117 5 | 55 92
|
|
||||||
71: 29 5 | 96 92
|
|
||||||
129: 5 111 | 92 88
|
|
||||||
44: 5 | 92
|
|
||||||
95: 37 92 | 105 5
|
|
||||||
100: 53 92 | 2 5
|
|
||||||
18: 125 5 | 58 92
|
|
||||||
59: 5 88 | 92 24
|
|
||||||
114: 79 92 | 26 5
|
|
||||||
11: 42 31 | 42 11 31
|
|
||||||
37: 88 92 | 68 5
|
|
||||||
38: 27 5 | 17 92
|
|
||||||
32: 40 5 | 13 92
|
|
||||||
111: 92 5 | 5 92
|
|
||||||
28: 92 30 | 5 109
|
|
||||||
128: 92 2 | 5 68
|
|
||||||
74: 92 20 | 5 82
|
|
||||||
24: 5 5
|
|
||||||
133: 5 100 | 92 69
|
|
||||||
130: 92 52 | 5 123
|
|
||||||
|
|
||||||
baabbabbbabbaaabababaabbbaaaaababaaaabab
|
|
||||||
bbabbbaaababaaaaaaabaaab
|
|
||||||
aabbbbbababbbbbbbbbbababbbabbbbb
|
|
||||||
bbaaaabbaabbaabaaaaababa
|
|
||||||
bbbbababbabbbbbaaaabbbab
|
|
||||||
aaaaaaaaaabababbaaaaaaabbbbabbbbbbabbabbababbbbabbbbabaabbaabbaa
|
|
||||||
babababaabbabbabbabbbaaa
|
|
||||||
abaaaaababaaaabbbabababaabbbbbbaaabbbbaa
|
|
||||||
aaaaaaabbbbabaaababbbaabaabbabbabbbbbbba
|
|
||||||
bbabbbbaaaaaaabaaaaabaabaaabbaaaababaabbbbabaabbabbbbabaabaaaabbbbbbabab
|
|
||||||
abbabaabababaababaabbbaa
|
|
||||||
aaababbaaaaabaaabbbababbabbaabbbbbabbbabbaaaabaa
|
|
||||||
abbbbaaaaababababbaabbaa
|
|
||||||
bbabbaaaaabbbbbababbaababbbabbaa
|
|
||||||
bbaaabbbbaaababbbabbabbb
|
|
||||||
abbaaaaaababbaaabaababaa
|
|
||||||
aaaaabbbbabbbbbbabbbbabb
|
|
||||||
aaaabbaaaabababaabaabbaa
|
|
||||||
aaabbababbbaaababbaaaaab
|
|
||||||
abaaaabaabaaaabbaabbaabb
|
|
||||||
bbbabbbaaaaabaabbabbbabbbbbbabbbabaaaabbabababba
|
|
||||||
bbbbaabaaaabbbbbaaaaabab
|
|
||||||
aabaaabbaababbbbbbabababbabbbaababbaaaaaabbaaababbaabbbaaabaaabbaaaababa
|
|
||||||
abbabaabaabbbabababbbaba
|
|
||||||
ababaaabbabbaabababbbbab
|
|
||||||
abaaaababbbabaaabbabaaaa
|
|
||||||
aabaaababbabbbabaaabaabb
|
|
||||||
aaaabaaabbbbbaaababaabaaabaababbabaababb
|
|
||||||
bbbabababbabbababbaaaaab
|
|
||||||
abaaaaaabbbabbbbbbaabbab
|
|
||||||
aaaabbaabaababababbbabab
|
|
||||||
bbaaaaaababbaaababbbaabb
|
|
||||||
babaaaaabaaaaaaaabbbabbb
|
|
||||||
ababbaaaaabaaabbbbbaabbbbabbabaaababbbab
|
|
||||||
baaabbabbbbabaaaabaaabab
|
|
||||||
bbbabbbbaaababbbbaaaaaaaabbabbabaaabaaba
|
|
||||||
babaabbabaabbabbbbaaabbbbbbbbabbbbbbbbbbbabbbaab
|
|
||||||
aabbbbbaaaaabaaabbbbabba
|
|
||||||
bbbbaababbaaaabbaaabaaaa
|
|
||||||
abbaaabaaabaababbbbaaaaa
|
|
||||||
babaaaaaaaababbaaaabaabb
|
|
||||||
baababbbaabababaaaaaabab
|
|
||||||
bbbbbbaabbbbabbbaaabaaaa
|
|
||||||
baabbabbaaaaabbabbbaabaabaaaabaaababbbaaabaabbab
|
|
||||||
baababbbbbbbaabaaaabaaba
|
|
||||||
baaaabbabbbaaabaaaababab
|
|
||||||
abbaabbbaaaabbaaaabaaaaa
|
|
||||||
aabbababaabbabbbababbbbbbaabbabababaabab
|
|
||||||
bbbababbbababaabbabbbaba
|
|
||||||
bbbabaaabbbabbaaaabaaaaa
|
|
||||||
babbbbbbbaababbbaabbbbab
|
|
||||||
aaaaabbbababaaababbbaaab
|
|
||||||
bbbaaababbaaabbbabbaababbbbaababbaaabbababaabbbbbbababbabbbabbba
|
|
||||||
abbaabbabaaaabbabababbba
|
|
||||||
abbbbaaaababbbbbbaabbbaa
|
|
||||||
bbbbabababbaaabaaaaaabbbbababbaaaabbbaab
|
|
||||||
aaaabbaaabaabababbaababa
|
|
||||||
bbaaabbbababaaabaaaabbba
|
|
||||||
bbbbabaababaaaaaaabababbbbabbabbabaaabba
|
|
||||||
abbaaaaaaaabbabbabbaaaab
|
|
||||||
aaaabaaaaababbabbaabbbba
|
|
||||||
aabbbbbabababaaabbbababbabaababb
|
|
||||||
baaabbabbbaababbabababba
|
|
||||||
babaabbaaababaabbaabaaaaababaabaaaabaaab
|
|
||||||
abaaaaababbbbbabaabaaaaa
|
|
||||||
abbbbbabbaabbaababbbbabaabbbaaba
|
|
||||||
baababbbaabaabbbbbbbaaaabbaabaab
|
|
||||||
bbbbbbabbaaabbbabaabbabbabbaaaab
|
|
||||||
abaaaababbbaabbabbaabbaa
|
|
||||||
abababbbbabbbbbaaaabaaab
|
|
||||||
bbbaabbbbbaaaaabaabbabaabbbbaaaaaaababbbaaabababbbbbbbba
|
|
||||||
aaaaabbbbbbaabbaabaabaab
|
|
||||||
aabbaababaaabbbaabaabbab
|
|
||||||
abbabbaaabaaabaabaabbbbb
|
|
||||||
bbbaaabbaabaaababbbaabaa
|
|
||||||
bbaabbbbbbbaaaaabaabbaaa
|
|
||||||
ababaabbaabaabbbbbabaaaa
|
|
||||||
ababaaaaaaaabbbbbabbabbbabbaaaaaaabbbaaaaabbabbabbabbaaabaabbbaabaaabbabaabaaabaabbababa
|
|
||||||
abbaaabababbbababbbaaaabaaaaabab
|
|
||||||
abbbbbabbababbbbbabbbbab
|
|
||||||
baabbaabbbbbababbbbaaaab
|
|
||||||
abbbbbaababbaabbbaabaaba
|
|
||||||
aabbaaababaaabaaaaabbbab
|
|
||||||
bbbbbbaabbababaabbbabbaabbababbaaaaababa
|
|
||||||
abaabababbaabbbbabbbbbba
|
|
||||||
bbabbbaabbbbbbabaaaaabbbabbaaabaabbbbbaaabbababaaaabaaaa
|
|
||||||
aabbababaabbbabbbabaaaab
|
|
||||||
bababaaabbbbbaaaaaaaabaaaaabaabbababaabababbababaaabbbaaabbbaaaa
|
|
||||||
bbbbbbaaaabaaabaabbbbabaaaabbbbb
|
|
||||||
bababaababbbbbaabbaaabab
|
|
||||||
babaabbabbbbbbaababbabba
|
|
||||||
ababaaabaabbbbbababaaabb
|
|
||||||
bbbbabaaabbabbabbabbaaaa
|
|
||||||
ababbaabbabbaababbbaaababaabbaaa
|
|
||||||
abaaaaabbaaaaababbabbabb
|
|
||||||
bbaababbbaabbaababaababaabbaaababaabbabbbbbbbbbbaaabbbbbbbaababaabaabbbb
|
|
||||||
bbbbbbaaabaaabaaabbbabbb
|
|
||||||
aabbbababaaababbaaaaaaba
|
|
||||||
abbabaaaaabbaababbbaaabbabababba
|
|
||||||
babbababaabaabbbaaabbbbbbbbbaabbababbbab
|
|
||||||
bababbaaabaaabaabbbabbaabbababaabbbbbaaabaabbbbbbbbbbbbbaaabbaab
|
|
||||||
ababbaaabbbbbaaabababbba
|
|
||||||
aabbaaababaabaaaabaabaab
|
|
||||||
bbaabaaabbabaabaabbababbabaababababbbbaabbbaababaabbabab
|
|
||||||
aababaababaaabaaabbbbbba
|
|
||||||
ababbbaababbabababbaaabbaaaaaaaaabaabababbaabaaabaababababaaaaabababbabababbbabaaaabbbbabaaabaab
|
|
||||||
baabaabbbaaaaabbaaabbaab
|
|
||||||
aaaabaaaabaabaaabbabaaab
|
|
||||||
bbabbaaaaaababbaabbbbaaaaaaabaaabbabbbbb
|
|
||||||
ababbaabaababbbaaabbbbaa
|
|
||||||
bababbbbbbbabaabbbbabaaaabaaaaaaaabbabaa
|
|
||||||
aaabbbbbabbbabbaabbabaaaaabbbabbbababbabbbababbaabababaa
|
|
||||||
babaabbbabbaaaaabaaabbbaaaabbbaabaababaa
|
|
||||||
aabbaababbabbbabbaaaabaa
|
|
||||||
abbbbaaabababbbbbbabbaaaababaaabbbbbbbbb
|
|
||||||
baaaaaaababbaaabaabbabba
|
|
||||||
abbbaaaabbaaaaaaabbaaaab
|
|
||||||
bbabbbbbbaaababbabaabababbbaabababbabbbaabbabbaaabbababbaabbbabbbbbabbba
|
|
||||||
abbaaaaaabbabaaaabbaabbbababbaaaaaaaaabbaabbbaaaabaaabba
|
|
||||||
aabaabaaababaabbbaaabaababaabbaabaabbbbbaabbbabbbbaaabaa
|
|
||||||
aaaababbaababbabaaaaabaaabbbbaaaaabbaaaa
|
|
||||||
bbbabaaaabaaaaaaaaabaaaa
|
|
||||||
aababbbaabbbbababbbabbbbaaabaaaa
|
|
||||||
aaaaabbabbabbabaaaabbbba
|
|
||||||
aabaababababbbbbbaaaaababaabbabbbababaaaaabababb
|
|
||||||
babbbbbaaabbbabbabaabbbb
|
|
||||||
bbabbbaaabaaaaabbbaabbbbbabaaaab
|
|
||||||
bbbbaabbabbaaaaabababbbbababaaaa
|
|
||||||
abaaabaaabbaabbaabaaabbb
|
|
||||||
aaababbaababaabbaaababab
|
|
||||||
bbabbaaabaaabbabaaaaabbaaababaaa
|
|
||||||
aabbabbbbbbbababbbbbbaabbabbabaa
|
|
||||||
aaaaabaabbbbbabbaaaaabaabbbaabbbbaabaabaabbbaaabbaabbabaaabbbbbabaaaabaaabaaabbb
|
|
||||||
abbabbaabbbababbbabbabba
|
|
||||||
babbbaababbaaabaaaabaaab
|
|
||||||
bbabbaaaabbaaabaaaaabbaaaaababaaabbaabba
|
|
||||||
abaabababaababababababba
|
|
||||||
aabbbaabbaaaaabaaabbaaba
|
|
||||||
abbaaabbbbbababaabbbaabbbabbababbbbbbbaabbbbbaabbabaabaaababbbbabbbabbaaabaabbaa
|
|
||||||
aabbbaaaabbbaabaabaabbbbabbabbaa
|
|
||||||
bbbbabaababababaabababaabbabbbbbaaaaababaababbbaaabbbbabbabbbabb
|
|
||||||
babaaababaabbabbbbaabbbbbaababbaaabbbbaa
|
|
||||||
aaabbbbbaaaaabbbaabbabba
|
|
||||||
baaabbbaaabbababbababbbbabbbaaaabbabaabbabaabbba
|
|
||||||
baaabaabaabaabbbbaababba
|
|
||||||
aaababbbbabbbbaaaaaaabbbababaaaabbabaabbbaaaabababbaabaa
|
|
||||||
bbbbbaaabaaabaabbbbaaabbaabbbababbbaabbbbaaaabbb
|
|
||||||
baaaaaaabaaabbabbabbabaa
|
|
||||||
abbaabbaabbaabbbabababab
|
|
||||||
aaaaabbaaabaaabbbbaaabab
|
|
||||||
bababbaaaaaaabaaaaaababa
|
|
||||||
aabbbabbbbbbaaaaabbbaaaabaabbbbb
|
|
||||||
aabaabbbbbbbbbaabaaaaaab
|
|
||||||
bbabbababbbbabbbbbbbabaaaaaaabbbbaaaabbb
|
|
||||||
aabaababbbbbbbaaaabbaabb
|
|
||||||
aabbaabaababbbbabbababab
|
|
||||||
bbababaabbbaaabaabbbabaa
|
|
||||||
aaaababbabaaaabbabbbaabb
|
|
||||||
abbbbbababbbbbaaaaabbbaa
|
|
||||||
ababaabbaabbababbbaaabaa
|
|
||||||
bbbbababbabbbbbbbbbbabbbaaaabaabbaaabaaa
|
|
||||||
bbbabaaabaabbabbbaaabaaa
|
|
||||||
abbaaaaaabaabbabbbaaabbaabbbabababaaabab
|
|
||||||
aaabaabaaabaaabbabbbbbbabaabbaaabaabbbbabbbbbbbbabababaaaaababababababab
|
|
||||||
babbbaababbbbbaaabaaaaabaaabababaabbaabb
|
|
||||||
bbbaaabbbbbbaaaaabbbbababababbaabababaaaabbabbbaaaabbbab
|
|
||||||
babaaabaabaaaaabababbbaa
|
|
||||||
abaaaaababbbaaaaaaabbaab
|
|
||||||
bbbaaabaaabaabababaaabba
|
|
||||||
bbbababbaabbaaabbbaabbaa
|
|
||||||
babaaabaabbabaaaaabbbbbb
|
|
||||||
bbbbababbbbabbababaaabba
|
|
||||||
aabbaabaababaabbababaabbbabaabbbabbbbabbbaaabaaa
|
|
||||||
bbbaaabaaabbbabbabbababb
|
|
||||||
ababaaabbabbbbbababbbaba
|
|
||||||
bbbbabbbaaaaaaababababaa
|
|
||||||
ababaaabbbbbabaabaaabaaa
|
|
||||||
bababababbbabbabbaaaabab
|
|
||||||
baabbaababbbbaaabbbabbba
|
|
||||||
bbabbababbbbabababbbaaab
|
|
||||||
aaabbababaabaaaaababbbab
|
|
||||||
aababababbbaaabaabbbbbba
|
|
||||||
baaabbaabaabaaabaaaabbaabbaaabbababaabbbaababaabaabbabaaababaaaaaabbbbaabbaabbbabbabbaaa
|
|
||||||
bbbaaababbbababbaabbbbbb
|
|
||||||
bbabbbaabbbbbbbbabbbbbaaabbaaabbbbbbababbbaaaabbbababaabbbbaaaaaababbaba
|
|
||||||
abaaaaaabbabbabbaaaaaabb
|
|
||||||
bbbabbaaaaabbbbbbbbbbaba
|
|
||||||
aaabbabbaaaaabbbaabaabaa
|
|
||||||
bababababaababbbaabbaabb
|
|
||||||
abbbbabaabbbbabaabaabbaa
|
|
||||||
bbaabbbbbbbabbaaaaabbbab
|
|
||||||
abaabababbbaaabbaaaabbab
|
|
||||||
bbbababaabaaaababbabbbbaaaaabbbabbabaaab
|
|
||||||
aabaaabbbbabbaaaabbbabaa
|
|
||||||
ababaabbaabbbaabbbabaaba
|
|
||||||
ababbabbaabbaaabaababbbb
|
|
||||||
aabbaababaabbabaabaaabab
|
|
||||||
babbababbabbaaabaaaaabbabbabbbaababaaaab
|
|
||||||
baabbaabaabababaabababab
|
|
||||||
bbabbbabababbaabaabbbaaa
|
|
||||||
bababbaaaabaaabbaabbabaa
|
|
||||||
abbabaabbbbbababbbbaaabaabaaabaabbabaabbbabbbaba
|
|
||||||
abbbbababbaabbbbababbbaa
|
|
||||||
aaabbbbbaaabbbbbabbbbaab
|
|
||||||
aabbababababbbbabbaababbaabaabbaabaababb
|
|
||||||
babababaaabbabbbbbaabaab
|
|
||||||
abbbabbababbaabbaabbbaaa
|
|
||||||
bababbabbbaababbaababbaa
|
|
||||||
abababbbababbbbbaabaabaa
|
|
||||||
bbbabaaabaabbaababaaaabbaaaaaaababababbaaabbbbaaabbaaaab
|
|
||||||
baaabbabababaaaababaabab
|
|
||||||
bababaaabaaabbaabaaaabab
|
|
||||||
babbbbaabaaaabbabaabababaaabbabbbabbbaabbaaabbbb
|
|
||||||
baabaabbbbbbaababbababaabbbababbbabbbbaabaaababa
|
|
||||||
bbbababbbaaabbaababababaababbaba
|
|
||||||
abaaaabaabbaabbabbaaabbbabbabaababaabababaaabbbbbbaaaaab
|
|
||||||
bbabbbaabbaababbbbaaabba
|
|
||||||
baabbaabababbabbaababaaa
|
|
||||||
aaaaabbaaabbbabbaabbabbbbababbababbabbabaaabaaaa
|
|
||||||
aaaabaaababbbbbaaaabbabbbbbbabba
|
|
||||||
aabbbbbabababaaaaababbaa
|
|
||||||
aaabbabbabbabaaaabbaaabb
|
|
||||||
bbbaabbababaaabaaaaabaab
|
|
||||||
abbbbbabaabbababaabbbbbb
|
|
||||||
aabababaaaababbbabaaabab
|
|
||||||
abbabaaabbbabbbbaabbaaaa
|
|
||||||
bbbabaabbaaaaabbabbabbababbababb
|
|
||||||
abbbbbaababbbbaabbbaababbbbbaaabbbbbaaab
|
|
||||||
bbbabaabbabaabbbabaaaaaabababababaabbbbaaaaababa
|
|
||||||
bbbbaabaabbaaababbabaaaa
|
|
||||||
abbbbabaaaaaabbaababaaaabaaaababbabbaaaa
|
|
||||||
abaaaabababaabbbaaabbaab
|
|
||||||
bbbaababbbaabbbbbbaaabba
|
|
||||||
aababbabbbbaabababbbaaab
|
|
||||||
aababbababaaabaaaaaaaaabaabbbbbb
|
|
||||||
baaaaabaabbbbaaaabbbaaba
|
|
||||||
abbaaabababbbbbaabbbbbaabababaaaaaaabbaaaaabbbbabbbaaaaaababbbabaaaaaabb
|
|
||||||
bbbababbbbaaaabaabaababb
|
|
||||||
bbbaaabbbababbbbabaabbbb
|
|
||||||
baababbbbaaabbababbbbbbb
|
|
||||||
abbbaabbbabbabaaaaababbabbbbabbbaabbbbabbbabbaaa
|
|
||||||
aaabbabaabaaabaaabbbabbabaabbaaa
|
|
||||||
bbbaabbbbbabbaaaaaaabaab
|
|
||||||
baabbaabbbaaaabbbaabbbba
|
|
||||||
ababbaaababaabbbbbabaabbabbbabbbabbbbabbbbbbabbaabbaaaabbbabababbaabaaaa
|
|
||||||
abbabbaabaababbbabbabbba
|
|
||||||
bbababaaababababbbababbabaaaabaaaabbabaaaaabbabaaaababab
|
|
||||||
aaaaabbaababbaaababbbabb
|
|
||||||
babaaabababaabaaaaababaa
|
|
||||||
baababbbaabbbbbaababbaba
|
|
||||||
bbbabababbbaabbabbabaaba
|
|
||||||
bbbaabbabbaaaabbabbababb
|
|
||||||
bbababaaaaababbaaaababaa
|
|
||||||
aabbababbabaaabaaababbaa
|
|
||||||
abbbbbaabbbaababaaabaaaa
|
|
||||||
abaaaababbabbababaaabbabababaaabbbaaaabbbbaaababbbaabaab
|
|
||||||
abbbbaaabbaaabbbaaaababa
|
|
||||||
ababaaaababbababbabababb
|
|
||||||
bbbbababbaaaaababaaabbbaaabbaabaabaabaabaabbabaa
|
|
||||||
aabaaababaababbbbaabbbaa
|
|
||||||
abbbaaaaabbaababaabaaaabbbbbaabbaabaabbbabbbaaababbbbaabbbbabaabaabaabba
|
|
||||||
bbbabababaabbabbbbabaaaa
|
|
||||||
aaaaababaabaabaabbaabaabbaabbbbbbbababab
|
|
||||||
ababaaabaababaababbbaaab
|
|
||||||
aaabbaabbabbbabaabbaababbaaaaaaababaaabbbbbbbbabbbbaabaa
|
|
||||||
abbabbabbaabaababbaaabab
|
|
||||||
bbababaaabbaaababbbbbaaaabbaabbabbaababbaabbbbbbabaaabab
|
|
||||||
bbbbaaaaabaaaaaaaabababaabbababbaaaaaabbbbbbaaaabbbabbbb
|
|
||||||
baababbbbbbbaabbbabaaabb
|
|
||||||
baaaaabbaaabbaabbaabbbbbbbaabbbbbbbaabbbbbbababbabbaabaabbbbbbbabaaabaabaabbaabb
|
|
||||||
baababbbbabbaaabbabbbbaabbaaaaaabbbaaaaabbbaabaa
|
|
||||||
baaabaabaabbbaabbabbaaaa
|
|
||||||
aaababbbaaaaabbabbabaaab
|
|
||||||
babaabbaababbaabaabaaabababbabbb
|
|
||||||
abbaaaaaabbaabbbabaabbaa
|
|
||||||
bababbababaaaabbabaabbba
|
|
||||||
babaabaaabaaaaaaaabbbaaa
|
|
||||||
abbabbaababaabbabbaababa
|
|
||||||
bbaaabbbbabbababaababaabbabbaabb
|
|
||||||
ababbbbbbaabbaabaaaaabab
|
|
||||||
bbbaaabbbabaabaabaababba
|
|
||||||
abbbaaaabbababaababaaaab
|
|
||||||
bbbbbbaabbbabbaabbbaabaa
|
|
||||||
aabaaabaabababbbbaabaaab
|
|
||||||
bbbaababaaaabbbaabaabbbbbbabaabbbbaaabbabbabbabb
|
|
||||||
aabbaaababaaaaaaabababba
|
|
||||||
bbbbabbbbaabaaaaabbbbbbb
|
|
||||||
bbbbaabaaaababbabaabbaba
|
|
||||||
baaababbbbbbbaaabbbbbbbb
|
|
||||||
bbbababbbbbbbaaaababaaaababaabaaabbaaabb
|
|
||||||
abbabaaaabbaabbbaaaababbbbbaaaababaabaab
|
|
||||||
aabaababbbbabaaabaaabbaaaabaabbbaaaababa
|
|
||||||
babaaaaababbaababbbbaabbaabbaabb
|
|
||||||
aabbababbabaabaabbbaaaab
|
|
||||||
abbabbabbaaababbaaaabbab
|
|
||||||
baaabbaabbabbbabaaabaabb
|
|
||||||
aabbaabaaaaaabbaaaaaaabb
|
|
||||||
bbbabaaabbbabbaabbaaabba
|
|
||||||
bbbaaabbbbbbaabaabbaaababaaaaaaababaaaab
|
|
||||||
abbaaababbabbbabbbabbbaabbabbbaabbaabbba
|
|
||||||
abaaaabaababaaaaababbaba
|
|
||||||
bababbbbbbbbabbbaabaaabbbaabbaabbababbbababaabab
|
|
||||||
bbaaaabbaaaaabaababaabbaaaaabbbbabaabbba
|
|
||||||
baaabbaabbbaabbbbaaaabab
|
|
||||||
aabbbabbbbbaaabababbbbab
|
|
||||||
baaaaabbaababbabaabaaaaa
|
|
||||||
babbaabbbbababaaaaaaabab
|
|
||||||
baababbbbabaaaaababbabbb
|
|
||||||
abaaaaabaaabbabaaabbaabb
|
|
||||||
ababbbbababbaabaabbabbaaabbabbaaaaababbabbaaabaa
|
|
||||||
ababaabbbabaaaaabbababbb
|
|
||||||
bbbbaabbbabbaabbbabbaaaa
|
|
||||||
bbbbbaaaaabbabbbbbbbbaba
|
|
||||||
bbbbabbbaababaabbbaababa
|
|
||||||
babaaaaabbbaabbbabbabaabbbabbabbbaaabbbb
|
|
||||||
aababbbaaabbbababababbabaabaabababbababa
|
|
||||||
baaaabbabababaaaababbbaa
|
|
||||||
babbaabaaaaaabbbaaabbbababbbbbba
|
|
||||||
bbaaaabbbbbaababbbabaaaa
|
|
||||||
aaababbbaababaababbbaaba
|
|
||||||
baaaaaaababbbbaabbbaababbbbaabbaaaaabbaaabababaabaaaabaaaaababaa
|
|
||||||
bbbbababababaabbbabaabbaaaabaabbbbbaabaa
|
|
||||||
baabaabbabbbbbabbbbbbaaaabbbbabb
|
|
||||||
bababababaabaaaaaabbaaabaababbbabbbaaaaa
|
|
||||||
abbabaabbaababbbabaabbab
|
|
||||||
aaaaabbbaabaaabaabbbbaaabbbaabbbbababaaaabbbbbbaaabababbaababaaa
|
|
||||||
bbababbbbaaaabaaabbababaabaaababbabaabab
|
|
||||||
abbbbababbaaaababaabbbab
|
|
||||||
aabbaababababbabbababbba
|
|
||||||
bababbbbababbaababbbabaa
|
|
||||||
bbbaabbbaababaabbbbbaaab
|
|
||||||
babbaaabababbaabbbabbabb
|
|
||||||
ababbbbbbabbbbbabbbabaaaababaaabaaababbabbbabbabbabababb
|
|
||||||
aabaaabbabaaaabbbaaaaaab
|
|
||||||
abaaaabbabaaaabbaababbababbaabaabbaaabaa
|
|
||||||
baaaaabbabbbaaaaaaabbbaa
|
|
||||||
bababbaaaabbbabbbaabaaba
|
|
||||||
bbbbaabaababbaaaaaabbbba
|
|
||||||
bbbbaabaaabbaaabbbbabbbbababbaba
|
|
||||||
abababbbabbaaaabaaabaabb
|
|
||||||
baaaaabbbabbbaababbbaaab
|
|
||||||
bbbbabaaaaaababbbaabbbab
|
|
||||||
bbbaaabaaabaababbaababaa
|
|
||||||
abaabababaaaabbabaaaaababababbbbbbaabbabbbbaaaaa
|
|
||||||
abaaaaabbbbaaabaabbbbbba
|
|
||||||
abbbbbaaaaaaaaababbbbbaaabaaaaababbbaaaaabbbaaba
|
|
||||||
aababbaabaabbabababbbbab
|
|
||||||
baabbaaabbbaaabaaabbbbaabbbabbabbbababababbbbabbaabaaaba
|
|
||||||
bababbbbaaabbababaabbaabbabbabbb
|
|
||||||
babaaabaaaababbbaaaaaaabbaaabbbaaabbabaa
|
|
||||||
aaaababbbbbbabbbabaaaabbabbbbabb
|
|
||||||
abbbbaaaabbbbbaaaaaababbaabbbabbbaabbaababbbabbabbbbabbaabaaabba
|
|
||||||
abbbbbabbaabaaaabbaabbba
|
|
||||||
aabbbaabaabaabbbbbabbbababbabbbabaabaaba
|
|
||||||
babaaabaababbbbbbbbaabbababaababbaaababaabbbabbbbabbabba
|
|
||||||
baabaaaabababaabbaababaa
|
|
||||||
abaaabaabaabbabbabbaabbababbaaaa
|
|
||||||
bbbbababaaabbbbbbabaaabb
|
|
||||||
bbbbaabaaabaababbbaaabba
|
|
||||||
ababbaaabaaaabbaaaaaabbaaaaaabaaaabaaabbabbbabbb
|
|
||||||
aabbbaabaaaabbaaabbbbabababbabaa
|
|
||||||
aababbbabaababbbbbababba
|
|
||||||
bbbabbbbbaaaaabbbabbaaaa
|
|
||||||
bbbbbaaaabaaabaaaababbbb
|
|
||||||
aaababbabbabbbababaabbba
|
|
||||||
bbabbbababbbaaaabaaaaaab
|
|
||||||
babbbaabaaaabaaababaabbbaabbabbbbabbabbabbbbbbbb
|
|
||||||
aaabababbbbaaaaaaaabaaba
|
|
||||||
aababbabaaaabaaaabbaaaab
|
|
||||||
baaabbabbbbababbaabaabbbbbabbabaaaaaaababaaababa
|
|
||||||
bababbabbbababaabbbbbaaabbababab
|
|
||||||
baabababbabbaabbbbaabaaa
|
|
||||||
baaababbabbbaaaaaaabaabb
|
|
||||||
bbbbbaabaaaababbabbbabbb
|
|
||||||
babbababbaaaaaaabbabbababaabbaabbbbbbbbabbaabaaabbaaaaab
|
|
||||||
abbabbaababbbbbabbaabbba
|
|
||||||
bbbbbaabbaaaaabaabbabaaaaababbaa
|
|
||||||
babaabbaaaaaaaabaaabaaaa
|
|
||||||
abbbabaaabaabbbbabbaaabbababababbbababab
|
|
||||||
bbbbabbbabbbaaaaababbabbbbbbabba
|
|
||||||
aabbbbbbabaabbbbabbaaaabbaababaabbaaabaa
|
|
||||||
abbbaaaabababababaabaabbbbbaabbbbabbbaabbaababaa
|
|
||||||
abaaabaabbbababbababaaabaabbbabbabbabaab
|
|
||||||
aababaabbaaababbbaabbaaa
|
|
||||||
babaaaaababaaaaabaaababbbbbbbbaaabbbbbbabbaabbbaaabbaabb
|
|
||||||
abbbabbaaabaaabaaaabbaab
|
|
||||||
bbabbabababbaaabbababaaaaaaabbabbbabaaba
|
|
||||||
abbbbabaaaaababbabbbbbba
|
|
||||||
baaaaaaaabbaabbbaabaabaa
|
|
||||||
bababbaabbbbababbbabbaab
|
|
||||||
abbbabbabababbaaaababbbabbaababa
|
|
||||||
baaabaabbbbabbaabaababaa
|
|
||||||
bbbabbabaaababbbbaabaaab
|
|
||||||
ababbaabbbabbbabaaaaabab
|
|
||||||
bababbaabbaababbbbbababaababbbaaaaabababbbaabbbabaababbaaabaaaaaaababaaa
|
|
||||||
abaaaaabbbbaabbbbabbaabbabaaabaabbaaaabbabaabbab
|
|
||||||
abbbabbabaaabbabbabaaaaaaabbaaabbbbbabba
|
|
||||||
bbaaaaaabbabbbabbbbbbbbb
|
|
||||||
baababbbabaaaabaaaaaabbbaaaaabab
|
|
||||||
baaaaababbababaaabbbbbba
|
|
||||||
bbaababbabbabaaabaabbbab
|
|
||||||
baaabbabbbbbbaabbaabbbbb
|
|
||||||
abbaabbbbbbaaabaabbabbba
|
|
||||||
aaaabaaaabbbbbabbababbba
|
|
||||||
bbbbbbaaababaababbbaaaab
|
|
||||||
baabaaaabbbbbbaaaaaaabbbbabaabbabbbababaaaaababa
|
|
||||||
babbababaabbaabababaabab
|
|
||||||
aaaaaaababaaaabbbaaababa
|
|
||||||
aabaaabaabbbbaaababbabbb
|
|
||||||
ababbabbbababababaaabbbabbbaabaa
|
|
||||||
babaaaaabbbbabbbabbbaaaabbabbbaabbbaaaaa
|
|
||||||
bbaaaababbbababbbbbaabbaabbababaaaaabaab
|
|
||||||
bababbaaabbbbbaabaababaa
|
|
||||||
aaabbabbababaaabbababaabaababaabaabbaabb
|
|
||||||
ababbaaabbababbbbbbaabaaaabababaabbbbababaaabbbaabbbbaaaaababbba
|
|
||||||
bbbbbbaabaabbaabaaaaaabb
|
|
||||||
aaaabbabaaaabaabbbabbabbbbaabaaaabbaabbaaababbaa
|
|
||||||
bbbababbbbbaabbaabaabbbb
|
|
||||||
ababbabbbababbaaaabaabba
|
|
||||||
babbaaabbbaaaabbabbabbba
|
|
||||||
abaabaaabbbabaaaabbababa
|
|
||||||
ababbbabbaaabaaaaaaabaabbabaaababbaaabbaaababbbbabbababb
|
|
||||||
bbbabaaaabaabaaabbabbaab
|
|
||||||
baabbabbbbaaaabbaaabbbab
|
|
||||||
babaaaaaaaaaabbaaaabaabb
|
|
||||||
abbabaabababbabbabbaaabaaaabbbabbbaabaab
|
|
||||||
aaabababbabaabbababbbabbbaaababbbaababbabbbbbababbbabababababbabababaabb
|
|
||||||
bbaaaababaaabaabbbbaaaaa
|
|
||||||
aaabbbbbbbbbbbabababbaba
|
|
||||||
aaababbaaababaabaaabbaab
|
|
||||||
bbbbabbbabbbabbabbbabbba
|
|
||||||
bbbababbabbaababababbaba
|
|
||||||
bbbabbababbbaaaaabaaaabbbbbaabaa
|
|
||||||
bbbbbaabababaabbbbababab
|
|
||||||
abababbbbaabbabbabbbbabaaabaabaa
|
|
||||||
baaabbabbababbababaabbaa
|
|
||||||
aabbbabbbaaaaaaaaaababbbaaaababa
|
|
||||||
bbaaabbabaabbaaabaababbaabaabbbb
|
|
||||||
baaaaababbaaaabbbbaababbbbababbaabbaaabbbbaabbababbabbbabaabaabaaabbabba
|
|
||||||
abbbbabaabbaabbbabbbabab
|
|
||||||
bbbbaaaaaabababaababaabaababbaba
|
|
||||||
bbabbbababaaaaabbbaaaaaaabbbbbba
|
|
||||||
aaaaabbaabbbbaaaaaaaaabb
|
|
||||||
babbbbaaaaaabaaaaabbbbaa
|
|
||||||
bbbabababababbabbaaaaabaaaabaaaaaaaabaab
|
|
||||||
abaaaaaaabbaabbaabababbbaabaabba
|
|
||||||
abbabaababaabaaabbaabaab
|
|
||||||
bbaaaabaaababaababaabbba
|
|
||||||
abaaabaaabbaabbabaaaabbb
|
|
||||||
bbbaabbbbbbbabaaababbbab
|
|
||||||
ababaabbbabbbbaaabbabaaababbbaaa
|
|
||||||
abbaaaaabbaaabbbbbaaabaa
|
|
||||||
baabaabbbaaaabbabaaaabaa
|
|
||||||
abaaaababbabbbbabbbabbba
|
|
||||||
bbaababbbababababbbbaabaaabbbbbbaabbbbab
|
|
||||||
bbbbaabababaaababbbbaaab
|
|
||||||
abbabbaabaaabbbabaaabbbb
|
|
||||||
bbabbaaaababbbbaabbaaabaabaabababbbabaaaabbbabab
|
|
||||||
abababbbaababbbabbbaabba
|
|
||||||
baaabaabababaaaabbaaabaa
|
|
||||||
abbaaababaabbaaabababaaaaabaaaabbbabaabababbababbabbaaaabaaababbbabaabab
|
|
||||||
bbbbabbbaabbaaabbbaabbab
|
|
||||||
aabbabaaaabbbabbabbabbbbaabbaaaabbaabbaabaaaabbabaaabbbababbbabaaaabbbabaaaaabbabbbbaaaa
|
|
||||||
baaaaaaababbbbaababababb
|
|
||||||
bbbabbbbaaaabaaababbbbbb
|
|
||||||
abbbbbaaaabbababbbbabaaaabababbbbbbaabbaaaaababaaaaaaabb
|
|
||||||
aaabbabababababaababbbbbabaababb
|
|
||||||
baaabbaababbabbbbbaaabab
|
|
||||||
baababbbbbabaabbbaabbbbbbaaabbbbbbaaababaaaabaabbbbbbabbbababbabaabaabbbaaaabbba
|
|
||||||
aaaababbbbaaabbbaaaabbab
|
|
||||||
aabbbabbaaaaaaabaabbbbaa
|
|
||||||
babbaabbabbbbabaaabaaaab
|
|
||||||
bababaabbbbaaabbaabbbbba
|
|
||||||
aababbbaabbabaaabbabbbbb
|
|
||||||
aabaaabbaaaababbbabbbabb
|
|
||||||
bbbaaabaabbabaaabbbbbabb
|
|
||||||
aabbaabaababaabaaabaaabaabbbbaaabaabbbab
|
|
||||||
ababaababaababbbaabbbaaa
|
|
||||||
abbaaaaaabbabbabbaabaaba
|
|
||||||
abbbbbaabaaaaabbaaaaaabb
|
|
@@ -1,5 +1,4 @@
|
|||||||
INPUT1 := INPUT-part1.txt
|
INPUT := INPUT.txt
|
||||||
INPUT2 := INPUT-part2.txt
|
|
||||||
SHELL := /bin/bash
|
SHELL := /bin/bash
|
||||||
CFLAGS := -w -g
|
CFLAGS := -w -g
|
||||||
#CFLAGS := -w -g -pg
|
#CFLAGS := -w -g -pg
|
||||||
@@ -17,12 +16,12 @@ output:
|
|||||||
compile: ex1-c ex2-c
|
compile: ex1-c ex2-c
|
||||||
|
|
||||||
ex1:
|
ex1:
|
||||||
@$(TIME) ex1.bash < $(INPUT1) 2>&1
|
@$(TIME) ex1.bash < $(INPUT) 2>&1
|
||||||
@#$(TIME) ex1-c 2020 < $(INPUT1) 2>&1
|
@#$(TIME) ex1-c 2020 < $(INPUT) 2>&1
|
||||||
|
|
||||||
ex2:
|
ex2:
|
||||||
@$(TIME) ex2.bash < $(INPUT2) 2>&1
|
@$(TIME) ex2.bash < $(INPUT) 2>&1
|
||||||
@#$(TIME) ex1-c 30000000 < $(INPUT2) 2>&1
|
@#$(TIME) ex1-c 30000000 < $(INPUT) 2>&1
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
@rm -f ex1-c ex2-c core
|
@rm -f ex1-c ex2-c core
|
||||||
|
@@ -1,47 +0,0 @@
|
|||||||
42: 9 14 | 10 1
|
|
||||||
9: 14 27 | 1 26
|
|
||||||
10: 23 14 | 28 1
|
|
||||||
1: "a"
|
|
||||||
11: 42 31 | 42 11 31
|
|
||||||
5: 1 14 | 15 1
|
|
||||||
19: 14 1 | 14 14
|
|
||||||
12: 24 14 | 19 1
|
|
||||||
16: 15 1 | 14 14
|
|
||||||
31: 14 17 | 1 13
|
|
||||||
6: 14 14 | 1 14
|
|
||||||
2: 1 24 | 14 4
|
|
||||||
0: 8 11
|
|
||||||
13: 14 3 | 1 12
|
|
||||||
15: 1 | 14
|
|
||||||
17: 14 2 | 1 7
|
|
||||||
23: 25 1 | 22 14
|
|
||||||
28: 16 1
|
|
||||||
4: 1 1
|
|
||||||
20: 14 14 | 1 15
|
|
||||||
3: 5 14 | 16 1
|
|
||||||
27: 1 6 | 14 18
|
|
||||||
14: "b"
|
|
||||||
21: 14 1 | 1 14
|
|
||||||
25: 1 1 | 1 14
|
|
||||||
22: 14 14
|
|
||||||
8: 42 | 42 8
|
|
||||||
26: 14 22 | 1 20
|
|
||||||
18: 15 15
|
|
||||||
7: 14 5 | 1 21
|
|
||||||
24: 14 1
|
|
||||||
|
|
||||||
abbbbbabbbaaaababbaabbbbabababbbabbbbbbabaaaa
|
|
||||||
bbabbbbaabaabba
|
|
||||||
babbbbaabbbbbabbbbbbaabaaabaaa
|
|
||||||
aaabbbbbbaaaabaababaabababbabaaabbababababaaa
|
|
||||||
bbbbbbbaaaabbbbaaabbabaaa
|
|
||||||
bbbababbbbaaaaaaaabbababaaababaabab
|
|
||||||
ababaaaaaabaaab
|
|
||||||
ababaaaaabbbaba
|
|
||||||
baabbaaaabbaaaababbaababb
|
|
||||||
abbbbabbbbaaaababbbbbbaaaababb
|
|
||||||
aaaaabbaabaaaaababaa
|
|
||||||
aaaabbaaaabbaaa
|
|
||||||
aaaabbaabbaaaaaaabbbabbbaaabbaabaaa
|
|
||||||
babaaabbbaaabaababbaabababaaab
|
|
||||||
aabbbbbaabbbaaaaaabbbbbababaaaaabbaaabba
|
|
72
day19/ex2.bash
Executable file
72
day19/ex2.bash
Executable file
@@ -0,0 +1,72 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# ex1.bash: Advent2020 game, day 19/game 1.
|
||||||
|
|
||||||
|
CMD=${0##*/}
|
||||||
|
set -o noglob
|
||||||
|
shopt -s extglob
|
||||||
|
|
||||||
|
declare -a RULE=() MATCH=() STRING=()
|
||||||
|
# shellcheck disable=SC2034
|
||||||
|
declare var_0
|
||||||
|
declare -i res=0
|
||||||
|
|
||||||
|
# build a regexp use-able by bash =~ operator.
|
||||||
|
# Recursively replace rules, until we get final text values.
|
||||||
|
# To avoid running subshell, we must create local variables w/ different
|
||||||
|
# names at each recursion level (to avoid "circular name reference" error).
|
||||||
|
function buildtree {
|
||||||
|
local -i prof="$1" # to allow ≠ local names
|
||||||
|
local -n upname="$2" # caller variable name
|
||||||
|
local name="var_$prof" # local var name, w/ depth
|
||||||
|
eval "local $name" # ... declared here
|
||||||
|
shift 2
|
||||||
|
local args=$* res="" arg
|
||||||
|
|
||||||
|
for arg in $args; do
|
||||||
|
if [[ -z "${arg/[|ab]}" ]]; then
|
||||||
|
res+="$arg"
|
||||||
|
else
|
||||||
|
if [[ ! -v MATCH[$arg] ]]; then
|
||||||
|
buildtree "$((prof+1))" "$name" "${RULE[$arg]}"
|
||||||
|
MATCH[$arg]="(${!name})"
|
||||||
|
fi
|
||||||
|
res+=${MATCH[$arg]}
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
# shellcheck disable=SC2034
|
||||||
|
upname="$res"
|
||||||
|
}
|
||||||
|
|
||||||
|
while read -r line; do
|
||||||
|
case ${line:0:1} in
|
||||||
|
[0-9]*) # rule
|
||||||
|
rule=${line%:*}
|
||||||
|
val=${line#*: }
|
||||||
|
RULE[$rule]="${val//\"}"
|
||||||
|
;;
|
||||||
|
[a-z]*) # string
|
||||||
|
STRING+=("$line")
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
# Old rules:
|
||||||
|
# 8: 42
|
||||||
|
# 11: 42 31
|
||||||
|
# New rules:
|
||||||
|
# 8: 42 | 42 8
|
||||||
|
# 11: 42 31 | 42 11 31
|
||||||
|
|
||||||
|
buildtree 1 var_0 42
|
||||||
|
printf "RULE 42 = %s\n" "${MATCH[42]}"
|
||||||
|
buildtree 1 var_0 31
|
||||||
|
printf "RULE 31 = %s\n" "${MATCH[11]}"
|
||||||
|
|
||||||
|
for str in "${STRING[@]}"; do
|
||||||
|
[[ "$str" =~ ^${MATCH[0]}$ ]] && ((res++))
|
||||||
|
done
|
||||||
|
|
||||||
|
printf "%s : res=%d\n" "$CMD" "$res"
|
||||||
|
|
||||||
|
exit 0
|
Reference in New Issue
Block a user