博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Gym - 100920H 2010-2011 OpenCup IX Onsite, II Yandex Summer School H.Squares 暴力
阅读量:5955 次
发布时间:2019-06-19

本文共 821 字,大约阅读时间需要 2 分钟。

题意:有10w个点,问你选4个点,能组成平行于坐标轴的正方形有多少个

题解:不知道正解,我的做法就是暴力的基础上优化一点,每次按x排好序,每次枚举的2个点都是x相同的

        这样算是个优化?但并不能过,因为可能一列全是x相同的,于是又判了一次对于这个点,x相同的多还是y相同的多

        具体实现用了个set没想到就过了

1 #include
2 using namespace std; 3 #define N 2000006 4 set
x[N],y[N]; 5 int n,a[N],b[N],ans=0; 6 int main() 7 { 8 scanf("%d",&n); 9 for (int i=1;i<=n;i++)10 {11 scanf("%d%d",&a[i],&b[i]);12 a[i]+=1e6;b[i]+=1e6;13 x[a[i]].insert(b[i]);14 y[b[i]].insert(a[i]);15 }16 for (int i=1;i<=n;i++)17 {18 if (x[a[i]].size()
::iterator it=x[a[i]].upper_bound(b[i]);21 while (it!=x[a[i]].end())22 {23 int l=*it-b[i];24 if (a[i]+l
::iterator it=y[b[i]].upper_bound(a[i]);31 while (it!=y[b[i]].end())32 {33 int l=*it-a[i];34 if (b[i]+l

 

转载于:https://www.cnblogs.com/qywhy/p/10641242.html

你可能感兴趣的文章
HTTP首部(2)
查看>>
LA 5031 图询问
查看>>
django-分页器
查看>>
idea超炫的自定义模板
查看>>
sql server根据表中数据生成insert语句
查看>>
S3上备份的json文件转存成parquet文件
查看>>
oc的分类category
查看>>
网站前面的图标
查看>>
关于servlet
查看>>
nio buffer
查看>>
Linux2.6.32内核笔记(5)在应用程序中移植使用内核链表【转】
查看>>
CSS3 Flexbox 弹性布局
查看>>
(八)Hibernate的一对多关联关系
查看>>
Zookeeper与Kafka集群搭建
查看>>
关于【AC自动姬】的学习
查看>>
SQL Server 触发器 详细讲解
查看>>
第19章 可空值类型
查看>>
UWP Composition API - GroupListView(二)
查看>>
redis's usage
查看>>
openresty的安装和使用
查看>>