An OCR Puzzle.
I once wrote software that would try to "clean up" OCR text based on something I knew about the data (e.g., the characters were supposed to
be coordinates).
Here is a "5!mPI_E" puzzle based on writing such a program. Assume that
the text below is a message that was written by hand using only the
digits 0 to 9 and spaces. The original message was encrypted into 7-bit ASCII numbers separated by spaces (e.g., "99 97 116" represents "cat").
The message was then scanned using OCR. Unfortunately, the OCR had trouble distinguishing between similar characters (e.g., reading "Q"
instead of "0", or "g" instead of "9") and sometimes missed or added
spaces. Your challenge is to write a short computer program that
reveals the original message (i.e., figures out the ASCII numbers, then turns the ASCII into text). The OCR text is between quotes:
"6G I O132 |1 $ [I7i1#10I 3z li6![ ]32i0o 1i4 !OSl1Oio~/ 32 1Zl 1lI
!i7 [ ]H32 ~/9|18 gT i0& 1 16 lO5 i]o IQ]"
If your code works out the message, DON'T POST THE MESSAGE, just post
your code that converts the OCR text into the solution. This will help prevent "spoilers". Extra points for using a more-esoteric computer language (INTERCAL, LISP, FORTH, etc.), a very short program (e.g., a one-liner or grep expression), or something that looks inexplicable.
An OCR Puzzle.
I once wrote software that would try to "clean up" OCR text based on something I knew about the data (e.g., the characters were supposed to
be coordinates).
Here is a "5!mPI_E" puzzle based on writing such a program. Assume that
the text below is a message that was written by hand using only the
digits 0 to 9 and spaces. The original message was encrypted into 7-bit ASCII numbers separated by spaces (e.g., "99 97 116" represents "cat").
The message was then scanned using OCR. Unfortunately, the OCR had trouble distinguishing between similar characters (e.g., reading "Q"
instead of "0", or "g" instead of "9") and sometimes missed or added
spaces. Your challenge is to write a short computer program that
reveals the original message (i.e., figures out the ASCII numbers, then turns the ASCII into text). The OCR text is between quotes:
"6G I O132 |1 $ [I7i1#10I 3z li6![ ]32i0o 1i4 !OSl1Oio~/ 32 1Zl 1lI
!i7 [ ]H32 ~/9|18 gT i0& 1 16 lO5 i]o IQ]"
If your code works out the message, DON'T POST THE MESSAGE, just post
your code that converts the OCR text into the solution. This will help prevent "spoilers". Extra points for using a more-esoteric computer language (INTERCAL, LISP, FORTH, etc.), a very short program (e.g., a one-liner or grep expression), or something that looks inexplicable.
"Carl G." <carlgnews@microprizes.com> posted:
An OCR Puzzle.
I once wrote software that would try to "clean up" OCR text based on something I knew about the data (e.g., the characters were supposed to
be coordinates).
Here is a "5!mPI_E" puzzle based on writing such a program. Assume that the text below is a message that was written by hand using only the
digits 0 to 9 and spaces. The original message was encrypted into 7-bit ASCII numbers separated by spaces (e.g., "99 97 116" represents "cat").
The message was then scanned using OCR. Unfortunately, the OCR had trouble distinguishing between similar characters (e.g., reading "Q" instead of "0", or "g" instead of "9") and sometimes missed or added spaces. Your challenge is to write a short computer program that
reveals the original message (i.e., figures out the ASCII numbers, then turns the ASCII into text). The OCR text is between quotes:
"6G I O132 |1 $ [I7i1#10I 3z li6![ ]32i0o 1i4 !OSl1Oio~/ 32 1Zl 1lI
!i7 [ ]H32 ~/9|18 gT i0& 1 16 lO5 i]o IQ]"
If your code works out the message, DON'T POST THE MESSAGE, just post
your code that converts the OCR text into the solution. This will help prevent "spoilers". Extra points for using a more-esoteric computer language (INTERCAL, LISP, FORTH, etc.), a very short program (e.g., a one-liner or grep expression), or something that looks inexplicable.
"5!mPI_E" <--- i get it.
99 corresponds to lowercase 'c'
97 corresponds to lowercase 'a'
116 corresponds to lowercase 't'
Thus, the ASCII character codes 99, 97, and 116 stand for the letters forming the word "cat." This numerical encoding is a common way to represent text in computing and digital systems.
So yes, "99 97 116" effectively encodes the word "cat" in ASCII [common knowledge].
________________
i remember A and a as 61 and 41 (I mean backwards), and
it's not [Common Knowledge] to me.... about 65 and 97.
Maybe 65 and 97 were frequently used by Old-timer- programmers.
| Sysop: | Amessyroom |
|---|---|
| Location: | Fayetteville, NC |
| Users: | 54 |
| Nodes: | 6 (0 / 6) |
| Uptime: | 15:50:44 |
| Calls: | 742 |
| Files: | 1,218 |
| D/L today: |
3 files (2,681K bytes) |
| Messages: | 184,205 |
| Posted today: | 1 |