#include <unordered_map> #include <iostream> using namespace std; int main() { ios_base::sync_with_stdio(0); cin.tie(0); unordered_map<int, pair<int, int>> values; int n, m, a, b, c; cin >> n; m = n; unordered_map<int, pair<int, int>>::iterator finder; int score = 0, buff; while (m--) { cin >> a; cin >> b; cin >> c; buff = b - c; finder = values.find(buff); if (finder != values.end()) { if (a == 1) { finder->second.first++; if (finder->second.first > finder->second.second) score++; } else { finder->second.second++; if (finder->second.second > finder->second.first) score++; } } else { if (a == 1) { values.insert({ buff, pair<int, int>(1, 0) }); score++; } else { values.insert({ buff, pair<int, int>(0, 1) }); score++; } } } cout << n - score << '\n'; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | #include <unordered_map> #include <iostream> using namespace std; int main() { ios_base::sync_with_stdio(0); cin.tie(0); unordered_map<int, pair<int, int>> values; int n, m, a, b, c; cin >> n; m = n; unordered_map<int, pair<int, int>>::iterator finder; int score = 0, buff; while (m--) { cin >> a; cin >> b; cin >> c; buff = b - c; finder = values.find(buff); if (finder != values.end()) { if (a == 1) { finder->second.first++; if (finder->second.first > finder->second.second) score++; } else { finder->second.second++; if (finder->second.second > finder->second.first) score++; } } else { if (a == 1) { values.insert({ buff, pair<int, int>(1, 0) }); score++; } else { values.insert({ buff, pair<int, int>(0, 1) }); score++; } } } cout << n - score << '\n'; } |