"; print " ¾Æ·¡ Á¡¼ö´Â Âü¿©ÇÑ ¸ðµç ºÐ¿¡ ´ëÇÑ °á°úÀÔ´Ï´Ù.
¼ö»óÀÚµé ¸ðµÎ ÃàÇϵ帳´Ï´Ù. ¼ö°íÇϼ̽À´Ï´Ù. ´ÙÀ½¿¡ ÁغñÁßÀÎ ¸ðÀÇ°í»ç¿¡µµ Âü°¡ÇØ Áֽñ⠹ٶø´Ï´Ù.
"; print "
¹ü·Ê : o - Accepted, x - Wrong Answer, s - signal out(runtime error), t - Time Limit Exceeded


"; print "3ȸ ³ª´Â ÄÚ´õ´Ù(Chick)!! °á°ú

"; print "Gold Medal : ainta, august14, dijkstra, gs10087, gs12065, sujin, teram, vega4792, wclee2265, zlzmsrhak56
"; print "Silver Medal : X
"; print "Bronze Medal : pl0892029, nobe0716, commaster0, gs11059, gshs281301, ryanch1, gs12059, gs11008, gs10107, k5888200

"; $dir="/var/www/bbs/moi/3stchk/"; $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).''; $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 Odd Number(250) Dice Game(250) A Party(250) Number Card(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. Odd Number (by ainta)"; print '
#include <stdio.h>     // Mathmatical Solution 
long long a;
int main(){
	scanf("%lld",&a);
	printf("%lld %lld\n",(a-1)*(a-1)/2+1,(a+1)*(a+1)/2-1);
}

'; print "

2. Dice Game (by dijkstra)"; print '
#include<stdio.h>
int b[1010],d[1010],p;
main()
{
    int n,m,i;
    scanf("%d%d",&n,&m);
    for(i=1;i<=n;i++)
        scanf("%d",&b[i]);  
    for(p=i=1;p<n&&i<=m;i++)
    {
        scanf("%d",&d[i]);
        p+=d[i]+b[p+d[i]];
    }
    printf("%d",i-1);
}

'; print "

3. A Part(by vega4792)"; print '
#include<stdio.h>
int n, m, a, b, visit[501], g[501][501], i, j, cnt;
main()
{
	scanf("%d%d",&n,&m);
	for(i=1; i<=m; i++)
	{
		scanf("%d%d",&a,&b);
		g[a][b]=1;
		g[b][a]=1;
	}
	for(i=2; i<=n; i++)
		if(g[1][i])
		{
			visit[i]=1;
			for(j=1; j<=n; j++)
			{
				if(j==i) continue;
				if(g[i][j]) visit[j]=1;
			}
		}
	for(i=2; i<=n; i++)
		if(visit[i]) cnt++;
	printf("%d",cnt);
}
	

'; print "
Here is another solution 3. A Part(by nobe0716)"; print '
#include <stdio.h>
#include <stdlib.h>
#include <vector>
#include <queue>
using namespace std;

//#define _TEST

#ifdef _TEST
#include "windows.h"
#include "conio.h"
#endif //_TEST

struct _Node
{
	int nIdx;
	int nDepth;
};

const static int N_MAX	= 601;
int n, m;

queue<_Node> q;
vector<int> vecMap[N_MAX];
vector<int> vecVisitor;

int nHashInvited[N_MAX];

int main(int argc, char **argv)
{
#ifdef _TEST
	freopen("input.txt", "r", stdin);
#endif // _TEST
	int nCnt = 0;

	scanf("%d %d", &n, &m);
#ifdef _TEST
	int t = GetTickCount();
#endif // _TEST

	for ( int i = 0 ; i < m ; ++i )
	{
		int nFrom, nTo;
		scanf("%d %d", &nFrom, &nTo );
		vecMap[nFrom].push_back( nTo );
		vecMap[nTo].push_back( nFrom );
	}
	_Node stNode;
	stNode.nIdx = 1;
	stNode.nDepth = 0;
	
	_Node stNodeTemp;
	q.push( stNode );
	while ( !q.empty() )
	{
		_Node stNodeTemp = q.front();
		q.pop();

		nHashInvited[ stNodeTemp.nIdx ] = 1;

		if ( stNodeTemp.nDepth >= 2 )
			continue;

		for ( int i = 0 ; i < vecMap[ stNodeTemp.nIdx ].size() ; ++i )
		{
			_Node stNodeBranch;
			stNodeBranch.nIdx = vecMap[ stNodeTemp.nIdx ].at(i);
			stNodeBranch.nDepth = stNodeTemp.nDepth + 1;

			if ( nHashInvited[ stNodeBranch.nIdx ] == 0 )
				q.push( stNodeBranch );	
		}
	}
	
	for ( int i = 0 ; i < N_MAX ; ++i )
		if ( nHashInvited[i] == 1)
			++nCnt;
	printf("%d\n", nCnt - 1 );

#ifdef _TEST
	printf("\tRunTime = %d\n", GetTickCount() - t );
	getch();
#endif // _TEST
	return 0;
}

'; print "

4. Number Card(by zlzmsrhak56)"; print '
#include<stdio.h>     // using set
#include<set>
using namespace std;
int i,n,k;
int d[15];
bool check[15];
set<int> numbers;
void aa(int su,int lev)
{
	int i;
	if(lev==k){
		numbers.insert(su);
		return;
	}
	for(i=0;i<n;i++){
		if(check[i])continue;
		check[i]=true;
		if(d[i]<10)aa(su*10+d[i],lev+1);
		else aa(su*100+d[i],lev+1);
		check[i]=false;
	}
}
int main()
{
	scanf("%d%d",&n,&k);
	for(i=0;i<n;i++)scanf("%d",d+i);
	aa(0,0);
	printf("%d",numbers.size());
	return 0;
}

'; print "
Here is another solution 4. Number Card(by august14)"; print '
#include <iostream>
#include <string>
#include <set>		//using set and string
using namespace std;

int N,K,C[11]; string NUM[11]; set<string> S;

void go(int a, string s)
{
	if (a == K) S.insert(s);
	else{
		int i;

		for (i=0;i<N;i++) if (!C[i]){
			C[i] = 1; go(a+1,s+NUM[i]); C[i] = 0;
		}
	}
}

int main()
{
	int i;

	cin >> N >> K;
	for (i=0;i<N;i++) cin >> NUM[i];

	go(0,"");

	cout << S.size();

	return 0;
}


'; print "À§ ÇعýµéÀ» ºÐ¼®ÇÏ¿© ¿­½ÉÈ÷ °øºÎÇսôÙ. °Ô½ÃµÈ ¼Ö·ç¼ÇÀÇ ÁÖÀÎÀÌ ¼³¸íÀ» Discuss Board¿¡ ÀÛ¼ºÇØ ÁÖ½Ã¸é µî·ÏÇØ µå¸³´Ï´Ù."; print ''; ?>