class Main {
public static void main
(String[] args
) { System.
out.
println("出題者が箱を選んでその箱がはずれだったとき"); case1();
System.
out.
println("出題者がはずれの箱を選んだとき"); case2();
}
static void case1() {
int count=0;
int changed = 0;
int unchanged = 0;
while (count < 10000) {
int atari = rm.nextInt(3);
int select = rm.nextInt(3);
int open;
do {
open = rm.nextInt(3);
} while (open == select);
int select2;
do {
select2 = rm.nextInt(3);
} while (select2 == open || select2 == select);
if (open != atari) {
if (select == atari) {
unchanged++;
} else if (select2 == atari) {
changed++;
}
count++;
}
}
System.
out.
println("箱を変えなかったとき:" + ((double)unchanged
/count
*100) + "%"); System.
out.
println("箱を変えたとき:" + ((double)changed
/count
*100) + "%"); }
static void case2() {
int count=0;
int changed = 0;
int unchanged = 0;
while (count < 10000) {
int atari = rm.nextInt(3);
int select = rm.nextInt(3);
int open;
do {
open = rm.nextInt(3);
} while (open == select || open == atari);
int select2;
do {
select2 = rm.nextInt(3);
} while (select2 == open || select2 == select);
if (select == atari) {
unchanged++;
} else if (select2 == atari) {
changed++;
}
count++;
}
System.
out.
println("箱を変えなかったとき:" + ((double)unchanged
/count
*100) + "%"); System.
out.
println("箱を変えたとき:" + ((double)changed
/count
*100) + "%"); }
}
Y2xhc3MgTWFpbiB7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB7CgkJU3lzdGVtLm91dC5wcmludGxuKCLlh7rpoYzogIXjgYznrrHjgpLpgbjjgpPjgafjgZ3jga7nrrHjgYzjga/jgZrjgozjgaDjgaPjgZ/jgajjgY0iKTsKCQljYXNlMSgpOwoJCVN5c3RlbS5vdXQucHJpbnRsbigiIik7CgkJU3lzdGVtLm91dC5wcmludGxuKCLlh7rpoYzogIXjgYzjga/jgZrjgozjga7nrrHjgpLpgbjjgpPjgaDjgajjgY0iKTsKCQljYXNlMigpOwoJfQoKCXN0YXRpYyB2b2lkIGNhc2UxKCkgewoJCWludCBjb3VudD0wOwoJCWludCBjaGFuZ2VkID0gMDsKCQlpbnQgdW5jaGFuZ2VkID0gMDsKCQlqYXZhLnV0aWwuUmFuZG9tIHJtID0gbmV3IGphdmEudXRpbC5SYW5kb20oKTsKCgkJd2hpbGUgKGNvdW50IDwgMTAwMDApIHsKCQkJaW50IGF0YXJpID0gcm0ubmV4dEludCgzKTsKCQkJaW50IHNlbGVjdCA9IHJtLm5leHRJbnQoMyk7CgoJCQlpbnQgb3BlbjsKCQkJZG8gewoJCQkJb3BlbiA9IHJtLm5leHRJbnQoMyk7CgkJCX0gd2hpbGUgKG9wZW4gPT0gc2VsZWN0KTsKCgkJCWludCBzZWxlY3QyOwoJCQlkbyB7CgkJCQlzZWxlY3QyID0gcm0ubmV4dEludCgzKTsKCQkJfSB3aGlsZSAoc2VsZWN0MiA9PSBvcGVuIHx8IHNlbGVjdDIgPT0gc2VsZWN0KTsKCgkJCWlmIChvcGVuICE9IGF0YXJpKSB7CgkJCQlpZiAoc2VsZWN0ID09IGF0YXJpKSB7CgkJCQkJdW5jaGFuZ2VkKys7CgkJCQl9IGVsc2UgaWYgKHNlbGVjdDIgPT0gYXRhcmkpIHsKCQkJCQljaGFuZ2VkKys7CgkJCQl9CgkJCQljb3VudCsrOwoJCQl9CgkJfQoJCVN5c3RlbS5vdXQucHJpbnRsbigi566x44KS5aSJ44GI44Gq44GL44Gj44Gf44Go44GN77yaIiArICgoZG91YmxlKXVuY2hhbmdlZC9jb3VudCoxMDApICsgIiUiKTsKCQlTeXN0ZW0ub3V0LnByaW50bG4oIueuseOCkuWkieOBiOOBn+OBqOOBje+8miIgKyAoKGRvdWJsZSljaGFuZ2VkL2NvdW50KjEwMCkgKyAiJSIpOwoJfQoKCXN0YXRpYyB2b2lkIGNhc2UyKCkgewoJCWludCBjb3VudD0wOwoJCWludCBjaGFuZ2VkID0gMDsKCQlpbnQgdW5jaGFuZ2VkID0gMDsKCQlqYXZhLnV0aWwuUmFuZG9tIHJtID0gbmV3IGphdmEudXRpbC5SYW5kb20oKTsKCQkKCQl3aGlsZSAoY291bnQgPCAxMDAwMCkgewoJCQlpbnQgYXRhcmkgPSBybS5uZXh0SW50KDMpOwoJCQlpbnQgc2VsZWN0ID0gcm0ubmV4dEludCgzKTsKCgkJCWludCBvcGVuOwoJCQlkbyB7CgkJCQlvcGVuID0gcm0ubmV4dEludCgzKTsKCQkJfSB3aGlsZSAob3BlbiA9PSBzZWxlY3QgfHwgb3BlbiA9PSBhdGFyaSk7CgoJCQlpbnQgc2VsZWN0MjsKCQkJZG8gewoJCQkJc2VsZWN0MiA9IHJtLm5leHRJbnQoMyk7CgkJCX0gd2hpbGUgKHNlbGVjdDIgPT0gb3BlbiB8fCBzZWxlY3QyID09IHNlbGVjdCk7CgoJCQlpZiAoc2VsZWN0ID09IGF0YXJpKSB7CgkJCQl1bmNoYW5nZWQrKzsKCQkJfSBlbHNlIGlmIChzZWxlY3QyID09IGF0YXJpKSB7CgkJCQljaGFuZ2VkKys7CgkJCX0KCQkJY291bnQrKzsKCQl9CgkJU3lzdGVtLm91dC5wcmludGxuKCLnrrHjgpLlpInjgYjjgarjgYvjgaPjgZ/jgajjgY3vvJoiICsgKChkb3VibGUpdW5jaGFuZ2VkL2NvdW50KjEwMCkgKyAiJSIpOwoJCVN5c3RlbS5vdXQucHJpbnRsbigi566x44KS5aSJ44GI44Gf44Go44GN77yaIiArICgoZG91YmxlKWNoYW5nZWQvY291bnQqMTAwKSArICIlIik7Cgl9Cgp9