Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

github.com/keep94/reach

Package Overview
Dependencies
Alerts
File Explorer
Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

github.com/keep94/reach

  • v0.0.0-20231027032400-cb4232508ab3
  • Source
  • Go
  • Socket score

Version published
Created
Source

reach

A program to express each the numbers between 0 and 199 inclusive as a mathematical expression using each of 1, 2, 3, 4, 5 exactly once.

When I was a kid, a friend of mine was in REACH which is a program for gifted and talented elementary school students. One of his activities from this program was writing each of the numbers from 1 to 100 as a mathematical expression using each of 1, 2, 3, 4, and 5 exactly once.

This is a program that does just that except this program does it for the numbers from 0 to 199. 178 is the first number for which this program cannot find a solution.

This program uses postfix notation rather than infix notation as it is easier to form postfix mathematical expressions rather than infix ones.

For example:

  • 1 2 + => 1 + 2
  • 3 4 + 2 * => (3 + 4) * 2
  • 3 4 2 + * => 3 * (4 + 2)

All the numbers from 0 up to 100 inclusive can be written in this way. 178 is the smallest number for which there is no known way to write it using

The output of the program is at the bottom:

From the output you can see that

  • 0 == 1 5 + 4 2 + - 3 * => ((1 + 5) - (4 + 2)) * 3
  • 1 == 1 5 + 2 + 4 3 + - => 1 + 5 + 2 - (4 + 3)

Notice that all these expressions use the numbers 1 through 5 exactly once.

As you can see 178 is the first number with no such expression.

