aboutsummaryrefslogtreecommitdiff
path: root/works/life/algorithm-experiment/5.2b.cpp
diff options
context:
space:
mode:
authorYuqian Yang <crupest@crupest.life>2025-02-12 15:55:21 +0800
committerYuqian Yang <crupest@crupest.life>2025-02-12 15:55:21 +0800
commit10eb95869601e145b1d8bc909424777c25752d51 (patch)
tree49449a4076ded9bd937a51679318edbe2a532cae /works/life/algorithm-experiment/5.2b.cpp
parent29ba3e88b1a7425fe00af0005b8a8228103aa21c (diff)
parentf8c10dd1fc55e60f35286475356e48c4f642eb63 (diff)
downloadcrupest-10eb95869601e145b1d8bc909424777c25752d51.tar.gz
crupest-10eb95869601e145b1d8bc909424777c25752d51.tar.bz2
crupest-10eb95869601e145b1d8bc909424777c25752d51.zip
import(life): IMPORT crupest/life COMPLETE.
Diffstat (limited to 'works/life/algorithm-experiment/5.2b.cpp')
-rw-r--r--works/life/algorithm-experiment/5.2b.cpp28
1 files changed, 28 insertions, 0 deletions
diff --git a/works/life/algorithm-experiment/5.2b.cpp b/works/life/algorithm-experiment/5.2b.cpp
new file mode 100644
index 0000000..d062ae0
--- /dev/null
+++ b/works/life/algorithm-experiment/5.2b.cpp
@@ -0,0 +1,28 @@
+#include <iostream>
+#include <unordered_map>
+#include <vector>
+
+int main() {
+ std::vector<long long> votes;
+
+ long long v;
+ while (std::cin >> v) {
+ votes.push_back(v);
+ }
+
+ std::unordered_map<long long, long long> counts;
+ for (auto v : votes) {
+ counts[v]++;
+ }
+
+ // Get ids with votes greater than half of the total votes.
+ long long half_votes = votes.size() / 2;
+
+ for (auto it = counts.begin(); it != counts.end(); ++it) {
+ if (it->second > half_votes) {
+ std::cout << it->first << std::endl;
+ }
+ }
+
+ return 0;
+}