登录建设部网站,广告免费推广网,婚纱摄影网站的设计与实现论文,网站开发一般要哪些开发工具分析#xff1a; 直接暴力就会tle#xff0c;不知道怎么下手#xff0c;可以统计八个方向一条线上的所有坐标#xff0c;这些坐标一定可以放在一起满足#xff0c;分析都有哪些线#xff0c;当横坐标相同时会有竖着的一条线都可以#xff0c;也就是x c#xff0c;当纵… 分析 直接暴力就会tle不知道怎么下手可以统计八个方向一条线上的所有坐标这些坐标一定可以放在一起满足分析都有哪些线当横坐标相同时会有竖着的一条线都可以也就是x c当纵坐标相同时会有横着的一条线 也就是y c再看两个对角线首先正对角线的直线方程是y x c也就是满足x - y 相同的所有点都可以满足条件再看反对角线也就是y -x c也就是x y 相同的所有点都可以满足。
代码:
#include bits/stdc.husing namespace std;
using ll long long;int main() {ios::sync_with_stdio(false);cin.tie(nullptr);int T;cin T;while(T --) {int n;cin n;mapll, ll r, c, d, ud;for(int i 0; i n; i ) {ll x, y;cin x y;r[x] ;c[y] ;d[x - y] ;ud[x y] ;}ll ans 0;for(auto x: r) ans x.second * (x.second - 1);for(auto x: c) ans x.second * (x.second - 1);for(auto x: d) ans x.second * (x.second - 1);for(auto x: ud) ans x.second * (x.second - 1);cout ans \n;}
}