desenvolver uma aplicaçao em c que possibilite determinar a cardinalidade n(A1UA2UA3+...UAn) para qualquer amostra.Faça o teste para calcular a cardinalidade, ou seja, n(AUB) = n(A)+n(B) - n(A^B)
#include <stdio.h>
#include <stdbool.h>
#define MAX 100
int main() {
int n, k[MAX];
bool exists[MAX] = { false };
// Leitura da amostra
printf("Digite o tamanho da amostra: ");
scanf("%d", &n);
printf("Digite os elementos da amostra:\n");
for (int i = 0; i < n; i++) {
scanf("%d", &k[i]);
}
// Leitura dos conjuntos A1, A2, ..., An
printf("Digite o numero de conjuntos: ");
int m;
scanf("%d", &m);
for (int i = 1; i <= m; i++) {
printf("Digite o tamanho do conjunto A%d: ", i);
int size, elem;
scanf("%d", &size);
printf("Digite os elementos do conjunto A%d:\n", i);
for (int j = 0; j < size; j++) {
scanf("%d", &elem);
// Marca como existente se o elemento aparece em algum conjunto
for (int p = 0; p < n; p++) {
if (k[p] == elem) {
exists[p] = true;
}
}
}
}
// Conta quantos elementos existem na amostra
int count = 0;
for (int i = 0; i < n; i++) {
if (exists[i]) {
count++;
}
}
// Imprime a cardinalidade
printf("Cardinalidade: %d\n", count);
system("pause");
return 0;
}
não sei como fazer para calcular a cardinalidade dos conjuntos