Submission #1091711

#TimeUsernameProblemLanguageResultExecution timeMemory
1091711KluydQStar triangles (IZhO11_triangle)C++17
0 / 100
0 ms348 KiB
#include <bits/stdc++.h> #define FOR( i, x, n, d ) for( int i = x; i <= n; i += d ) using namespace std; const int N = 1e6; int a[N], b[N], x[N], y[N], a2[N], b2[N], tim; long long ans = 0; int main() { // freopen("triangle.in", "r", stdin); // freopen("triangle.out", "w", stdout); int n; cin >> n; set <int> st; map <int, int> mp; FOR( i, 1, n, 1 ) cin >> x[i] >> y[i], st.insert( x[i] ), st.insert( y[i] ); for( auto i : st ) mp[i] = ++ tim; FOR( i, 1, n, 1 ) { x[i] = mp[x[i]], y[i] = mp[y[i]]; b[y[i]] ++; a2[x[i]] ++; } FOR( i, 1, n, 1 ) { ans += a[x[i]] * 1ll * ( b[y[i]] - 1 ); a[x[i]] += ( b[y[i]] - 1 ); ans += b2[y[i]] * 1ll * ( a2[x[i]] - 1 ); b2[y[i]] += ( a2[x[i]] - 1 ); } cout << ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...