/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone {
private static final int hSize = 10;
private static final int vSize = 10;
private static int hCoord = 0;
private static int vCoord = 0;
private static State curState = State.START;
private enum State {
START, LEFT, TOP, BODY, FINISH
}
NEXT
}
private static String getNextResult
() { switch (curState) {
case START:
curState = State.TOP;
break;
case TOP:
if (hCoord <= hSize) {
result = hCoord + "";
hCoord++;
} else {
hCoord = 0;
curState = State.LEFT;
result = getNextResult();
}
break;
case LEFT:
if (vCoord <= vSize) {
curState = State.BODY;
result
= System.
lineSeparator() + vCoord
+ ""; vCoord++;
} else {
curState = State.FINISH;
}
break;
case BODY:
if (hCoord <= hSize) {
result = "N";
hCoord++;
} else {
hCoord = 0;
curState = State.LEFT;
result = getNextResult();
}
}
return result;
}
while (curState != State.FINISH) {
System.
out.
print(getNextResult
()); }
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lIHsKCXByaXZhdGUgc3RhdGljIGZpbmFsIGludCBoU2l6ZSA9IDEwOwogICAgcHJpdmF0ZSBzdGF0aWMgZmluYWwgaW50IHZTaXplID0gMTA7CgogICAgcHJpdmF0ZSBzdGF0aWMgaW50IGhDb29yZCA9IDA7CiAgICBwcml2YXRlIHN0YXRpYyBpbnQgdkNvb3JkID0gMDsKCiAgICBwcml2YXRlIHN0YXRpYyBTdGF0ZSBjdXJTdGF0ZSA9IFN0YXRlLlNUQVJUOwoKICAgIHByaXZhdGUgZW51bSBTdGF0ZSB7CiAgICAgICAgU1RBUlQsIExFRlQsIFRPUCwgQk9EWSwgRklOSVNICiAgICB9CgogICAgcHJpdmF0ZSBlbnVtIEV2ZW50IHsKICAgICAgICBORVhUCiAgICB9CiAgICAKICAgIHByaXZhdGUgc3RhdGljIFN0cmluZyBnZXROZXh0UmVzdWx0KCkgewogICAgICAgIFN0cmluZyByZXN1bHQgPSAiIjsKICAgICAgICBzd2l0Y2ggKGN1clN0YXRlKSB7CiAgICAgICAgICAgIGNhc2UgU1RBUlQ6CiAgICAgICAgICAgICAgICBjdXJTdGF0ZSA9IFN0YXRlLlRPUDsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIFRPUDoKICAgICAgICAgICAgICAgIGlmIChoQ29vcmQgPD0gaFNpemUpIHsKICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSBoQ29vcmQgKyAiIjsKICAgICAgICAgICAgICAgICAgICBoQ29vcmQrKzsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgaENvb3JkID0gMDsKICAgICAgICAgICAgICAgICAgICBjdXJTdGF0ZSA9IFN0YXRlLkxFRlQ7CiAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gZ2V0TmV4dFJlc3VsdCgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgTEVGVDoKICAgICAgICAgICAgICAgIGlmICh2Q29vcmQgPD0gdlNpemUpIHsKICAgICAgICAgICAgICAgICAgICBjdXJTdGF0ZSA9IFN0YXRlLkJPRFk7CiAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gU3lzdGVtLmxpbmVTZXBhcmF0b3IoKSArIHZDb29yZCArICIiOwogICAgICAgICAgICAgICAgICAgIHZDb29yZCsrOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICBjdXJTdGF0ZSA9IFN0YXRlLkZJTklTSDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIEJPRFk6CiAgICAgICAgICAgICAgICBpZiAoaENvb3JkIDw9IGhTaXplKSB7CiAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gIk4iOwogICAgICAgICAgICAgICAgICAgIGhDb29yZCsrOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICBoQ29vcmQgPSAwOwogICAgICAgICAgICAgICAgICAgIGN1clN0YXRlID0gU3RhdGUuTEVGVDsKICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSBnZXROZXh0UmVzdWx0KCk7CiAgICAgICAgICAgICAgICB9CgogICAgICAgIH0KICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgfQoJCglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoU3RyaW5nW10gYXJncykgdGhyb3dzIGphdmEubGFuZy5FeGNlcHRpb24gewoJCXdoaWxlIChjdXJTdGF0ZSAhPSBTdGF0ZS5GSU5JU0gpIHsKICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludChnZXROZXh0UmVzdWx0KCkpOwogICAgICAgIH0KCX0KfQ==