import java.util.Arrays;
import java.util.Scanner;
import java.util.stream.LongStream;
class Ideone
{
public static void main
(String[] args
) {
Scanner in
= new Scanner
(System.
in); while (in.hasNextInt())
{
int x = in.nextInt();
int y = in.nextInt();
long[] n = calc(x, y);
long sum = LongStream.of(n).sum();
System.
out.
printf("x=%d, y=%d%n", x, y
); System.
out.
println("出目 出現回数 出現率"); System.
out.
println("---- -------- ------"); for(int i = 0; i < n.length; i++)
{
System.
out.
printf("% 4d % 8d % 4.2f%n", i
+ y, n
[i
], n
[i
] * 100d
/ sum
); }
}
}
static long[] calc(int x, int y)
{
long[] ary = new long[x];
while (--y > 0)
{
long[] next = new long[ary.length + x - 1];
long num = 0;
for (int i = 0; i < next.length; i++)
{
long add = i < ary.length ? ary[i] : 0;
long sub = i - x >= 0 ? ary[i - x] : 0;
num += add - sub;
next[i] = num;
}
ary = next;
}
return ary;
}
}
aW1wb3J0IGphdmEudXRpbC5BcnJheXM7CmltcG9ydCBqYXZhLnV0aWwuU2Nhbm5lcjsKaW1wb3J0IGphdmEudXRpbC5zdHJlYW0uTG9uZ1N0cmVhbTsKCmNsYXNzIElkZW9uZQp7CiAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKQogICAgewogICAgICAgIFNjYW5uZXIgaW4gPSBuZXcgU2Nhbm5lcihTeXN0ZW0uaW4pOwogICAgICAgIHdoaWxlIChpbi5oYXNOZXh0SW50KCkpCiAgICAgICAgewogICAgICAgICAgICBpbnQgeCA9IGluLm5leHRJbnQoKTsKICAgICAgICAgICAgaW50IHkgPSBpbi5uZXh0SW50KCk7CiAgICAgICAgICAgIGxvbmdbXSBuID0gY2FsYyh4LCB5KTsKICAgICAgICAgICAgbG9uZyBzdW0gPSBMb25nU3RyZWFtLm9mKG4pLnN1bSgpOwogICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50ZigieD0lZCwgeT0lZCVuIiwgeCwgeSk7CiAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigi5Ye655uuIOWHuuePvuWbnuaVsCDlh7rnj77njociKTsKICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCItLS0tIC0tLS0tLS0tIC0tLS0tLSIpOwogICAgICAgICAgICBmb3IoaW50IGkgPSAwOyBpIDwgbi5sZW5ndGg7IGkrKykKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGYoIiUgNGQgJSA4ZCAlIDQuMmYlbiIsIGkgKyB5LCBuW2ldLCBuW2ldICogMTAwZCAvIHN1bSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCk7CiAgICAgICAgfQogICAgfQoKICAgIHN0YXRpYyBsb25nW10gY2FsYyhpbnQgeCwgaW50IHkpCiAgICB7CiAgICAgICAgbG9uZ1tdIGFyeSA9IG5ldyBsb25nW3hdOwogICAgICAgIEFycmF5cy5maWxsKGFyeSwgMSk7CgogICAgICAgIHdoaWxlICgtLXkgPiAwKQogICAgICAgIHsKICAgICAgICAgICAgbG9uZ1tdIG5leHQgPSBuZXcgbG9uZ1thcnkubGVuZ3RoICsgeCAtIDFdOwogICAgICAgICAgICBsb25nIG51bSA9IDA7CiAgICAgICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbmV4dC5sZW5ndGg7IGkrKykKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgbG9uZyBhZGQgPSBpIDwgYXJ5Lmxlbmd0aCA/IGFyeVtpXSA6IDA7CiAgICAgICAgICAgICAgICBsb25nIHN1YiA9IGkgLSB4ID49IDAgPyBhcnlbaSAtIHhdIDogMDsKICAgICAgICAgICAgICAgIG51bSArPSBhZGQgLSBzdWI7CiAgICAgICAgICAgICAgICBuZXh0W2ldID0gbnVtOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGFyeSA9IG5leHQ7CiAgICAgICAgfQogICAgICAgIHJldHVybiBhcnk7CiAgICB9Cn0=