View difference between Paste ID: Wg837WVq and 27JWdxLA
SHOW: | | - or go back to the newest paste.
1
#include <iostream>
2
#include <cstdio>
3
#include <cstdlib>
4
#include <vector>
5
#include <cmath>
6-
#include <set>
6+
7-
#include <fstream>
7+
8
#include <iterator>
9
#include <iomanip>
10-
#include <algorithm>
10+
11-
#include <map>
11+
12-
#include <queue>
12+
13
#define cbr(x) ((x)*(x)*(x))
14
#define rep(c, i, n) for((i)=(c); (i)<(n); (i)++)
15-
#include <bitset>
15+
struct pt{long long x,y;};
16-
#include <unordered_set>
16+
double vecmul(pt a, pt b){ /*Векторное умножение А*В*/ return (a.x*b.y - b.x*a.y); } //скалярное умножение a*b = |a|*|b|*cos(a,b)
17-
#include <unordered_map>
17+
18
double dist(double ax, double ay, double bx, double by) { return sqrt(sqr(ax - bx) + sqr(ay - by)); }
19
20
//DBG
21
template<typename T, typename T2>void printarr(T  a[], T2 sz, T2 beg = 0) { for (T2 i = beg; i<sz; i++) cout << a[i] << " "; cout << endl; }
22-
//#define max(a, b) (((a)<(b))? (b):(a))
22+
23-
//#define min(a, b) (((a)<(b))? (a):(b))
23+
24-
#define all(a) a.begin(), a.end()
24+
25
26-
#define _sp system("pause");
26+
27-
#define _ln cout << "------------------------------------------------\n";
27+
28-
#define FI(a, n) for(int i=a;i<n;i++)
28+
29-
#define FJ(a, n) for(int j=a;j<n;j++)
29+
30-
#define REP(a, b, c) for(int (c) = (a); (c) < (b); (c)++)
30+
31-
#define rep(a, b, c) for(int (c) = (a); (c) < (b); (c)++)
31+
32-
#define per(b, a, c) for(int (c) = (b); (c) >= (a); (c)--)
32+
33
#define eps   1e-14
34
#define mod   1000000007
35
#define ll long long
36-
#define pii pair<int, int>
36+
37-
#define pll pair<ll, ll>
37+
38-
#define mp(a, b) make_pair((a), (b))
38+
39-
#define pb(a) push_back((a))
39+
40-
#define x first
40+
41-
#define y second
41+
42
    return 0;
43-
#define x1 sasimathx1
43+