#include <bits/stdc++.h> #define st first #define nd second #define pb push_back #define BOOST ios_base::sync_with_stdio(0); cout.tie(0); cin.tie(0); #define PI 3.14159265359 using namespace std; typedef long long ll; constexpr ll MOD = 1000000007, hot = 29; constexpr ll FOX = 1234567891, cute = 1007; constexpr ll MEGAN = 1000000009, liv = 107; constexpr int MXN = 500000+7 + 10, CZAPA = (1<<20), INF = 1000000000; int tab[MXN][3]; unordered_map<int, int> M[2]; unordered_map<int, int>::iterator it; int main(){ BOOST; int n; cin>> n; for(int i=0; i<n; i++){ cin>> tab[i][0] >> tab[i][1] >> tab[i][2]; tab[i][0]--; M[tab[i][0]][tab[i][1] - tab[i][2]]++; } int ans = 0; for(auto i : M[0]){ int a = i.st, b = i.nd; it = M[1].find(a); if(it == M[1].end()) continue; int d = (it->second); ans += min(b, d); } cout<< ans; return 0; }
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 | #include <bits/stdc++.h> #define st first #define nd second #define pb push_back #define BOOST ios_base::sync_with_stdio(0); cout.tie(0); cin.tie(0); #define PI 3.14159265359 using namespace std; typedef long long ll; constexpr ll MOD = 1000000007, hot = 29; constexpr ll FOX = 1234567891, cute = 1007; constexpr ll MEGAN = 1000000009, liv = 107; constexpr int MXN = 500000+7 + 10, CZAPA = (1<<20), INF = 1000000000; int tab[MXN][3]; unordered_map<int, int> M[2]; unordered_map<int, int>::iterator it; int main(){ BOOST; int n; cin>> n; for(int i=0; i<n; i++){ cin>> tab[i][0] >> tab[i][1] >> tab[i][2]; tab[i][0]--; M[tab[i][0]][tab[i][1] - tab[i][2]]++; } int ans = 0; for(auto i : M[0]){ int a = i.st, b = i.nd; it = M[1].find(a); if(it == M[1].end()) continue; int d = (it->second); ans += min(b, d); } cout<< ans; return 0; } |