defined $ENV{"MO_ROOT"} or die "Please set MO_ROOT to the contest root directory first.\n";
}
use lib $ENV{"MO_ROOT"} . "/lib/perl5";
-use lib "."; ### FIXME
+use lib $ENV{"MO_ROOT"} . "/submit/lib/perl5";
use MO::Submit;
use Sherlock::Object;
or_die($r);
#$r->write_indented(*STDOUT);
-my %tasks = map { $_->get("T") => $_ } $r->getarray("(T");
-foreach my $task (sort keys %tasks) {
- my $t = $tasks{$task};
- my %parts = map { $_->get("P") => $_ } $t->getarray("(P");
- my @pp = keys %parts;
- if (@pp != 1) {
- @pp = sort { $a <=> $b } @pp; # We expect that the parts are numeric
- }
- foreach my $part (@pp) {
- my $p = $parts{$part};
+foreach my $t ($r->getarray("(T")) {
+ my $task = $t->get("T");
+ foreach my $p ($t->getarray("(P")) {
+ my $part = $p->get("P");
my $name = $task;
$part eq $task or $name .= "/$part";
printf "%-16s", $name;
my $current_ver = $p->get("V");
my $printed = 0;
foreach my $v ($p->getarray("(V")) {
- if ($v && $v->get("V") == $current_ver) {
+ if ($v->get("V") == $current_ver) {
my $time = strftime("%H:%M:%S", localtime $v->get("T"));
print "OK (",
"$part.", $v->get("X"), ", ",