POJ 1151

刚看了这道题目完全没思路,在网上找了结题报告,了解到需用离散化+线段树+扫描,但菜鸟一个,发现数据规模并不大,用离散化完全可以,所以只用了离散化,思路还是很清晰的,但还是贡献了5个小时,15次wa,纠结过后发现x,y数组我是从1开始计数的,但sort 的时候却是从0开始sort,结果导致身心煎熬了n小时,粗心惹的祸啊

//离散化求解!!!!
#include <iostream>
#include <algorithm>
using namespace std;
const int maxn=210;
double x[maxn],y[maxn];
int vis[maxn][maxn];
int n;
struct node
{double x1,y1,x2,y2;
}map[101];
int main()
{int t=0;while(scanf("%d",&n)&&n!=0){memset(vis,0,sizeof(vis));t++;double tot=0.0;int i,j=1;for(i=1;i<=n;i++){cin>>map[i].x1>>map[i].y1;x[j]=map[i].x1;y[j]=map[i].y1;j++;cin>>map[i].x2>>map[i].y2;x[j]=map[i].x2;y[j]=map[i].y2;j++;}int i1,i2,j1,j2;sort(x+1,x+2*n+1);sort(y+1,y+2*n+1);for(int k=1;k<=n;k++){for(i1=1;i1<=2*n;i1++){if(x[i1]==map[k].x1) break;}for(i2=1;i2<=2*n;i2++){if(x[i2]==map[k].x2) break;}for(j1=1;j1<=2*n;j1++){if(y[j1]==map[k].y1) break;}for(j2=1;j2<=2*n;j2++){if(y[j2]==map[k].y2) break;}for(i=i1;i<i2;i++){for(j=j1;j<j2;j++){vis[i][j]=1;}}}for(i=1;i<2*n;i++)	{for(j=1;j<2*n;j++){tot+=vis[i][j]*(x[i+1]-x[i])*(y[j+1]-y[j]);}}printf("Test case #%d\n",t);printf("Total explored area: %.2f\n",tot);printf("\n");}return 0;
}


 

转载于:https://www.cnblogs.com/lj-vs-lishimin/archive/2012/09/25/2774383.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/302173.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

.NET 6 Preview 4 已发布,ASP.NET Core 更新内容

原文&#xff1a;bit.ly/3wFqDy9作者&#xff1a;Daniel译者&#xff1a;王亮.NET 6 预览版 4 现已发布&#xff0c;其中包括对 ASP.NET Core 的许多新改进。下面是此次预览版中 ASP.NET Core 的更新内容&#xff1a;引入最小 API异步流HTTP 日志中间件新项目中使用 Kestrel 作…

linux 装nano命令,linux下安装 nano 如果没有这个命令的话~~可以看下

首先查看下这个目录里有没有Centos-Base.repo这个文件(附件里有这个)然后用Xmanager下的xftp 把本机上的这个文件复制到虚拟机中的/目录下[rootfox ~]#mv Centos-Base.repo /etc/yum.repos.d/[rootfox ~]# cd /etc/yum.repos.d/[rootfox yum.repos.d]# lsCentos-Base.repo Cen…

struts2对action的指定方法进行校验

2019独角兽企业重金招聘Python工程师标准>>> 在strust2中&#xff0c;我们可以实现对action的所有方法进行校验或者对action的指定方法进行校验。 一、对于输入校验struts2提供了两种实现方法&#xff1a; 1、采用手工编写代码实现。 &#xff08;1&#xff09;通过…

EFCore之命令行工具

介绍EFCore工具可帮助完成设计数据库时候的开发任务&#xff0c;主要用于通过对数据库架构进行反向工程来管理迁移和搭建DbContext和实体类型。EFCore .NET命令行工具是对跨平台.NET Core CLI工具的扩展&#xff0c;该工具执行需要具有.NET Core SDK(具有 Sdk"Microsoft.N…

linux新建文件夹明率,linux新建文件和文件夹命令

1、touch命令touch命令用来修改文件的访问时间、修改时间。如果没有指定时间&#xff0c;则将文件时间属性改为当前时间。当指定文件不存在&#xff0c;touch命令变为创建该文件。语法&#xff1a;touch [-acm] [-d STRING-time] [-r reference-file] [-t [[CC]YY]MMDDhhmm[.ss…

想让数据分析更简便,怎能少了它!

R作为一种统计分析软件&#xff0c;广泛应用于生物、医学、电商、新闻等数据相关行业&#xff0c;是目前主流数据应用软件之一。为了更好地帮助大家了解并快速入门R语言&#xff0c;现超级数学建模携手柯老师以R语言为基础&#xff0c;向大家隆重推出《R语言基础》系列课。柯老…

分类预测 | Matlab实现MTF-CNN-Mutilhead-Attention基于马尔可夫转移场-卷积神经网络融合多头注意力多特征数据分类预测

分类预测 | Matlab实现MTF-CNN-Mutilhead-Attention基于马尔可夫转移场-卷积神经网络融合多头注意力多特征数据分类预测 目录 分类预测 | Matlab实现MTF-CNN-Mutilhead-Attention基于马尔可夫转移场-卷积神经网络融合多头注意力多特征数据分类预测分类效果基本描述程序设计参考…

Akka2使用探索3(Duration 和 Deadline)

