Art Gallery Selection 60/100

Ciao a tutti, stavo provando a risolvere Art Gallery Selection ma per 3 subtasks non riesco a prendere 100/100. Questo è il codice utilizzato:

#include <bits/stdc++.h>
using namespace std;

int Y, N, i;
struct punto{
	long long sum = 0, N = 0;
};

unordered_map<int, punto> X;


int main(void) {
	scanf("%d", &N);

	for(i = 0; i < N; ++i){
		int posX;
	 	scanf("%d %d", &posX, &Y);
		X[Y].sum += posX;
		++X[Y].N;
	}
	double media = (double)X[Y].sum / X[Y].N;

	for(auto i : X){
		if(media != (double)i.second.sum / i.second.N){
			printf("NO");
			return 0;
		}
	}
	printf("YES");


	return 0;
}

Le subtasks che non passo sono: 002, 004, 008. Qualcuno riesce ad aiutarmi?

Ho trovato la soluzione entrando anche in classifica, Grazie lo stesso!