Submission #683364

# Submission time Handle Problem Language Result Execution time Memory
683364 2023-01-18T09:07:06 Z nifeshe Star triangles (IZhO11_triangle) C++14
100 / 100
288 ms 15580 KB
#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>

//#pragma GCC target ("avx2")
//#pragma GCC optimize ("O3")
//#pragma GCC optimize ("unroll-loops")
//#pragma comment (linker, "/STACK: 16777216")

#define f first
#define s second
#define all(x) (x).begin(), (x).end()
#define rall(x) (x).rbegin(), (x).rend()
#define sz(x) (x).size()
#define pb push_back
#define mp make_pair
#define int long long

using namespace std;
using namespace __gnu_pbds;

template <typename T> inline bool umax(T &a, const T &b) { if(a < b) { a = b; return 1; } return 0; }
template <typename T> inline bool umin(T &a, const T &b) { if(a > b) { a = b; return 1; } return 0; }
typedef long long ll;
typedef long double ld;
typedef unsigned long long ull;
template <typename T> using oset = tree<T, null_type, less <T>, rb_tree_tag, tree_order_statistics_node_update>;

const ll mod = 998244353;
const ll base = 1e6 + 5;
const ll inf = 1e18;
const int MAX = 2000;
const int lg = 20;

random_device rd;
mt19937 gen(rd());
uniform_int_distribution<ll> dis(1, inf);

void solve() {
    int n;
    cin >> n;
    vector<int> x(n), y(n);
    map<int, int> cntx, cnty;
    for(int i = 0; i < n; i++) {
        cin >> x[i] >> y[i];
        cntx[x[i]]++; cnty[y[i]]++;
    }
    int ans = 0;
    for(int i = 0; i < n; i++) {
        ans += (cntx[x[i]] - 1) * (cnty[y[i]] - 1);
    }
    cout << ans << '\n';
}

signed main() {
    //freopen("triangles.in", "r", stdin); freopen("triangles.out", "w", stdout);
    ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
    int ttt = 1;
//    cin >> ttt;
    while(ttt--) {
        solve();
    }
    return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 212 KB Output is correct
5 Correct 0 ms 212 KB Output is correct
6 Correct 0 ms 212 KB Output is correct
7 Correct 1 ms 340 KB Output is correct
8 Correct 1 ms 340 KB Output is correct
9 Correct 1 ms 340 KB Output is correct
10 Correct 1 ms 340 KB Output is correct
11 Correct 1 ms 384 KB Output is correct
12 Correct 6 ms 1236 KB Output is correct
13 Correct 7 ms 1328 KB Output is correct
14 Correct 10 ms 1748 KB Output is correct
15 Correct 98 ms 7844 KB Output is correct
16 Correct 115 ms 8320 KB Output is correct
17 Correct 101 ms 7884 KB Output is correct
18 Correct 99 ms 7972 KB Output is correct
19 Correct 269 ms 14652 KB Output is correct
20 Correct 202 ms 11760 KB Output is correct
21 Correct 288 ms 15580 KB Output is correct
22 Correct 281 ms 15580 KB Output is correct