2019独角兽企业重金招聘Python工程师标准>>> akka提供了两个关于时长的数据类型&#xff1a;Duration 和 Deadline&#xff0c;比如5秒钟这种含义。 Duration.Inf表示无限&#xff0c;Duration.MinusInf表示负无限 Deadline, 表示一个绝对的时间点&#xff0c;意义是…

C#垃圾回收机制(GC)

GC的前世与今生虽然本文是以.net作为目标来讲述GC&#xff0c;但是GC的概念并非才诞生不久。早在1958年&#xff0c;由鼎鼎大名的图林奖得主John McCarthy所实现的Lisp语言就已经提供了GC的功能&#xff0c;这是GC的第一次出现。Lisp的程序员认为内存管理太重要了&#xff0c;所…

收藏 | EXCEL的36个逆天功能,动画教程

全世界只有3.14 % 的人关注了数据与算法之美1、添加文字下面线条的2种方法2、设置列宽的3种方法3、以cm为单位设置行高跟列宽4、输入0开头数字的2种方法5、快速输入当天日期与时间6、如何输入分数&#xff1f;7、生成序列的3种方法8、快速录入相同内容9、隐藏没有数据区域10、填…

linux连接教程视频,[原创]linux视频教程之连接

这次说一下ln的相关原理和用法在开始介绍连接( Link ) 之前&#xff0c;我们得先来了解一下什么是inode 这个东西&#xff1f;说实在的&#xff0c;这个东西真的很重要&#xff0c;不了解它的时候&#xff0c;很容易搞错很多的东西什么是inodes &#xff1f;要提到inode 之前&a…

读《中台架构与实现》

最早是在极客时间知道欧创新老师的&#xff0c;我也是他的课程《DDD实战课》的订阅者&#xff0c;后来欧老师基于这门课程做更多的实践与思考&#xff0c;完成了《中台架构与实现&#xff1a;基于 DDD 和微服务》这本书的写作&#xff0c;最近刚好读完了这本书。中台、微服务、…

fedora17的gnome3桌面美化

使用fedora已经有一段时间了,感觉还可以. 今天配置一下gnome的桌面吧. 首先要安装一款工具,这个可以说很必要了,当然,好多的博客里也都提到过,这就是 gnome-tweak-tool yum install gnome-tweak-tool 之后呢, 就可以打开这个软件,在附件里, 中文名字叫做高级设置,英文名字叫做…

全球高智商俱乐部门萨出品,最强大脑达人推荐,让孩子挑战脑力极限,玩出高智商思维!...

我们经常听到“脑力体操”(Mind Gymnastic)&#xff0c;可能大家都不太懂得是什么。通俗地讲&#xff0c;就是时不时&#xff0c;给大脑来点小体操。可以灵活运用大脑&#xff0c;确保头脑是清醒的。门萨试题作为全球公认的“脑力体操”&#xff0c;它不是数学题&#xff0c;对…

linux关机开机命令详解,Linux关机与重启的命令详解

Linux有如下的关机和重启命令:shutdown, reboot, halt, poweroff&#xff0c;那么它们有什么区别呢&#xff1f;shutdown - 建议使用的命令shutdown是最常用也是最安全的关机和重启命令&#xff0c;它会在关机之前调用fsck检查磁盘&#xff0c;其中-h和-r是最常用的参数&#x…

Microsoft Build 2021大会开始后,Develop Blog一系列更新

.NET BLOG发布.NET 6预览版4https://devblogs.microsoft.com/dotnet/announcing-net-6-preview-4/发布**.NET MAUI**预览版4https://devblogs.microsoft.com/dotnet/announcing-net-maui-preview-4/介绍运行时.NET热重载时编辑代码的体验https://devblogs.microsoft.com/dotnet…

网络管理员面试时常用的问题及答案

大家可以了解一下&#xff0c;以便以后面试时备用。 以下是附件正文内容第一部分1.请写出568A与568B的线序 2.按照数据访问速度排序&#xff1a;硬盘、CPU、光驱、内存 3.请写出下列服务使用的默认端口POP3、SMTP、FTP 4.网卡MAC是由6组什么组成的 5.ISO/OSI 7层模型是什么 6.C…

数学无用论??我们欠孩子真正的数学阅读

说到数学&#xff0c;我想起了13年一场轰动行业各界的“数学无用论”&#xff01;那时微博上有个话题叫做#让数学滚出高考#&#xff0c;超过7成网友都表示支持&#xff0c;这可怕的比例就能说明在中国由于数学差导致命运被洗牌的真不在少数……甚至大部分人举起了“数学无用论”…

Android获取Linux图像信息,Android系统信息获取 之十三:Linux内核版本信息获取

Android系统信息获取 之十三&#xff1a;Linux内核版本信息获取Android系统是基于Linux的&#xff0c;各个Android版本对应的Linux版本不尽相同&#xff0c;我们这里不去追究各个Android对应的Linux版本是什么&#xff0c;而是通过工具或者使用代码的方法去获取我们使用的Andro…

让Dapper在一个项目中支持多种库

如果想在一个项目中&#xff0c;用DapperPlus支持多种数据库该怎么做&#xff1f;在《让Dapper支持Mock》中我们定义了DapperPlus&#xff0c;可以基于这个类&#xff0c;实现两个子类&#xff1a;MySqlDapperPlus&#xff0c;MsSqlDapperPls&#xff0c;在这两个子类的构造中适…