";
print " �Ʒ� ������ ������ ��� �п� ���� ����Դϴ�.
������ �غ����� ���ǰ��翡�� ������ �ֽñ� �ٶ��ϴ�.
";
print "
���� : o - Accepted, x - Wrong Answer, s - signal out(runtime error), t - Time Limit Exceeded
";
print "5ȸ ���� �ڴ���(Chick)!! ���
";
print "
Gold Medal - �� ���̶� ������ �������� 10%, Silver Medal - �������� 20%, Bronze Medal - �������� 30%
";
print "
: dijkstra, gs12065, k5888200, pl0892029, wdyd2004, zlzmsrhak56
";
print "
: takuma, gs11008, makesource, ainta, jhp109, cjmpl, seaguy
";
print "
: nobe0716, gs11059, sujin, jerry1259, commaster0, teram, augusy14, alskdj28, gs11103, toowhalsrb2, sst, gs12038
";
$dir="/var/www/bbs/moi/5thchk/";
$pnum = 4;
$files1 = scandir($dir);
$number=1;
$iuser = array();
$ip1 = array();
$ip2 = array();
$ip3 = array();
$ip4 = array();
$isc = array();
$rank = array();
for( $i=0 ; $files1[$i] != NULL ; $i++ )
{
if(/*$files1[$i]!="admin" && */$files1[$i]!="." && $files1[$i]!=".." && is_dir($files1[$i])==true)
{
$number++;
$score=0;
if( $number%2 == 1 ) $bcolor = "ffffff";
else $bcolor = "ececff";
$id_name="";
for($ttt=0;$ttt<= strlen($files1[$i]) ;$ttt++)
if(1<=$ttt&&$ttt<=-2) $id_name.= "*";
else $id_name.=SUBSTR($files1[$i],$ttt,1);
$iuser[$number] = $id_name;
for( $j=1 ; $j <= $pnum ; $j++ )
{
$sz = 20;
$prob_result = $dir.$files1[$i].'/'.$files1[$i].'.res'.$j;
if(file_exists($prob_result)==true)
{
$score+=($j*0.001);
$fp = fopen($prob_result, "r");
$str = fgets($fp, filesize($prob_result)+1);
$resres = "";
for( $k=0; $k <= strlen($str) ; $k++ )
if(SUBSTR($str, $k, 1)== "o"){
$resres.=''.SUBSTR($str, $k, 1).'';
if($j!=4) $score += 25+($j*0.001);
else $score += 25+($j*0.001);
}
else if(SUBSTR($str, $k, 1)=="x")
$resres.=''.SUBSTR($str, $k, 1).'';
else if(SUBSTR($str, $k, 1)=="t")
$resres.=''.SUBSTR($str, $k, 1).'';
else if(SUBSTR($str, $k, 1)=="s")
$resres.=''.SUBSTR($str, $k, 1).'';
}
else $resres='Not submited!!';
if($j==1) $ip1[$number] = $resres;
else if($j==2) $ip2[$number] = $resres;
else if($j==3) $ip3[$number] = $resres;
else $ip4[$number] = $resres;
}
$isc[$number]=$score;
}
}
for($i=2;$i<=$number;$i++)
for($j=2;$j<=$number;$j++)
if( $isc[$i] < $isc[$j] ) $rank[$i]++;
for($i=2;$i<=$number-1;$i++)
for($j=$i+1;$j<=$number;$j++)
if($isc[$i] < $isc[$j])
{
$tttt=$iuser[$i];$iuser[$i]=$iuser[$j];$iuser[$j]=$tttt;
$tttt=$ip1[$i];$ip1[$i]=$ip1[$j];$ip1[$j]=$tttt;
$tttt=$ip2[$i];$ip2[$i]=$ip2[$j];$ip2[$j]=$tttt;
$tttt=$ip3[$i];$ip3[$i]=$ip3[$j];$ip3[$j]=$tttt;
$tttt=$ip4[$i];$ip4[$i]=$ip4[$j];$ip4[$j]=$tttt;
$ttttt=$isc[$i];$isc[$i]=$isc[$j];$isc[$j]=$ttttt;
$ttttt=$rank[$i];$rank[$i]=$rank[$j];$rank[$j]=$ttttt;
}
print 'Result for All Participant (������ ��쿡 4, 3, 2, 1�� ������ ���� ������ �켱������ �������ϴ�.)';
for($i=2; $i <= $number ; $i++ )
{
if( $i%2 == 1 ) $bcolor = "ffffff";
else $bcolor = "ececff";
print ' ';
print ' ';
print ' ';
print ' ';
print ' ';
print ' ';
print '';
print "";
}
print "
Rank
|
user
|
2Players(250)
|
Dice(250)
|
Number(250)
|
Stacking Cup(250)
|
Score
|
'.($rank[$i]+1).' | '.$iuser[$i].' | '.$ip1[$i].' | '.$ip2[$i].' | '.$ip3[$i].' | '.$ip4[$i].' | '.(floor($isc[$i])).' |
";
print "�̹� ��ȸ�� �����Ͻ� ".($number)."�� ��� �����ϼ̽��ϴ�!! ���� �濬�� ����ϼ���~
";
print "������ ��ȸ�� �ȴٸ� ����ǰ�� �غ��� ^^;";
/*
print "
Here is some User's perfect Solution!!
1. sum (by vega4792)";
print ' #include <stdio.h> // this solution is dynamic programming using memory cutting!
int n, i, front, cnt, sum;
main()
{
scanf("%d",&n);
for(i=1;i<=n;i++)
{
sum+=i;
while(sum>n)
sum-= ++front;
if(sum==n) cnt++;
}
printf("%d",cnt);
}
';
print "
Here is another solution 1. sum (by k5888200)";
print ' #include <stdio.h> // This is methmatical skill
long long N;
int count;
int main(){
long long k;
scanf("%lld",&N);
for(k=1;k<=N;k++){
if( (2*N-k*k+k)%(2*k) ==0 && (2*N-k*k+k)/(2*k)>=1) count++;
}
printf("%d",count);
return 0;
}
';
print "
Here is solution 2. Ship Travelling(by zlzmsrhak56)";
print ' #include<stdio.h> // This is SCC(Strongly Connected Component). Try seach SCC (using googling!!)
#include<vector>
using namespace std;
vector<int> way[10005];
vector<int> bay[10005];
vector<int> nay[10005];
vector<int> stack;
int num[10005],ad[10005],dy[10005],n,m,st,en,cnt=0;
bool check[10005],sch,ech;
void input()
{
int i,a,b;
scanf("%d%d%d%d",&n,&m,&st,&en);
for(i=0;i<m;i++){
scanf("%d%d",&a,&b);
way[a].push_back(b);
bay[b].push_back(a);
}
}
void DFS(int x)
{
int i;
for(i=0;i<way[x].size();i++){
if(check[way[x][i]])continue;
check[way[x][i]]=true;
DFS(way[x][i]);
}
stack.push_back(x);
}
void nDFS(int x)
{
if(x==st&&!sch){ st=cnt; sch=true; }
if(x==en&&!ech){ en=cnt; ech=true; }
int i;
for(i=0;i<bay[x].size();i++){
if(ad[bay[x][i]]!=0&&ad[bay[x][i]]!=cnt&&(nay[ad[bay[x][i]]].empty()||nay[ad[bay[x][i]]].back()!=cnt)){
nay[ad[bay[x][i]]].push_back(cnt);
}
if(check[bay[x][i]])continue;
check[bay[x][i]]=true;
nDFS(bay[x][i]);
}
num[cnt]++;
ad[x]=cnt;
}
void scc()
{
int i;
for(i=1;i<=n;i++){
if(check[i])continue;
check[i]=true;
DFS(i);
}
for(i=1;i<=n;i++)check[i]=false;
for(i=stack.size()-1;i>=0;i--){
if(check[stack[i]])continue;
cnt++;
check[stack[i]]=true;
nDFS(stack[i]);
}
}
void solve()
{
int i,j;
dy[st]=num[st];
for(i=st;i<=en;i++){
for(j=0;j<nay[i].size();j++){
if(dy[nay[i][j]]<num[nay[i][j]]+dy[i])dy[nay[i][j]]=num[nay[i][j]]+dy[i];
}
}
printf("%d",dy[en]);
}
int main()
{
input();
scc();
solve();
return 0;
}
';
print "
Here is solution 4. Comeback vault 101(by dijkstra)";
print ' #include<stdio.h> // This is Dynamic Programming (named Bitonic Tour) best solution!!
#define max(a,b) (a>b?(a):(b))
int d[220][110][110],n,m;
int s[110][110];
main()
{
int i,j,k;
scanf("%d%d",&m,&n);
for(i=1;i<=n;i++) for(j=1;j<=m;j++) scanf("%1d",&s[i][j]);
for(i=1;i<=n;i++) for(j=1;j<=m;j++) s[i][j]=s[i][j]==1?1:s[i][j]==0?0:-1;
for(k=2,d[1][1][1]=s[1][1]+1;k<n+m;k++) for(i=1;i<=n;i++)
{
if(s[i][k-i+1]==-1) continue;
for(j=i;j<=n;j++)
{
int score=0;
if(i!=j) score = s[i][k-i+1]+s[j][k-j+1];
else score = s[i][k-i+1];
if(s[j][k-j+1]==-1) continue;
d[k][i][j] = max(d[k-1][i-1][j],max(d[k-1][i][j-1],max(d[k-1][i][j],d[k-1][i-1][j-1])));
d[k][i][j] = d[k][i][j]?d[k][i][j]+score:0;
}
}
printf("%d\n",d[n+m-1][n][n]?d[n+m-1][n][n]-1:0);
}
';
print "�� �ع��� �м��Ͽ� ������ �����սô�. �̹��� 3���� �����ڰ� �����ϴ�. ���� ��ϵǸ� �����ϼ���!!";
*/
?>