Submission #1262852

#TimeUsernameProblemLanguageResultExecution timeMemory
1262852proofyStar triangles (IZhO11_triangle)C++20
100 / 100
629 ms26844 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long int main() { ios::sync_with_stdio(0); cin.tie(0); int n; cin >> n; vector<int> x(n), y(n); for (int i = 0; i < n; i++) cin >> x[i] >> y[i]; vector<int> all; all.reserve(2 * n); for (int u : x) all.push_back(u); for (int u : y) all.push_back(u); sort(all.begin(), all.end()); all.erase(unique(all.begin(), all.end()), all.end()); for (int& u : x) u = lower_bound(all.begin(), all.end(), u) - all.begin(); for (int& u : y) u = lower_bound(all.begin(), all.end(), u) - all.begin(); map<int, int> Xs, Ys; map<pair<int, int>, int> freq; for (int i = 0; i < n; i++) { Xs[x[i]] += 1; Ys[y[i]] += 1; freq[make_pair(x[i], y[i])] += 1; } ll ans = 0; for (int i = 0; i < n; i++) { int freq_me = freq[make_pair(x[i], y[i])]; ans += (Xs[x[i]] - freq_me) * 1LL * (Ys[y[i]] - freq_me); } cout << ans << "\n"; }
#Verdict Execution timeMemoryGrader output
Fetching results...