Submission #84850


Source Code Expand

#include <iostream>
#include <vector>
#include <string>
#include <stack>
#include <queue>
#include <deque>
#include <set>
#include <map>
#include <algorithm>	// require sort next_permutation count __gcd reverse etc.
#include <cstdlib>	// require abs exit
#include <cstdio>	// require scanf printf
#include <functional>
#include <numeric>	// require accumulate
#include <cmath>
#include <climits>
#include <limits>
#include <cfloat>
#include <iomanip>	// require setw
#include <sstream>	// require stringstream 
#include <cstring>	// require memset
#include <cctype>	// require tolower, toupper
#include <fstream>	// require freopen
#include <ctime>
#define rep(i,n) for(int i=0;i<(n);i++)
#define ALL(A) A.begin(), A.end()
#define DEBUG 0

using namespace std;

typedef long long ll;
typedef pair<int, int> P;
string FILE_NAME = "testcase.B";
string NAME;
string itos (int n )
{
	stringstream ss;
	ss << n;

	return ss.str();
}

int dist2 (P a, P b ){
	return ((a.first - b.first )*(a.first - b.first ) + (a.second - b.second )*(a.second - b.second ) );
}

vector<P> pos;
bool used[105];

bool cmp (P a, P b )
{
	if (a.first != b.first ) return a.first < b.first;
	return a.second < b.second;
}

int main()
{
//	cut here before submit 
#if DEBUG
	NAME = FILE_NAME;
	int CNT = 1;
	NAME += itos (CNT );
	while (freopen (NAME.c_str() , "r", stdin ) != NULL ) {
#endif
	memset (used, false, sizeof (used ) );
	int n; scanf ("%d", &n );
	pos.clear();
	rep (i, n ){
		int x, y;
		scanf ("%d %d", &x, &y );
		if (x == 0 ) continue;
		pos.push_back (P(x, y ) );
	} // end rep
	map<P,int> cnt; cnt.clear();
	rep (i, pos.size() ){
		if (pos[i].first < 0 ) pos[i].first *= -1;
		cnt[pos[i]] = (cnt[pos[i]]+1)%2;
	} // end rep
	vector<P> cand; cand.clear();
	map<P,int>::iterator it = cnt.begin();
	for (; it != cnt.end(); it++ ){
		P p = (*it).first;
		int cnt = (*it).second;
		if (cnt ){
			cand.push_back (p );
		} // end if
	} // end for
	if (!cand.empty() )
		sort (ALL (cand ), cmp );
	int m = cand.size();
/*
	rep (i, m ){
		cerr << "(" << cand[i].first << ',' << cand[i].second << ')' << endl;
	} // end rep
*/
	double res = 0.;
	rep (i, m ){
		if (used[i] ) continue;
		used[i] = true;
		int curr2 = cand[i].first*cand[i].first;
		int k = -1;
		for (int j = i+1; j < m; j++ ){
			int d2 = dist2 (cand[i], cand[j] );
			if (!used[j] && d2 < curr2 ){
				curr2 = d2;
				k = j;
			} // end if
		} // end for
		if (k != -1 ){
			used[k] = true;
		} // end if
		res += sqrt(curr2);
	} // end rep
	printf ("%.7lf\n", res );			
#if DEBUG
	CNT++;	// cut here before submit
	NAME = FILE_NAME;
	NAME += itos (CNT );
	} // end loop; cut here before submit
#endif			
	return 0;
}

Submission Info

Submission Time
Task B - 玉座の間
User ty70
Language C++ (G++ 4.6.4)
Score 50
Code Size 2786 Byte
Status WA
Exec Time 53 ms
Memory 892 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:65:26: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
./Main.cpp:69:27: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]

Judge Result

