.
////////////////////////////////////////////////////////////////////////////////
// Last modified 05/aug/2012 by cassio@ime.usp.br
require('header.php');
$d = DBRunReport($_SESSION["usertable"]["contestnumber"],$_SESSION["usertable"]["usersitenumber"]);
echo "
Statistics
\n";
//----------------------------------------------------------
echo "Runs by Problem
\n";
echo "\n";
echo "| Problems | ";
echo "Total | Accepted | ";
echo "
\n";
$str="All Runs by Problem";
$str2="Accepted Runs by Problem";
reset($d['problem']);
$cor = "";
while (list($keya, $val) = each($d['problem'])) {
$val = $d['problemyes'][$keya]; if($val=="") $val=0;
$str2 .= chr(1) . $keya . "(" . $val . ")" . chr(1) . $val;
$cor .= "-" . $d['color'][$keya];
}
$cor = substr($cor,1);
reset($d['problem']);
while (list($keya, $val) = each($d['problem'])) {
$str .= chr(1) . $keya . "(" . $val . ")" . chr(1) . $val;
echo "$keya ";
echo " \n";
echo " | ";
echo "$val | ";
if(isset($d['problemyes'][$keya])) {
echo "".$d['problemyes'][$keya];
if($val != 0) {
$p = round(100*$d['problemyes'][$keya] / $val);
echo " (".$p."%)";
}
echo " | ";
}
else
echo "0 (0%) | ";
echo "
";
}
echo "
";
echo "";
echo "."&color=".rawurlencode($cor)."\") | \n";
echo "."&color=".rawurlencode($cor)."\") |
\n";
//----------------------------------------------------------
echo "Runs by Problem and Answer
\n";
echo "\n";
echo "| Problems x Answers | ";
reset($d['answer']);
while (list($key, $val) = each($d['answer']))
echo "$key | ";
echo "Total |
\n";
reset($d['problem']);
while (list($keya, $vala) = each($d['problem'])) {
echo "$keya ";
echo " \n";
echo " | ";
reset($d['answer']);
while (list($key, $val) = each($d['answer'])) {
if(!isset($d['pa'][$keya][$key]))
echo "0 | ";
else {
$p = round(100*$d['pa'][$keya][$key] / $vala);
echo "".$d['pa'][$keya][$key]." (".$p."%) | ";
}
}
echo "$vala | ";
echo "
";
}
echo "
";
//----------------------------------------------------------
echo "Runs by Problem and Language
\n";
echo "\n";
echo "| Problems x Languages | ";
reset($d['language']);
while (list($key, $val) = each($d['language']))
echo "$key | ";
echo "Total |
\n";
reset($d['problem']);
while (list($keya, $vala) = each($d['problem'])) {
echo "$keya ";
echo " \n";
echo " | ";
reset($d['language']);
while (list($key, $val) = each($d['language'])) {
if(!isset($d['pl'][$keya][$key]))
echo "0 | ";
else {
$p = round(100*$d['pl'][$keya][$key] / $vala);
echo "".$d['pl'][$keya][$key]." (".$p."%) | ";
}
}
echo "$vala | ";
echo "
";
}
echo "
";
//----------------------------------------------------------
echo "
";
echo "
";
echo "Runs by Language
\n";
echo "\n";
echo "| Languages | ";
echo "Total | Accepted | ";
echo "
\n";
$str="All Runs by Language";
$str2="Accepted Runs by Language";
reset($d['language']);
while (list($keya, $val) = each($d['language'])) {
$val = $d['languageyes'][$keya]; if($val=="") $val=0;
$str2 .= chr(1) . $keya . "(" . $val . ")" . chr(1) . $val;
}
reset($d['language']);
while (list($keya, $val) = each($d['language'])) {
$str .= chr(1) . $keya . "(" . $val . ")" . chr(1) . $val;
echo "| $keya | ";
echo "$val | ";
if(isset($d['languageyes'][$keya])) {
$p = round(100*$d['languageyes'][$keya] / $val);
echo "".$d['languageyes'][$keya]." (".$p."%) | ";
}
else
echo "0 (0%) | ";
echo "
";
}
echo "
";
echo "";
echo "."\") | \n";
echo "."\") |
\n";
//----------------------------------------------------------
echo "Runs by Language and Answer
\n";
echo "\n";
echo "| Languages x Answers | ";
reset($d['answer']);
while (list($key, $val) = each($d['answer']))
echo "$key | ";
echo "Total |
\n";
reset($d['language']);
while (list($keya, $vala) = each($d['language'])) {
echo "| $keya | ";
reset($d['answer']);
while (list($key, $val) = each($d['answer'])) {
if(!isset($d['la'][$keya][$key]))
echo "0 | ";
else {
$p = round(100*$d['la'][$keya][$key] / $vala);
echo "".$d['la'][$keya][$key]." (".$p."%) | ";
}
}
echo "$vala | ";
echo "
";
}
echo "
";
//----------------------------------------------------------
echo "
";
echo "
";
echo "Runs by Answer
\n";
echo "";
echo "";
echo "\n";
echo "| Answers | ";
echo "Answers | ";
echo " \n";
$str="All Runs by Answer";
reset($d['answer']);
while (list($keya, $val) = each($d['answer'])) {
$str .= chr(1) . $keya . "(" . $val . ")" . chr(1) . $val;
echo "| $keya | ";
echo "$val | ";
echo " ";
}
echo " ";
echo " | ";
echo "."\") |
\n";
//----------------------------------------------------------
echo "
";
echo "
";
echo "Runs by User and Problem
\n";
echo "\n";
echo "| Users x Problems | ";
reset($d['problem']);
while (list($key, $val) = each($d['problem'])) {
echo "$key ";
echo " \n";
echo " | ";
}
echo "Total | Accepted |
\n";
reset($d['username']);
while (list($keya, $vala) = each($d['username'])) {
$keya = $d['username'][$keya];
if(isset($d['user'][$keya]))
$vala = $d['user'][$keya];
else $vala=0;
echo "| ".$d['userfull'][$keya]." | ";
reset($d['problem']);
while (list($key, $val) = each($d['problem'])) {
if(!isset($d['up'][$keya][$key]))
echo "0 | ";
else {
$q = $d['up'][$keya][$key];
$color = "ff5555";
if($q < 0) {
$q = - $q;
$color = "22ee22";
}
echo "".$q;
if($vala != 0) {
$p = round(100*$q / $vala);
echo " (".$p."%)";
}
echo " | ";
}
}
if($vala != "")
echo "$vala | ";
else
echo "0 | ";
if(isset($d['useryes'][$keya])) {
if($vala != 0) {
$p = round(100*$d['useryes'][$keya] / $vala);
echo "".$d['useryes'][$keya]." (".$p."%) | ";
} else
echo "".$d['useryes'][$keya]." | ";
} else
echo "0 | ";
echo "
";
}
echo "
";
//----------------------------------------------------------
echo "
";
echo "
";
echo "Runs by Time Period
\n";
$vezes = 30;
$passo = $st['siteduration']/$vezes;
$atual = 0;
$pos = 0;
$res = array();
$m = 0;
sort($d['timestamp']);
reset($d['timestamp']);
while (list($keya, $val) = each($d['timestamp'])) {
while($atual+$passo < $val) {
$atual += $passo;
$pos++;
}
if(isset($res[$pos]))
$res[$pos]++;
else $res[$pos]=1;
if($res[$pos] > $m) $m=$res[$pos];
}
$str="Runs by Time Period" . chr(1) . $m;
$atual=0;
for($pos=0; $pos<$vezes; $pos++) {
if(!isset($res[$pos]) || $res[$pos]=="") $res[$pos] = 0;
$q = (int) ($atual/60);
$atual += $passo;
$qq = (int) ($atual/60);
$str .= chr(1) . $q . "-" .$qq . chr(1) . $res[$pos];
}
echo "
\n";
//------------------------------------------------
$vezes = 30;
$passo = $st['siteduration']/$vezes;
$atual = 0;
$pos = 0;
$res = array();
sort($d['timestampyes']);
reset($d['timestampyes']);
while (list($keya, $val) = each($d['timestampyes'])) {
while($atual+$passo < $val) {
$atual += $passo;
$pos++;
}
if(isset($res[$pos]))
$res[$pos]++;
else $res[$pos]=1;
}
$str="Accepted Runs by Time Period" . chr(1) . $m;
$atual=0;
for($pos=0; $pos<$vezes; $pos++) {
if(!isset($res[$pos]) || $res[$pos]=="") $res[$pos] = 0;
$q = (int) ($atual/60);
$atual += $passo;
$qq = (int) ($atual/60);
$str .= chr(1) . $q . "-" .$qq . chr(1) . $res[$pos];
}
echo "
\n";
include("$locr/footnote.php");
?>