#include <stdlib.h>
#include <stdio.h>
#define X
enum {
MAX = 0x40
};
typedef unsigned char uchar;
uchar dec2[] =
X
X
X X X X
X X
X X
"*"
">>>"
">>>O>"
">O<O>o@"
"O>o>o>>O@"
">>@<O>o<@>>"
"@O>o@O<o<@<<@"
"O<<<o>>>@O<<<o<"
"o<O<@>>>O>>>o>@>>"
">>>O>o@O<<o@<O>o@>>"
"O<<<<o@O<<<<<o>o>>@O<"
"o<<O@>>>>>O<<<<o@O<o@><"
"<<<<<<<@>O<o>>>@>O>>>>>>o"
">@O>>o<@O>>o@<O>>>o<o>>@O<<"
"o>>>>>@<<O>o<o>>@>>>>O>o@<O>>"
"o>>@O<<<<o@O>>o><><<>><<>>><><@"
;;;
;;;
;;;
int main(void)
{
uchar reg[MAX] = {0};
uchar *prg = dec2;
uchar *p = reg;
while (*prg) {
if (p < reg || p >= reg + MAX) {
}
switch (*prg) {
case 'O': p++; break;
case 'o': p--; break;
case '>': (*p)++; break;
case '<': (*p)--; break;
case '@': printf("%d\n", *p
); break; }
prg++;
}
return 0;
}
CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPHN0ZGlvLmg+CgojZGVmaW5lIFgKCmVudW0gewogICAgTUFYID0gMHg0MAp9OwoKdHlwZWRlZiB1bnNpZ25lZCBjaGFyIHVjaGFyOwoKdWNoYXIgZGVjMltdID0gICAgICAKICAgICAgICAgICAgICAgICAgICBYCiAgICAgICAgICAgICAgICAgICAgWAogICAgICAgICAgICAgICAgIFggWCBYIFgKICAgICAgICAgICAgICAgICAgIFggWAogICAgICAgICAgICAgICAgICBYICAgWCAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAiKiIKICAgICAgICAgICAgICAgICAgIj4+PiIKICAgICAgICAgICAgICAgICAiPj4+Tz4iCiAgICAgICAgICAgICAgICAiPk88Tz5vQCIKICAgICAgICAgICAgICAgIk8+bz5vPj5PQCIKICAgICAgICAgICAgICAiPj5APE8+bzxAPj4iCiAgICAgICAgICAgICAiQE8+b0BPPG88QDw8QCIKICAgICAgICAgICAgIk88PDxvPj4+QE88PDxvPCIKICAgICAgICAgICAibzxPPEA+Pj5PPj4+bz5APj4iCiAgICAgICAgICAiPj4+Tz5vQE88PG9APE8+b0A+PiIKICAgICAgICAgIk88PDw8b0BPPDw8PDxvPm8+PkBPPCIKICAgICAgICAibzw8T0A+Pj4+Pk88PDw8b0BPPG9APjwiCiAgICAgICAiPDw8PDw8PEA+TzxvPj4+QD5PPj4+Pj4+byIKICAgICAgIj5ATz4+bzxATz4+b0A8Tz4+Pm88bz4+QE88PCIKICAgICAibz4+Pj4+QDw8Tz5vPG8+PkA+Pj4+Tz5vQDxPPj4iCiAgICAibz4+QE88PDw8b0BPPj5vPjw+PDw+Pjw8Pj4+PD48QCIKICAgICAgICAgICAgICAgICAgIDs7OwogICAgICAgICAgICAgICAgICAgOzs7CiAgICAgICAgICAgICAgICAgICA7OzsKCmludCBtYWluKHZvaWQpCnsKICAgIHVjaGFyIHJlZ1tNQVhdID0gezB9OwogICAgdWNoYXIgKnByZyA9IGRlYzI7CiAgICB1Y2hhciAqcCA9IHJlZzsKICAgIAogICAgd2hpbGUgKCpwcmcpIHsKICAgICAgICBpZiAocCA8IHJlZyB8fCBwID49IHJlZyArIE1BWCkgewogICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkJhZCBhZGRyZXNzLlxuIik7CiAgICAgICAgICAgIGV4aXQoMSk7CiAgICAgICAgfQogICAgCiAgICAgICAgc3dpdGNoICgqcHJnKSB7CiAgICAgICAgY2FzZSAnTyc6ICAgcCsrOyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAnbyc6ICAgcC0tOyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAnPic6ICAgKCpwKSsrOyAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAnPCc6ICAgKCpwKS0tOyAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAnQCc6ICAgcHJpbnRmKCIlZFxuIiwgKnApOyAgICAgYnJlYWs7CiAgICAgICAgfQoKICAgICAgICBwcmcrKzsKICAgIH0KICAgIAogICAgcmV0dXJuIDA7Cn0K