結果

問題 No.190 Dry Wet Moist
ユーザー 古寺いろは
提出日時 2015-04-22 00:31:58
言語 C++11
(gcc 4.8.5)
結果
AC  
実行時間 236 ms
コード長 784 Byte
コンパイル時間 1,486 ms
使用メモリ 16,072 KB
最終ジャッジ日時 2019-03-17 00:34:55

テストケース

テストケース表示
入力 結果 実行時間
使用メモリ
00_sample_01.in AC 4 ms
1,504 KB
00_sample_02.in AC 3 ms
1,504 KB
10_small_01.in AC 4 ms
1,520 KB
10_small_02.in AC 4 ms
1,524 KB
10_small_03.in AC 3 ms
1,524 KB
10_small_04.in AC 4 ms
1,524 KB
10_small_05.in AC 4 ms
1,524 KB
20_small_01.in AC 4 ms
1,620 KB
20_small_02.in AC 4 ms
1,596 KB
20_small_03.in AC 4 ms
1,568 KB
20_small_04.in AC 3 ms
1,564 KB
20_small_05.in AC 5 ms
1,572 KB
30_large_01.in AC 96 ms
7,096 KB
30_large_02.in AC 116 ms
8,156 KB
30_large_03.in AC 94 ms
7,096 KB
30_large_04.in AC 129 ms
8,680 KB
30_large_05.in AC 164 ms
10,004 KB
30_large_06.in AC 23 ms
2,876 KB
30_large_07.in AC 76 ms
6,040 KB
30_large_08.in AC 158 ms
9,740 KB
30_large_09.in AC 112 ms
7,892 KB
30_large_10.in AC 15 ms
2,520 KB
40_corner_01.in AC 228 ms
14,224 KB
40_corner_02.in AC 236 ms
16,072 KB
40_corner_03.in AC 146 ms
6,308 KB
40_corner_04.in AC 4 ms
1,500 KB
40_corner_05.in AC 3 ms
1,504 KB
system_test1.txt AC 130 ms
9,472 KB
system_test2.txt AC 59 ms
5,816 KB
system_test3.txt AC 76 ms
6,832 KB
テストケース一括ダウンロード

ソースコード

diff #
#include "bits/stdc++.h"
using namespace std;

int main() {
	int N;
	cin >> N;
	N *= 2;
	vector<int> A(N);
	for (int i = 0; i < N; i++)
	{
		cin >> A[i];
	}
	sort(A.begin(), A.end());

	int ans[3]{0, 0, 0};
	int j = N - 1;
	for (int i = 0; i < N; i++)
	{
		while (i < j && A[i] + A[j] >= 0) j--;
		if (i < j){
			ans[0]++; j--;
		}
	}

	j = N - 1;
	for (int i = 0; i < N; i++)
	{
		while (i < j && A[N - 1 - i] + A[N - 1 - j] <= 0) j--;
		if (i < j){
			ans[1]++; j--;
		}
	}

	map<int, int> m;
	set<int> s;
	for (int i = 0; i < N; i++)
	{
		m[A[i]] ++;
		if (A[i] >= 0) s.insert(A[i]);
	}

	for (auto i: s)
	{
		if (i < 0) continue;
		if (i == 0){
			ans[2] += m[i] / 2;
		}
		else{
			ans[2] += min(m[i], m[-i]);
		}
	}

	cout << ans[0] << " " << ans[1] << " " << ans[2] << endl;
}
0