Submission #996200


Source Code Expand

#include <map>
#include <vector>
#include <iostream>
#pragma warning(disable : 4996)
using namespace std;
int n, m, x;
int main() {
	scanf("%d%d", &n, &m);
	vector<vector<int> > f(m);
	vector<int> c(m);
	for (int i = 0; i < n; i++) {
		scanf("%d", &x);
		f[x % m].push_back(x);
		c[x % m]++;
	}
	for (int i = 0; i < m; i++) {
		map<int, int> e;
		for (int j : f[i]) e[j]++;
		vector<int> g;
		for (pair<int, int> j : e) g.push_back(j.second);
		f[i] = g;
	}
	int ret = 0;
	for (int i = 0; i <= m / 2; i++) {
		int p = (m - i) % m;
		if (i == p) {
			f[i].clear(); ret += c[i] / 2; c[i] = 0;
		}
		else {
			if (c[i] < c[p]) swap(c[i], c[p]);
			f[p].clear(); ret += c[p];
			while (c[p]--) {
				bool flag = false;
				for (int j = 0; j < f[i].size() && !flag; j++) {
					if (f[i][j] % 2 == 1) {
						f[i][j]--;
						flag = true;
					}
				}
				if (!flag) {
					for (int j = 0; j < f[i].size(); j++) {
						if (f[i][j] != 0) {
							f[i][j]--; break;
						}
					}
				}
			}
			for (int j = 0; j < f[i].size(); j++) ret += f[i][j] / 2;
			c[p] = 0;
			f[i].clear(); c[i] = 0;
		}
	}
	cout << ret << endl;
	return 0;
}

Submission Info

Submission Time
Task D - Pair Cards
User square1001
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1181 Byte
Status WA
Exec Time 535 ms
Memory 6144 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:8:23: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d%d", &n, &m);
                       ^
./Main.cpp:12:18: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d", &x);
                  ^

Judge Result

Set Name sample all
Score / Max Score 0 / 0 0 / 700
Status
AC × 2
AC × 19
WA × 13
Set Name Test Cases
sample sample-01.txt, sample-02.txt
all sample-01.txt, sample-02.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt, 01-22.txt, 01-23.txt, 01-24.txt, 01-25.txt, 01-26.txt, 01-27.txt, 01-28.txt, 01-29.txt, 01-30.txt
Case Name Status Exec Time Memory
01-01.txt AC 3 ms 256 KB
01-02.txt AC 42 ms 4088 KB
01-03.txt AC 37 ms 2428 KB
01-04.txt WA 535 ms 1912 KB
01-05.txt AC 315 ms 1536 KB
01-06.txt WA 213 ms 1152 KB
01-07.txt WA 106 ms 768 KB
01-08.txt WA 28 ms 896 KB
01-09.txt WA 26 ms 896 KB
01-10.txt WA 30 ms 2560 KB
01-11.txt WA 34 ms 4992 KB
01-12.txt AC 13 ms 896 KB
01-13.txt AC 15 ms 2044 KB
01-14.txt AC 45 ms 3404 KB
01-15.txt AC 428 ms 1936 KB
01-16.txt AC 78 ms 1024 KB
01-17.txt AC 32 ms 768 KB
01-18.txt AC 30 ms 1152 KB
01-19.txt AC 29 ms 1280 KB
01-20.txt AC 36 ms 6144 KB
01-21.txt AC 21 ms 768 KB
01-22.txt WA 40 ms 768 KB
01-23.txt WA 21 ms 896 KB
01-24.txt WA 16 ms 896 KB
01-25.txt WA 19 ms 1792 KB
01-26.txt WA 23 ms 3712 KB
01-27.txt AC 21 ms 4480 KB
01-28.txt WA 8 ms 3072 KB
01-29.txt AC 5 ms 1408 KB
01-30.txt AC 7 ms 2944 KB
sample-01.txt AC 3 ms 256 KB
sample-02.txt AC 3 ms 256 KB