Submission #1219515

#TimeUsernameProblemLanguageResultExecution timeMemory
1219515notarat40Star triangles (IZhO11_triangle)C++20
100 / 100
361 ms12708 KiB
#include <bits/stdc++.h> #define ll long long #define pb(a) push_back(a) #define in(a) insert(a) #define lldef ll N=0,M=0,K=0,ans=0,sum=0; string s=""; #define loop(valuename,startvalue,endvalue,changevalue) for(ll valuename=startvalue; valuename<endvalue; valuename+=changevalue) #define rloop(valuename,startvalue,endvalue,changevalue) for(ll valuename=startvalue-1; valuename>=endvalue; valuename-=changevalue) #define mk make_pair #define begin begin() #define end end() #define db long double #define ff first #define ss second using namespace std; const int SIZE=1e5+69; const int MOD=1e9+7; /* vector<vector<ll>>ADJ(SIZE); vector<ll>vis(SIZE,0); void dfs(ll vertex){ vis[vertex]=true; for(auto it:ADJ[vertex]){ if(!vis[it]){ dfs(it); } } } */ bool Ptwo(ll N){ return (~N&N-1)==N-1; } ll l=0; inline void test_case(){ lldef; cin>>N; map<ll,ll>mpx,mpy; vector<pair<ll,ll>>V; loop(i,0,N,1){ ll x,y; cin>>x>>y; V.push_back({x,y}); mpx[x]++; mpy[y]++; } loop(i,0,N,1){ ll x1=V[i].ff; ll y1=V[i].ss; //cout<<x1<<" "<<y1<<" "<<mpx[x1]<<" "<<mpy[y1]<<endl; ans+=(mpx[x1]-1)*(mpy[y1]-1); } cout<<ans<<endl; } int main(){ ll t=1; //cin>>t; while(t--) {test_case(); l++;} }
#Verdict Execution timeMemoryGrader output
Fetching results...