hogloidのブログ

へなちょこ

うさこテスター

USACOの最近2年ぐらいはジャッジに載ってないらしいので適当に使っているC++用のテスターをupします(需要あるのか・・・?)
USACO,解こう!(勧誘) http://www.usaco.org/index.php?page=contests
Main内は、グローバル変数も初期化が必要なので注意
ちょっと(入力、解答ファイル名)変更すれば他のにも転用可能です
解のうちどれか一つを出力、任意の順番で出力、といった形式には対応していないので注意

int Main(){

}

const int TESTNUM=12;//THE NUMBER OF TEST CASES
int main(){
	Main();return 0;//DELETE THIS LINE WHEN TEST
	for(int i=1;i<=TESTNUM;++i){
		stringstream ss;ss<<i;
		string input="I."+ss.str(),output="O2."+ss.str(),answer="O."+ss.str();
		
		freopen(input.c_str(),"r",stdin);
		FILE* fp=freopen(output.c_str(),"w",stdout);
		
		Main();

		fclose(fp);

		ifstream cin1(output.c_str()),cin2(answer.c_str());
		string a,b;
		while(1){
			if(cin1.eof() && cin2.eof()) break;
			cin1>>a;
			cin2>>b;
			if(a!=b){
				fprintf(stderr,"FAIL in test %d\n",i);
				fflush(stderr);
				return 0;
			}
		}

	}
	fprintf(stderr,"Accepted\n");
	return 0;
}