#include <stdio.h>
#include <stdlib.h>
int main(void) {
char* m
= (char*) malloc(100 *sizeof(char)); char* code
= (char*) malloc(1000*sizeof(char)); int* cs
= (int*) malloc(10 *sizeof(int ));
int i = 0, mi = 0, ci = -1;
while(code[i]!='\0'){
switch(code[i])
{
case '+':
m[mi]++;
break;
case '-':
m[mi]--;
break;
case '<':
mi--;
break;
case '>':
mi++;
break;
case ',':
break;
case '.':
break;
case '[':
cs[++ci] = i;
break;
case ']':
if (m[mi]==0){
ci--;
} else
{
i = cs[ci];
}
break;
}
i++;
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCmludCBtYWluKHZvaWQpIHsKCWNoYXIqIG0gICAgICA9IChjaGFyKikgbWFsbG9jKDEwMCAqc2l6ZW9mKGNoYXIpKTsKCWNoYXIqIGNvZGUgICA9IChjaGFyKikgbWFsbG9jKDEwMDAqc2l6ZW9mKGNoYXIpKTsKCWludCogIGNzICAgICA9IChpbnQqKSAgbWFsbG9jKDEwICAqc2l6ZW9mKGludCApKTsKCQoJbWVtc2V0KG0sIDAsIHNpemVvZihtKSk7CgkKCWludCBpID0gMCwgbWkgPSAwLCBjaSA9IC0xOwoJc2NhbmYoIiVzXG4iICwgY29kZSk7CgkKCXdoaWxlKGNvZGVbaV0hPSdcMCcpewoJCXN3aXRjaChjb2RlW2ldKSAKCQl7CgkJCWNhc2UgJysnOgogICAgICAgIAkJbVttaV0rKzsKICAgICAgICAJYnJlYWs7CiAgICAJCWNhc2UgJy0nOgogICAgICAgIAkJbVttaV0tLTsKICAgICAgICAJYnJlYWs7CiAgICAJCWNhc2UgJzwnOgogICAgICAgIAkJbWktLTsKICAgICAgICAJYnJlYWs7CiAgICAJCWNhc2UgJz4nOgogICAgICAgIAkJbWkrKzsKICAgICAgICAJYnJlYWs7CiAgICAJCWNhc2UgJywnOgogICAgICAgIAkJbVttaV0gPSBnZXRjaGFyKCk7CiAgICAgICAgCWJyZWFrOwogICAgCQljYXNlICcuJzoKICAgICAgICAJCXB1dGNoYXIobVttaV0pOwogICAgICAgIAlicmVhazsKICAgIAkJY2FzZSAnWyc6CiAgICAgICAgCQljc1srK2NpXSA9IGk7CiAgICAgICAgCWJyZWFrOwogICAgCQljYXNlICddJzoKICAgICAgICAJCWlmIChtW21pXT09MCl7CiAgICAgICAgCQkJCWNpLS07CiAgICAgICAgCQkJfSBlbHNlCiAgICAgICAgCQkJewogICAgICAgIAkJICAJCWkgPSBjc1tjaV07CiAgICAgICAgCQkJfQogICAgICAgIAlicmVhazsKCQl9CgkJaSsrOwoJfQoJcmV0dXJuIDA7Cn0K
KysrKysrKysrK1smZ3Q7KysrKysrKyZndDsrKysrKysrKysrJmd0OysrKyZndDsrJmx0OyZsdDsmbHQ7Jmx0Oy1dJmd0OysrLiZndDsrLisrKysrKysuLisrKy4mZ3Q7KysuJmx0OyZsdDsrKysrKysrKysrKysrKysuJmd0Oy4rKysuLS0tLS0tLi0tLS0tLS0tLiZndDsrLiZndDsu
++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.