Set Name Subtask1 Subtask2 Subtask3 Subtask4
Score / Max Score 50 / 50 0 / 50 0 / 50 0 / 50
Status
AC × 25
AC × 29
WA × 21
AC × 30
WA × 45
AC × 31
WA × 69
Set Name Test Cases
Subtask1 11_rand00.txt, 11_rand01.txt, 11_rand02.txt, 11_rand03.txt, 11_rand04.txt, 11_rand05.txt, 11_rand06.txt, 11_rand07.txt, 11_rand08.txt, 11_rand09.txt, 11_rand10.txt, 11_rand11.txt, 11_rand12.txt, 11_rand13.txt, 11_rand14.txt, 11_rand15.txt, 11_rand16.txt, 11_rand17.txt, 11_rand18.txt, 11_rand19.txt, 11_rand20.txt, 11_rand21.txt, 11_rand22.txt, 11_rand23.txt, 11_rand24.txt
Subtask2 11_rand00.txt, 11_rand01.txt, 11_rand02.txt, 11_rand03.txt, 11_rand04.txt, 11_rand05.txt, 11_rand06.txt, 11_rand07.txt, 11_rand08.txt, 11_rand09.txt, 11_rand10.txt, 11_rand11.txt, 11_rand12.txt, 11_rand13.txt, 11_rand14.txt, 11_rand15.txt, 11_rand16.txt, 11_rand17.txt, 11_rand18.txt, 11_rand19.txt, 11_rand20.txt, 11_rand21.txt, 11_rand22.txt, 11_rand23.txt, 11_rand24.txt, 21_rand00.txt, 21_rand01.txt, 21_rand02.txt, 21_rand03.txt, 21_rand04.txt, 21_rand05.txt, 21_rand06.txt, 21_rand07.txt, 21_rand08.txt, 21_rand09.txt, 21_rand10.txt, 21_rand11.txt, 21_rand12.txt, 21_rand13.txt, 21_rand14.txt, 21_rand15.txt, 21_rand16.txt, 21_rand17.txt, 21_rand18.txt, 21_rand19.txt, 21_rand20.txt, 21_rand21.txt, 21_rand22.txt, 21_rand23.txt, 21_rand24.txt
Subtask3 11_rand00.txt, 11_rand01.txt, 11_rand02.txt, 11_rand03.txt, 11_rand04.txt, 11_rand05.txt, 11_rand06.txt, 11_rand07.txt, 11_rand08.txt, 11_rand09.txt, 11_rand10.txt, 11_rand11.txt, 11_rand12.txt, 11_rand13.txt, 11_rand14.txt, 11_rand15.txt, 11_rand16.txt, 11_rand17.txt, 11_rand18.txt, 11_rand19.txt, 11_rand20.txt, 11_rand21.txt, 11_rand22.txt, 11_rand23.txt, 11_rand24.txt, 21_rand00.txt, 21_rand01.txt, 21_rand02.txt, 21_rand03.txt, 21_rand04.txt, 21_rand05.txt, 21_rand06.txt, 21_rand07.txt, 21_rand08.txt, 21_rand09.txt, 21_rand10.txt, 21_rand11.txt, 21_rand12.txt, 21_rand13.txt, 21_rand14.txt, 21_rand15.txt, 21_rand16.txt, 21_rand17.txt, 21_rand18.txt, 21_rand19.txt, 21_rand20.txt, 21_rand21.txt, 21_rand22.txt, 21_rand23.txt, 21_rand24.txt, 31_rand00.txt, 31_rand01.txt, 31_rand02.txt, 31_rand03.txt, 31_rand04.txt, 31_rand05.txt, 31_rand06.txt, 31_rand07.txt, 31_rand08.txt, 31_rand09.txt, 31_rand10.txt, 31_rand11.txt, 31_rand12.txt, 31_rand13.txt, 31_rand14.txt, 31_rand15.txt, 31_rand16.txt, 31_rand17.txt, 31_rand18.txt, 31_rand19.txt, 31_rand20.txt, 31_rand21.txt, 31_rand22.txt, 31_rand23.txt, 31_rand24.txt
Subtask4 11_rand00.txt, 11_rand01.txt, 11_rand02.txt, 11_rand03.txt, 11_rand04.txt, 11_rand05.txt, 11_rand06.txt, 11_rand07.txt, 11_rand08.txt, 11_rand09.txt, 11_rand10.txt, 11_rand11.txt, 11_rand12.txt, 11_rand13.txt, 11_rand14.txt, 11_rand15.txt, 11_rand16.txt, 11_rand17.txt, 11_rand18.txt, 11_rand19.txt, 11_rand20.txt, 11_rand21.txt, 11_rand22.txt, 11_rand23.txt, 11_rand24.txt, 21_rand00.txt, 21_rand01.txt, 21_rand02.txt, 21_rand03.txt, 21_rand04.txt, 21_rand05.txt, 21_rand06.txt, 21_rand07.txt, 21_rand08.txt, 21_rand09.txt, 21_rand10.txt, 21_rand11.txt, 21_rand12.txt, 21_rand13.txt, 21_rand14.txt, 21_rand15.txt, 21_rand16.txt, 21_rand17.txt, 21_rand18.txt, 21_rand19.txt, 21_rand20.txt, 21_rand21.txt, 21_rand22.txt, 21_rand23.txt, 21_rand24.txt, 31_rand00.txt, 31_rand01.txt, 31_rand02.txt, 31_rand03.txt, 31_rand04.txt, 31_rand05.txt, 31_rand06.txt, 31_rand07.txt, 31_rand08.txt, 31_rand09.txt, 31_rand10.txt, 31_rand11.txt, 31_rand12.txt, 31_rand13.txt, 31_rand14.txt, 31_rand15.txt, 31_rand16.txt, 31_rand17.txt, 31_rand18.txt, 31_rand19.txt, 31_rand20.txt, 31_rand21.txt, 31_rand22.txt, 31_rand23.txt, 31_rand24.txt, 41_rand00.txt, 41_rand01.txt, 41_rand02.txt, 41_rand03.txt, 41_rand04.txt, 41_rand05.txt, 41_rand06.txt, 41_rand07.txt, 41_rand08.txt, 41_rand09.txt, 41_rand10.txt, 41_rand11.txt, 41_rand12.txt, 41_rand13.txt, 41_rand14.txt, 41_rand15.txt, 41_rand16.txt, 41_rand17.txt, 41_rand18.txt, 41_rand19.txt, 41_rand20.txt, 41_rand21.txt, 41_rand22.txt, 41_rand23.txt, 41_rand24.txt
Case Name Status Exec Time Memory
11_rand00.txt AC 22 ms 784 KB
11_rand01.txt AC 22 ms 780 KB
11_rand02.txt AC 20 ms 784 KB
11_rand03.txt AC 22 ms 784 KB
11_rand04.txt AC 22 ms 784 KB
11_rand05.txt AC 50 ms 784 KB
11_rand06.txt AC 25 ms 784 KB
11_rand07.txt AC 22 ms 784 KB
11_rand08.txt AC 22 ms 788 KB
11_rand09.txt AC 42 ms 740 KB
11_rand10.txt AC 31 ms 744 KB
11_rand11.txt AC 33 ms 736 KB
11_rand12.txt AC 24 ms 732 KB
11_rand13.txt AC 23 ms 788 KB
11_rand14.txt AC 21 ms 776 KB
11_rand15.txt AC 49 ms 788 KB
11_rand16.txt AC 21 ms 788 KB
11_rand17.txt AC 20 ms 812 KB
11_rand18.txt AC 53 ms 776 KB
11_rand19.txt AC 21 ms 784 KB
11_rand20.txt AC 35 ms 748 KB
11_rand21.txt AC 43 ms 740 KB
11_rand22.txt AC 22 ms 760 KB
11_rand23.txt AC 23 ms 780 KB
11_rand24.txt AC 22 ms 784 KB
21_rand00.txt WA 22 ms 784 KB
21_rand01.txt WA 45 ms 788 KB
21_rand02.txt WA 22 ms 816 KB
21_rand03.txt WA 41 ms 736 KB
21_rand04.txt WA 20 ms 788 KB
21_rand05.txt WA 22 ms 784 KB
21_rand06.txt AC 22 ms 780 KB
21_rand07.txt WA 22 ms 760 KB
21_rand08.txt WA 20 ms 788 KB
21_rand09.txt WA 21 ms 888 KB
21_rand10.txt WA 36 ms 740 KB
21_rand11.txt WA 51 ms 740 KB
21_rand12.txt WA 23 ms 780 KB
21_rand13.txt WA 23 ms 784 KB
21_rand14.txt WA 28 ms 784 KB
21_rand15.txt WA 21 ms 788 KB
21_rand16.txt WA 22 ms 792 KB
21_rand17.txt WA 21 ms 784 KB
21_rand18.txt WA 22 ms 780 KB
21_rand19.txt WA 22 ms 892 KB
21_rand20.txt WA 22 ms 792 KB
21_rand21.txt WA 23 ms 780 KB
21_rand22.txt AC 44 ms 740 KB
21_rand23.txt AC 21 ms 788 KB
21_rand24.txt AC 24 ms 772 KB
31_rand00.txt WA 42 ms 736 KB
31_rand01.txt WA 22 ms 788 KB
31_rand02.txt WA 22 ms 736 KB
31_rand03.txt WA 24 ms 780 KB
31_rand04.txt WA 22 ms 788 KB
31_rand05.txt WA 22 ms 780 KB
31_rand06.txt WA 21 ms 788 KB
31_rand07.txt WA 21 ms 748 KB
31_rand08.txt WA 22 ms 760 KB
31_rand09.txt WA 25 ms 764 KB
31_rand10.txt WA 22 ms 760 KB
31_rand11.txt WA 23 ms 768 KB
31_rand12.txt WA 26 ms 744 KB
31_rand13.txt WA 25 ms 776 KB
31_rand14.txt WA 22 ms 684 KB
31_rand15.txt AC 26 ms 788 KB
31_rand16.txt WA 20 ms 760 KB
31_rand17.txt WA 23 ms 780 KB
31_rand18.txt WA 21 ms 768 KB
31_rand19.txt WA 23 ms 784 KB
31_rand20.txt WA 22 ms 744 KB
31_rand21.txt WA 21 ms 784 KB
31_rand22.txt WA 21 ms 784 KB
31_rand23.txt WA 21 ms 788 KB
31_rand24.txt WA 23 ms 776 KB
41_rand00.txt WA 36 ms 768 KB
41_rand01.txt AC 23 ms 780 KB
41_rand02.txt WA 23 ms 736 KB
41_rand03.txt WA 42 ms 740 KB
41_rand04.txt WA 22 ms 788 KB
41_rand05.txt WA 22 ms 784 KB
41_rand06.txt WA 21 ms 784 KB
41_rand07.txt WA 23 ms 804 KB
41_rand08.txt WA 22 ms 788 KB
41_rand09.txt WA 22 ms 788 KB
41_rand10.txt WA 22 ms 772 KB
41_rand11.txt WA 22 ms 756 KB
41_rand12.txt WA 21 ms 796 KB
41_rand13.txt WA 21 ms 788 KB
41_rand14.txt WA 39 ms 780 KB
41_rand15.txt WA 20 ms 784 KB
41_rand16.txt WA 42 ms 764 KB
41_rand17.txt WA 20 ms 784 KB
41_rand18.txt WA 22 ms 784 KB
41_rand19.txt WA 49 ms 744 KB
41_rand20.txt WA 20 ms 788 KB
41_rand21.txt WA 21 ms 784 KB
41_rand22.txt WA 22 ms 780 KB
41_rand23.txt WA 21 ms 784 KB
41_rand24.txt WA 24 ms 772 KB