acwing-2983. 玩具(计算几何)

acwing-2983. 玩具(计算几何)计算玩具收纳盒中,每个分区内的玩具数量。约翰的父母有一个烦恼—-约翰每次玩完玩具以后总会将玩具乱扔。他们为约翰准备了一个长方形的玩具收纳盒,用来放他的玩具。但是约翰非常调皮,每次都非常随意的将玩具扔进盒子中,使得所有玩具都随意混在一起,这让约翰难以找到他喜欢的玩具。对此,约翰的父母想出了一个对策,用若干个纸板将收纳盒分隔成若干个分区,这样至少扔到不同分区的玩具之间还是能分开的。下面是一个收纳盒的俯视图示例。1.jpg你的任务是,每当约翰将玩具扔进收纳盒中时,确定每个分区中有多少个玩具。输

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

计算玩具收纳盒中,每个分区内的玩具数量。

约翰的父母有一个烦恼—-约翰每次玩完玩具以后总会将玩具乱扔。

他们为约翰准备了一个长方形的玩具收纳盒,用来放他的玩具。

但是约翰非常调皮,每次都非常随意的将玩具扔进盒子中,使得所有玩具都随意混在一起,这让约翰难以找到他喜欢的玩具。

对此,约翰的父母想出了一个对策,用若干个纸板将收纳盒分隔成若干个分区,这样至少扔到不同分区的玩具之间还是能分开的。

下面是一个收纳盒的俯视图示例。

1.jpg

你的任务是,每当约翰将玩具扔进收纳盒中时,确定每个分区中有多少个玩具。

输入格式
本题包含多组测试数据。

对于每组数据,第一行包含 6 个整数 n,m,x1,y1,x2,y2,表示共有 n 个纸板,m 个玩具,收纳盒的左上角坐标为 (x1,y1),右下角坐标为 (x2,y2)。

接下来 n 行,每行包含两个整数 Ui,Li,表示第 i 个纸板的两端点坐标分别为 (Ui,y1) 和 (Li,y2)。数据保证纸板之间不相交,且按照从左至右顺序依次给出。

接下来 m 行,每行包含两个整数 Xj,Yj,表示第 j 个玩具的位置坐标。玩具的给出顺序是随机的。数据保证玩具不会恰好落在纸板上,也不会落在盒子外。

输入由包含单个 0 的一行结束。

输出格式
对于每组数据,输出 n+1 行。

n 个纸板将收纳盒划分为了 n+1 个分区,从左到右编号为 0∼n。

按照分区编号从小到大的顺序,每行输出一行信息 i: j,其中 i 表示分区编号,j 表示分区内玩具数量。

每组数据之间,用空行隔开。

数据范围
每个测试点最多包含 10 组数据。
1≤n,m≤5000,
所有坐标取值范围 [−105,105]。

输入样例:
5 6 0 10 60 0
3 1
4 3
6 8
10 10
15 30
1 5
2 1
2 8
5 5
40 10
7 9
4 10 0 10 100 0
20 20
40 40
60 60
80 80
 5 10
15 10
25 10
35 10
45 10
55 10
65 10
75 10
85 10
95 10
0
输出样例:
0: 2
1: 1
2: 1
3: 1
4: 0
5: 1

0: 2
1: 2
2: 2
3: 2
4: 2

注意
如示例所示,落在盒子边缘的玩具也算在盒子内。
题解
二分+点与直线位置关系

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/168614.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python字符串截取方法_python从后往前截取字符串

    python字符串截取方法_python从后往前截取字符串Python截取字符串使用变量[头下标:尾下标],就可以截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾。#例1:字符串截取str=’12345678’printstr[0:1]>>1 #输出str位置0开始到位置1以前的字符printstr[1:6] >>23456 #输出str位置1开始到位置6以前的字符num=18str=’0000’+str(num) #合并字符串print

    2022年9月27日
    3
  • WiFi6介绍「建议收藏」

    WiFi6介绍「建议收藏」Wi-Fi发展历程时间Wi-Fi标准传输速率工作频段其它1997年802.112Mbps改变用户接入方式,使人们从线缆解放出来1999年802.11b11Mbps2.4GHz1999年802.11a54Mbps5GHz网络中等吞吐量20Mbps2003年802.11g54Mbps2.4GHz净传输速率为24.7Mbps2009年802.11n(WIFI4)600Mbps2.4GHz&5GHz重大改进,引

    2022年7月21日
    20
  • windows安装anaconda python,pycharm[通俗易懂]

    windows安装anaconda python,pycharm[通俗易懂]windows安装anaconda python,pycharm

    2022年4月24日
    34
  • 左连接 ,右连接,内连接和全外连接的4者区别[通俗易懂]

    左连接 ,右连接,内连接和全外连接的4者区别[通俗易懂]基本定义:  leftjoin(左连接):返回包括左表中的所有记录和右表中连接字段相等的记录。  rightjoin(右连接):返回包括右表中的所有记录和左表中连接字段相等的记录。  innerjoin(等值连接或者叫内连接):只返回两个表中连接字段相等的行。  fulljoin(全外连接):返回左右表中所有的记录和左右表中连接字段相等的记录。举个例子: …

    2022年5月24日
    40
  • java的用途有哪些,被运用到哪些地方?

    java的用途有哪些,被运用到哪些地方?如果你是一个起步者或者只是刚刚开始学习Java,你或许会疑虑,Java到底是在哪里被运用的呢?除了Minecraft这款游戏以外,你没有见过用Java编写的游戏吧?桌面工具AdobeAcrobat、微软的Office办公软件,他们都不是用Java编写,以至于连我们电脑所应用的操作系统(Linux和Windows)都不是,那么人们如何运用Java的呢?现实世界中到底有没有运用Java的应用呢?这个问题所有的程序员都会在初学Java或者在为了毕业必须掌握一门编程语言而开始学

    2022年7月8日
    20

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号