Submission #4730983


Source Code Expand

#include<stdio.h>
#include<stdlib.h>

int Min(int a, int b) { if (a < b) { return a; }return b; }

typedef struct {
	int i;
	int num;
}set;

signed compair(const void *a, const void *b) {
	return ((set *)b)->num - ((set *)a)->num;
}

int main() {
	int i, N;
	int z = 100002;
	int ans = 0, tmpa, tmpb;
	scanf("%d", &N);
	int *V = (int *)malloc(sizeof(int)*N);
	set *A = (set *)malloc(sizeof(set)*z);
	set *B = (set *)malloc(sizeof(set)*z);
	for (i = 0; i < z; i++) {
		A[i].num = 0;
		B[i].num = 0;
		A[i].i = i;
		B[i].i = i;
	}
	for (int i = 0; i < N; i++) {
		scanf("%d", &V[i]);
		if (i % 2 == 0) {
			A[V[i]].num++;
		}
		else {
			B[V[i]].num++;
		}
	}
	qsort(A, z, sizeof(set), compair);
	qsort(B, z, sizeof(set), compair);
	if (A[0].i != B[0].i && A[1].num==0 && B[1].num == 0)
	{
		ans = 0;
	}
	else if (A[0].i != B[0].i)
	{
		ans = abs(N / 2 - A[0].num) + abs(N / 2 - B[0].num);
	}
	else if (A[0].i == B[0].i)
	{
		tmpa = abs(N / 2 - A[0].num) + abs(N / 2 - B[1].num);
		tmpb = abs(N / 2 - B[0].num) + abs(N / 2 - A[1].num);
		ans = Min(tmpa, tmpb);
	}

	printf("%d\n", ans);
	return 0;
}

Submission Info

Submission Time
Task C - /\/\/\/
User chonerie
Language C (GCC 5.4.1)
Score 300
Code Size 1153 Byte
Status AC
Exec Time 23 ms
Memory 2736 KB

Compile Error

./Main.c: In function ‘main’:
./Main.c:19:2: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d", &N);
  ^
./Main.c:30:3: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d", &V[i]);
   ^

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 300 / 300
Status
AC × 3
AC × 20
Set Name Test Cases
Sample sample1_3132.txt, sample2_iw.txt, sample3_1111.txt
All ababa_0.txt, ababa_1.txt, eq_0.txt, eq_1.txt, rnd_17.txt, sample1_3132.txt, sample2_iw.txt, sample3_1111.txt, top2_0.txt, top2_1.txt, top2_2.txt, top2_3.txt, top2modoki_0.txt, top2modoki_1.txt, top2modoki_2.txt, top2modoki_3.txt, vary_1.txt, vary_2.txt, vary_3.txt, zoro_0.txt
Case Name Status Exec Time Memory
ababa_0.txt AC 21 ms 2684 KB
ababa_1.txt AC 21 ms 2676 KB
eq_0.txt AC 20 ms 2556 KB
eq_1.txt AC 19 ms 2556 KB
rnd_17.txt AC 19 ms 2556 KB
sample1_3132.txt AC 9 ms 2172 KB
sample2_iw.txt AC 9 ms 2172 KB
sample3_1111.txt AC 9 ms 2172 KB
top2_0.txt AC 19 ms 2556 KB
top2_1.txt AC 19 ms 2556 KB
top2_2.txt AC 19 ms 2556 KB
top2_3.txt AC 20 ms 2556 KB
top2modoki_0.txt AC 19 ms 2556 KB
top2modoki_1.txt AC 19 ms 2556 KB
top2modoki_2.txt AC 19 ms 2556 KB
top2modoki_3.txt AC 19 ms 2556 KB
vary_1.txt AC 23 ms 2736 KB
vary_2.txt AC 23 ms 2736 KB
vary_3.txt AC 22 ms 2684 KB
zoro_0.txt AC 9 ms 2172 KB