답안 #337567

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
337567 2020-12-21T06:04:00 Z amunduzbaev 별들과 삼각형 (IZhO11_triangle) C++14
100 / 100
621 ms 12396 KB
/** made by amunduzbaev **/
#include <bits/stdc++.h>
using namespace std;
#define ff first
#define ss second
#define pb push_back
#define mp make_pair
#define ub upper_bound
#define lb lower_bound
#define ll long long 
#define ld long double 
#define pii pair<int, int>
#define pll pair<ll, ll>
#define sz(x) (int)x.size()
#define all(x) x.begin(), x.end()
#define rall(x) x.rbegin(),x.rend()
#define fastios ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define vll vector<ll>
#define vii vector<int>
const int N = 1e5+5;
const int mod = 1e9+7;
const ll inf = 1e18;
const ld Pi = acos(-1);
ll n, m, k, ans;

void solve(){
	fastios
	cin>>n;
	map<ll, ll> x, y;
	map<ll, vll> xx, yy;
	for(int i=0;i<n;i++){
		ll a, b;
		cin>>a>>b;
		y[b]++;
		x[a]++;
		xx[a].pb(b);
	}
	
	for(auto tmp : x){
		ll cur = tmp.ff, bb = 0;
		for(auto ttmp : xx[cur]){
			//cout<<cur<<" "<<ttmp<<" "<<cnt<<" "<<bb<<" "<<ans<<"\n";
			ans += bb;
			bb += y[ttmp]-1;
		}
		cur = tmp.ff, bb = 0;
		for(auto ttmp = xx[cur].rbegin(); ttmp != xx[cur].rend(); ttmp++){
			ans += bb;
			bb += y[*ttmp]-1;
		}
	}
	
	cout<<ans<<"\n";
	return;
}

/*

4
0 0
2 0
0 1
2 1

9
0 0
3 3
0 3
3 0
-3 0
0 -3
-3 -3
3 -3
-3 3


6 0

8
2 3
4 5
5 6
8 3
5 3
2 6
5 5
4 6

12
0 0
0 1
0 2
0 3
1 0
2 0
3 0
3 1
3 2
3 3
1 3
2 3

*/

int main(){
	fastios
	
	int t = 1;
	if(t) solve();
	else {
		cin>>t;
		while (t--) solve();
	}
	return 0;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 364 KB Output is correct
2 Correct 0 ms 364 KB Output is correct
3 Correct 1 ms 364 KB Output is correct
4 Correct 0 ms 364 KB Output is correct
5 Correct 1 ms 364 KB Output is correct
6 Correct 1 ms 364 KB Output is correct
7 Correct 1 ms 364 KB Output is correct
8 Correct 1 ms 364 KB Output is correct
9 Correct 1 ms 364 KB Output is correct
10 Correct 1 ms 492 KB Output is correct
11 Correct 1 ms 492 KB Output is correct
12 Correct 9 ms 1260 KB Output is correct
13 Correct 10 ms 1772 KB Output is correct
14 Correct 17 ms 2540 KB Output is correct
15 Correct 207 ms 8684 KB Output is correct
16 Correct 232 ms 9068 KB Output is correct
17 Correct 200 ms 8684 KB Output is correct
18 Correct 205 ms 8684 KB Output is correct
19 Correct 554 ms 11884 KB Output is correct
20 Correct 400 ms 10604 KB Output is correct
21 Correct 593 ms 12396 KB Output is correct
22 Correct 621 ms 12268 KB Output is correct