0 [1 4 + 2 3 + - 5 *]
1 [1 2 + 5 + 3 4 + -]
2 [1 2 + 3 + 4 + 5 /]
3 [1 3 + 5 + 2 4 + -]
4 [1 2 + 4 + 5 + 3 /]
5 [1 2 + 3 + 4 + 5 -]
6 [1 2 + 4 + 5 - 3 *]
7 [1 2 + 3 + 5 + 4 -]
8 [2 4 + 5 + 3 - 1 *]
9 [1 2 + 4 + 5 + 3 -]
10 [1 2 + 3 + 4 - 5 *]
11 [1 3 + 4 + 5 + 2 -]
12 [1 2 + 5 + 4 - 3 *]
13 [2 3 + 4 + 5 + 1 -]
14 [2 3 + 4 + 5 + 1 *]
15 [1 2 + 3 + 4 + 5 +]
16 [1 4 + 5 + 2 3 * +]
17 [1 3 + 5 + 2 4 * +]
18 [1 3 + 5 + 4 2 - *]
19 [3 4 + 1 5 + 2 * +]
20 [1 2 + 4 + 3 - 5 *]
21 [1 3 + 4 + 2 * 5 +]
22 [3 4 + 5 + 1 - 2 *]
23 [1 4 + 5 + 2 * 3 +]
24 [1 4 + 5 + 2 - 3 *]
25 [1 3 + 5 + 4 - 2 ^]
26 [1 3 + 4 + 5 + 2 *]
27 [4 5 + 1 2 + / 3 ^]
28 [1 3 + 5 + 2 - 4 *]
29 [1 2 + 3 + 4 * 5 +]
30 [1 3 + 4 + 2 - 5 *]
31 [3 4 + 1 - 5 2 ^ +]
32 [1 2 + 3 + 4 - 5 ^]
33 [1 5 + 2 4 + * 3 -]
34 [1 2 + 3 + 5 * 4 +]
35 [1 2 + 5 + 4 * 3 +]
36 [1 2 + 4 + 5 + 3 *]
37 [4 5 + 3 - 2 ^ 1 +]
38 [1 2 + 4 + 5 * 3 +]
39 [1 5 + 2 4 + * 3 +]
40 [2 3 + 4 + 1 - 5 *]
41 [2 3 + 5 + 4 * 1 +]
42 [2 4 + 3 5 + 1 - *]
43 [3 4 + 1 5 + 2 ^ +]
44 [1 2 + 3 + 5 + 4 *]
45 [2 3 + 4 + 1 * 5 *]
46 [2 3 + 4 + 5 * 1 +]
47 [2 4 + 3 5 + * 1 -]
48 [2 5 + 3 4 + * 1 -]
49 [1 4 + 5 + 3 - 2 ^]
50 [1 2 + 3 + 4 + 5 *]
51 [1 2 + 4 * 5 + 3 *]
52 [1 3 + 2 * 5 + 4 *]
53 [3 5 + 1 - 2 ^ 4 +]
54 [1 2 + 3 + 4 5 + *]
55 [1 5 + 3 4 + 2 ^ +]
56 [1 2 + 4 + 3 5 + *]
57 [1 2 + 5 * 4 + 3 *]
58 [1 2 5 + - 4 3 ^ +]
59 [1 3 + 4 + 2 ^ 5 -]
60 [1 4 + 5 + 2 * 3 *]
61 [4 5 + 1 - 2 ^ 3 -]
62 [1 2 + 5 - 4 3 ^ +]
63 [2 5 + 4 1 - * 3 *]
64 [1 2 + 5 + 4 - 3 ^]
65 [3 5 + 4 2 - ^ 1 +]
66 [5 1 2 + - 4 3 ^ +]
67 [4 5 + 1 - 2 ^ 3 +]
68 [1 5 + 2 - 3 ^ 4 +]
69 [1 3 + 4 + 2 ^ 5 +]
70 [2 5 + 1 - 4 3 ^ +]
71 [3 4 + 2 1 5 + ^ +]
72 [1 3 + 5 + 2 * 4 *]
73 [1 4 + 3 * 5 * 2 -]
74 [1 5 + 3 * 4 * 2 +]
75 [2 4 + 1 - 3 * 5 *]
76 [1 5 + 2 * 4 3 ^ +]
77 [1 3 + 5 + 2 ^ 4 -]
78 [1 5 + 4 * 2 + 3 *]
79 [1 2 + 5 - 3 4 ^ +]
80 [1 3 + 4 + 2 * 5 *]
81 [1 3 + 5 + 4 2 - ^]
82 [1 3 + 4 * 5 * 2 +]
83 [1 5 + 3 - 4 ^ 2 +]
84 [1 5 + 3 4 + * 2 *]
85 [1 3 + 5 + 2 ^ 4 +]
86 [2 5 + 3 ^ 1 + 4 /]
87 [2 5 + 1 - 3 4 ^ +]
88 [1 3 + 5 * 2 + 4 *]
89 [1 2 + 5 + 3 4 ^ +]
90 [1 4 + 5 + 3 2 ^ *]
91 [2 5 + 3 4 * 1 + *]
92 [1 3 - 5 2 ^ + 4 *]
93 [2 4 + 5 * 1 + 3 *]
94 [2 4 ^ 3 + 5 * 1 -]
95 [2 4 + 3 * 1 + 5 *]
96 [1 2 + 5 + 3 * 4 *]
97 [1 4 + 5 + 2 ^ 3 -]
98 [1 3 - 5 2 ^ 4 * +]
99 [2 3 + 4 * 5 * 1 -]
100 [1 4 + 3 - 5 * 2 ^]
101 [2 3 + 4 * 5 * 1 +]
102 [3 1 - 5 2 ^ 4 * +]
103 [1 4 + 5 + 2 ^ 3 +]
104 [2 3 + 5 * 1 + 4 *]
105 [1 2 + 4 + 3 * 5 *]
106 [1 5 + 3 ^ 4 - 2 /]
107 [5 2 - 3 ^ 4 * 1 -]
108 [1 5 + 2 4 + * 3 *]
109 [5 2 - 3 ^ 4 * 1 +]
110 [1 5 + 3 ^ 4 + 2 /]
111 [1 4 + 2 5 ^ + 3 *]
112 [1 3 + 2 5 + * 4 *]
113 [1 2 + 3 ^ 4 * 5 +]
114 [1 5 + 2 4 ^ 3 + *]
115 [1 2 + 3 ^ 4 - 5 *]
116 [1 3 + 5 2 ^ + 4 *]
117 [1 5 + 2 ^ 3 4 ^ +]
118 [1 4 + 3 ^ 2 5 + -]
119 [3 1 4 + ^ 5 - 2 /]
120 [1 2 + 3 + 4 * 5 *]
121 [3 4 + 5 + 1 - 2 ^]
122 [2 1 4 + - 5 3 ^ +]
123 [2 3 4 + 1 * ^ 5 -]
124 [1 2 + 4 - 5 3 ^ +]
125 [1 4 + 2 3 + * 5 *]
126 [4 1 2 + - 5 3 ^ +]
127 [3 5 + 2 4 ^ * 1 -]
128 [2 1 4 + 5 + 3 - ^]
129 [3 5 + 2 4 ^ * 1 +]
130 [2 4 + 1 - 3 ^ 5 +]
131 [2 4 + 1 * 5 3 ^ +]
132 [1 2 + 4 + 5 3 ^ +]
133 [2 3 4 + 1 * ^ 5 +]
134 [1 5 + 2 3 4 + ^ +]
135 [1 4 + 2 - 3 ^ 5 *]
136 [3 5 + 2 4 ^ 1 + *]
137 [1 2 + 4 * 5 3 ^ +]
138 [3 4 * 2 ^ 1 5 + -]
139 [1 2 + 3 ^ 5 * 4 +]
140 [1 4 + 2 ^ 3 + 5 *]
141 [1 5 + 2 ^ 4 * 3 -]
142 [2 4 ^ 1 + 5 3 ^ +]
143 [3 4 + 5 + 2 ^ 1 -]
144 [3 4 + 5 + 1 * 2 ^]
145 [3 4 + 5 + 2 ^ 1 +]
146 [3 2 4 + ^ 1 + 5 /]
147 [1 5 + 2 ^ 4 * 3 +]
148 [1 5 - 3 * 2 ^ 4 +]
149 [1 3 * 4 * 2 ^ 5 +]
150 [3 4 + 1 - 5 2 ^ *]
151 [3 4 ^ 5 - 2 * 1 -]
152 [4 5 * 1 - 2 3 ^ *]
153 [3 4 ^ 5 - 2 * 1 +]
154 [1 5 - 3 4 ^ + 2 *]
155 [1 2 + 3 ^ 4 + 5 *]
156 [1 5 + 2 ^ 3 + 4 *]
157 [1 4 + 2 5 ^ * 3 -]
158 [1 5 - 3 4 ^ 2 * +]
159 [4 5 * 2 3 ^ * 1 -]
160 [1 3 + 2 * 4 * 5 *]
161 [4 5 * 2 3 ^ * 1 +]
162 [1 5 + 3 - 4 ^ 2 *]
163 [1 4 + 2 5 ^ * 3 +]
164 [3 4 * 1 + 2 ^ 5 -]
165 [3 4 ^ 1 - 2 * 5 +]
166 [5 1 - 3 4 ^ 2 * +]
167 [1 3 * 4 ^ 2 * 5 +]
168 [3 4 + 5 2 ^ 1 - *]
169 [1 3 + 4 + 5 + 2 ^]
170 [5 1 - 3 4 ^ + 2 *]
171 [2 4 5 + ^ 1 + 3 /]
172 [1 3 * 4 ^ 5 + 2 *]
173 [3 4 ^ 5 + 2 * 1 +]
174 [1 5 + 3 4 ^ + 2 *]
175 [3 4 + 1 * 5 2 ^ *]
176 [3 4 + 5 2 ^ * 1 +]
177 [1 2 + 4 3 ^ 5 - *]
178 []
179 [1 2 + 5 ^ 4 3 ^ -]
180 [3 4 + 1 - 2 ^ 5 *]
181 [4 5 * 3 2 ^ * 1 +]
182 [3 4 + 5 2 ^ 1 + *]
183 []
184 [3 2 ^ 5 * 1 + 4 *]
185 [3 2 ^ 4 * 1 + 5 *]
186 []
187 [1 2 + 4 3 ^ * 5 -]
188 [2 1 5 + ^ 3 * 4 -]
189 [2 5 + 4 1 - 3 ^ *]
190 []
191 [5 2 - 4 3 ^ * 1 -]
192 [4 5 + 1 - 2 ^ 3 *]
193 [5 2 - 4 3 ^ * 1 +]
194 []
195 [5 2 - 4 3 ^ 1 + *]
196 [3 5 + 1 - 2 ^ 4 *]
197 [1 2 + 4 3 ^ * 5 +]
198 []
199 []

FAQs

Package last updated on 27 Oct 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc