順位 | 点 | 差 | 国 |
---|---|---|---|
1 | 13 | 10 | 日本 |
2 | 7 | -6 | ヨルダン |
3 | 6 | 0 | オーストラリア |
4 | 6 | -3 | オマーン |
5 | 5 | -1 | イラク |
2013.6.4
日本 vs オーストラリア
オマーン vs イラク
2013.6.11
オーストラリア vs ヨルダン
イラク vs 日本
2013.6.18
オーストラリア vs イラク
ヨルダン vs オマーン
#!/usr/bin/perl use strict; use warnings; use Storable; # 2013/3/26の試合終了後の勝ち点 my $c_ref = { '日本' => '13', 'ヨルダン' => '7', 'オーストラリア' => '6', 'オマーン' => '6', 'イラク' => '5' }; # 残りの試合 my @ms = ( ['2013.06.04', "日本", "オーストラリア"], ['2013.06.04', "オマーン", "イラク"], ['2013.06.11', "オーストラリア", "ヨルダン"], ['2013.06.11', "イラク", "日本"], ['2013.06.18', "オーストラリア", "イラク"], ['2013.06.18', "ヨルダン", "オマーン"] ); my @results; df_simu($c_ref, []); foreach my $r (@results) { print join(", ", map {"$_($r->{c}{$_})"} sort {$r->{c}{$b} <=> $r->{c}{$a}} keys %{$r->{c}})."\n"; for (my $i = 0; $i < @ms; $i++) { print " ".$ms[$i][0]." "; my $mr = $r->{h}[$i]; if ($mr == 0) { # 0 Home Win, 1 Draw, 2 Away Win print "o $ms[$i][1] : x $ms[$i][2]\n"; } elsif ($mr == 1) { print "- $ms[$i][1] : - $ms[$i][2]\n"; } elsif ($mr == 2) { print "x $ms[$i][1] : o $ms[$i][2]\n"; } } print "\n"; } sub df_simu { my ($c_ref, $h_ref) = @_; my $nth = @$h_ref; if ($nth == @ms) { push @results, {c => $c_ref, h => $h_ref}; return; } foreach my $mr (0, 1, 2) { # 0 Home Win, 1 Draw, 2 Away Win my $t_ref = Storable::dclone($c_ref); if ($mr == 0) { $t_ref->{$ms[$nth][1]} += 3; } elsif ($mr == 1) { $t_ref->{$ms[$nth][1]} += 1; $t_ref->{$ms[$nth][2]} += 1; } elsif ($mr == 2) { $t_ref->{$ms[$nth][2]} += 3; } df_simu($t_ref, [@$h_ref, $mr]); } }
% ./fifa.pl 日本(16), オーストラリア(12), ヨルダン(10), オマーン(9), イラク(8) 2013.06.04 o 日本 : x オーストラリア 2013.06.04 o オマーン : x イラク 2013.06.11 o オーストラリア : x ヨルダン 2013.06.11 o イラク : x 日本 2013.06.18 o オーストラリア : x イラク 2013.06.18 o ヨルダン : x オマーン 日本(16), オーストラリア(12), オマーン(10), ヨルダン(8), イラク(8) 2013.06.04 o 日本 : x オーストラリア 2013.06.04 o オマーン : x イラク 2013.06.11 o オーストラリア : x ヨルダン 2013.06.11 o イラク : x 日本 2013.06.18 o オーストラリア : x イラク 2013.06.18 - ヨルダン : - オマーン 日本(16), オーストラリア(12), オマーン(12), イラク(8), ヨルダン(7) 2013.06.04 o 日本 : x オーストラリア 2013.06.04 o オマーン : x イラク 2013.06.11 o オーストラリア : x ヨルダン 2013.06.11 o イラク : x 日本 2013.06.18 o オーストラリア : x イラク 2013.06.18 x ヨルダン : o オマーン
イラク(14), ヨルダン(13), 日本(13), オーストラリア(9), オマーン(6) 2013.06.04 x 日本 : o オーストラリア 2013.06.04 x オマーン : o イラク 2013.06.11 x オーストラリア : o ヨルダン 2013.06.11 o イラク : x 日本 2013.06.18 x オーストラリア : o イラク 2013.06.18 o ヨルダン : x オマーン