5717 2023. 09. 09 19:51:25 kukkerman Negáló rendezés (55 pont) cpp14 Elfogadva 55/55 45ms 5104 KiB
#include <iostream>
#include <vector>
#include <algorithm>

std::vector<int> beolvas(std::istream &in) {
	size_t n;
	in >> n;

	std::vector<int> v(n);
	for (auto i = 0u; i < n; i++) {
		in >> v[i];
	}

	return v;
}

void negalo_rendezes(std::vector<int> v) {
	static constexpr int m = 1000000007;

	std::sort(v.begin(), v.end());
	const auto n = v.size();

	int db = 1;
	auto i = 0u;
	for (; i < n && v[i] == v[0]; i++) {}

	while (i < n) {
		auto j = i;
		int x = db;
		for (; j < n && v[j] == v[i]; j++) {
			x = (x + db) % m;
		}

		db = x;
		i = j;
	}

	std::cout << db << std::endl;
}

int main() {
	auto v = beolvas(std::cin);
	negalo_rendezes(std::move(v));

	return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 55/55
1 Elfogadva 0/0 3ms 1808 KiB
2 Elfogadva 0/0 45ms 2760 KiB
3 Elfogadva 2/2 2ms 2140 KiB
4 Elfogadva 2/2 2ms 2216 KiB
5 Elfogadva 2/2 2ms 2300 KiB
6 Elfogadva 2/2 3ms 2544 KiB
7 Elfogadva 3/3 3ms 2756 KiB
8 Elfogadva 2/2 3ms 2968 KiB
9 Elfogadva 3/3 3ms 2968 KiB
10 Elfogadva 3/3 39ms 3608 KiB
11 Elfogadva 3/3 43ms 3864 KiB
12 Elfogadva 3/3 37ms 3964 KiB
13 Elfogadva 3/3 35ms 4172 KiB
14 Elfogadva 3/3 41ms 4388 KiB
15 Elfogadva 3/3 41ms 4472 KiB
16 Elfogadva 3/3 43ms 4468 KiB
17 Elfogadva 3/3 41ms 4476 KiB
18 Elfogadva 3/3 43ms 4596 KiB
19 Elfogadva 3/3 43ms 4848 KiB
20 Elfogadva 3/3 41ms 5020 KiB
21 Elfogadva 3/3 39ms 4984 KiB
22 Elfogadva 3/3 39ms 5104 KiB