CodeForces 650A Watchmen
两种距离相等,必然是在一条竖直线上或者一条水平线上。重复的再减一下即可。
#include <iostream> #include <cstdio> #include <cstdlib> #include <cstring> #include <vector> #include <queue> #include <set> #include <map> #include <string> #include <cmath> #include <algorithm> #include <ctime> #include <stack> using namespace std; typedef long long LL; const int maxn=2e5+9; const int inf=1e9+9;struct II {LL x,y; }num[maxn];int cmp1(II a,II b); int cmp2(II a,II b); int cmp3(II a,II b);int main() {//freopen("in.txt","r",stdin);//freopen("out.txt","w",stdout);int n;scanf("%d",&n);for(int i=1;i<=n;i++){scanf("%I64d%I64d",&num[i].x,&num[i].y);}sort(num+1,num+1+n,cmp1);LL ans=0;LL tmp=1;for(int i=2;i<=n;i++){if(num[i].x==num[i-1].x)tmp++;else{ans+=tmp*(tmp-1)/2;tmp=1;}}ans+=tmp*(tmp-1)/2;sort(num+1,num+1+n,cmp2);tmp=1;for(int i=2;i<=n;i++){if(num[i].y==num[i-1].y)tmp++;else{ans+=tmp*(tmp-1)/2;tmp=1;}}ans+=tmp*(tmp-1)/2;sort(num+1,num+1+n,cmp3);LL nn=1;for(int i=2;i<=n;i++){if(num[i].x==num[i-1].x && num[i].y==num[i-1].y)nn++;else{ans-=(nn)*(nn-1)/2;nn=1;}}ans-=(nn)*(nn-1)/2;printf("%I64d\n",ans);return 0; }int cmp3(II a,II b) {if(a.x==b.x)return a.y<b.y;return a.x<b.x; }int cmp2(II a,II b) {return a.y<b.y; }int cmp1(II a,II b) {return a.x<b.x; }
转载于:https://www.cnblogs.com/zufezzt/p/5252713.html
CodeForces 650A Watchmen相关推荐
- mysql在linux下备份还原,Linux下MySQL的备份与还原
Linux下MySQL的备份与还原 1. 备份 [root@localhost ~]# cd /var/lib/mysql (进入到MySQL库目录,根据自己的MySQL的安装情况调整目录) [roo ...
- Codeforces数据结构(水题)小结
最近在使用codeblock,所以就先刷一些水题上上手 使用codeblock遇到的问题 1.无法进行编译-------从setting中的编译器设置中配置编译器 2.建立cpp后无法调试------ ...
- CF1400:1490E、448B、1462FD、650A、1380B、1451C
1490E. Accidental Victory(二分) 题意: 一共n个人参加比赛,每个人有一个强壮值. 每次随机挑选两人pk,赢的人获得另一人的强壮值.如果强壮值相同,随机赢. 问,最终有哪些人 ...
- CodeForces 375D Tree and Queries
传送门:https://codeforces.com/problemset/problem/375/D 题意: 给你一颗有根树,树上每个节点都有其对应的颜色,有m次询问,每次问你以点v为父节点的子树内 ...
- 「日常训练」Bad Luck Island(Codeforces Round 301 Div.2 D)
题意与分析(CodeForces 540D) 是一道概率dp题. 不过我没把它当dp做... 我就是凭着概率的直觉写的,还好这题不算难. 这题的重点在于考虑概率:他们喜相逢的概率是多少?考虑超几何分布 ...
- 【codeforces 812C】Sagheer and Nubian Market
[题目链接]:http://codeforces.com/contest/812/problem/C [题意] 给你n个物品; 你可以选购k个物品;则 每个物品有一个基础价值; 然后还有一个附加价值; ...
- CodeForces 获得数据
针对程序的输出可以看见 CodeForces :当输入.输出超过一定字符,会隐藏内容 所以:分若干个程序进行输入数据的获取 1. 1 for (i=1;i<=q;i++) 2 { 3 scanf ...
- codeforces水题100道 第二十七题 Codeforces Round #172 (Div. 2) A. Word Capitalization (strings)...
题目链接:http://www.codeforces.com/problemset/problem/281/A 题意:将一个英文字母的首字母变成大写,然后输出. C++代码: #include < ...
- CodeForces 595A
题目链接: http://codeforces.com/problemset/problem/595/A 题意: 一栋楼,有n层,每层有m户,每户有2个窗户,问这栋楼还有多少户没有睡觉(只要一个窗户灯 ...
- codeforces A. Jeff and Digits 解题报告
题目链接:http://codeforces.com/problemset/problem/352/A 题目意思:给定一个只有0或5组成的序列,你要重新编排这个序列(当然你可以不取尽这些数字),使得这 ...
最新文章
- 第02章_MySQL环境搭建
- 常考数据结构与算法:实现二叉树先序,中序和后序遍历
- 4.8 代价函数-深度学习第四课《卷积神经网络》-Stanford吴恩达教授
- 物料主数据(SAP屠夫)
- python算方差_python计算均值方差
- sql server 数据库改名
- HTML 父窗口打开子窗口,并从子窗口返回值
- linux多个svn仓库权限管理,svn建立仓库而且设置用户的权限
- NSData的同步下载与NSConnection的同步下载
- [LeetCode] Binary Tree Level Order Traversal
- Android开发项目计划书
- 什么是港美股窝轮(Warrants)?
- 如何让WebStorm正常显示出中文提示,使得中文能够正常输入,请看这里
- 2014 usnews 计算机科学 排名 天道留学,2014年美国USNews大学公立大学排名情况
- Ubuntu上安装R和rstudio-server
- 带你彻底击溃跳表原理及其Golang实现!(内含图解)
- 2018展望期许,2017个人总结
- Kubernetes K8S之存储PV-PVC详解
- 使用evo工具评估ORB_SLAM2在TUM数据集上的运行轨迹
- linux composer root,Composer在Windows和Linux的安装和使用