#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'; } |
English