当前位置: 首页 > news >正文

221 - Urban Elevations (UVA)

题目链接如下:

Online Judge

首先,我的代码虽然AC了,但是是有问题的,uva的测试数据太水了所以侥幸通过而已。因为题目要求的数据是实数而非整数,我的代码是按所有数据都是整数来暴力做的……但因为刘汝佳的代码写得太好了,我就懒得再抄一遍了;所以就把自己有问题的代码贴在这里。

正确的解法在这里(也是刘汝佳的思路):UVA ~ 221 ~ Urban Elevations (离散化)-CSDN博客

#include <cstdio>
#include <vector>
#include <algorithm>
#include <set>
// #define debug
const int maxx = 1000000;struct building{int x, y, width, depth, height, number;building(){}building(int _x, int _y, int _width, int _depth, int _height): x(_x), y(_y), width(_width), depth(_depth), height(_height){}
};
int n, x, y, width, depth, height, kase = 0;
std::vector<building> vec;
std::vector<int> ans[maxx];bool cmp1(const int &a, const int &b){return vec[a - 1].y < vec[b - 1].y;
}bool cmp2(const int &a, const int &b){return vec[a - 1].x != vec[b - 1].x ? vec[a - 1].x < vec[b - 1].x : (vec[a - 1].y < vec[b - 1].y);
}int main(){#ifdef debugfreopen("1.txt", "r", stdin);freopen("2.txt", "w", stdout);#endifwhile(scanf("%d", &n) == 1 && n){printf("%s", kase ? "\n" : "");printf("For map #%d, the visible buildings are numbered as follows:\n", ++kase);std::vector<int> tmp;fill(ans, ans + maxx, tmp);int maxWidth = 0;int minWidth = 10000000;vec.clear();for(int i = 1; i <= n; ++i){scanf("%d %d %d %d %d", &x, &y, &width, &depth, &height);vec.push_back(building(x, y, width, depth, height));vec.back().number = i;maxWidth = std::max(maxWidth, x + width);minWidth = std::min(minWidth, x);for(int j = x; j < x + width; ++j){ans[j].push_back(i);}}for(int i = minWidth; i < maxWidth; ++i){sort(ans[i].begin(), ans[i].end(), cmp1);int height = 0;for(int j = 0; j < ans[i].size(); ++j){if(vec[ans[i][j] - 1].height > height){height = vec[ans[i][j] - 1].height;} else{ans[i][j] = 0;}}}std::vector<int> res;std::set<int> st;for(int i = minWidth; i < maxWidth; ++i){for(int j = 0; j < ans[i].size(); ++j){if(ans[i][j] && st.find(ans[i][j]) == st.end()){res.push_back(ans[i][j]);st.insert(ans[i][j]);}}}sort(res.begin(), res.end(), cmp2);for(int i = 0; i < res.size(); ++i){printf("%d%s", res[i], i == res.size() - 1 ? "\n" : " ");}}#ifdef debugfclose(stdin);fclose(stdout);#endifreturn 0;
}

相关文章:

221 - Urban Elevations (UVA)

题目链接如下&#xff1a; Online Judge 首先&#xff0c;我的代码虽然AC了&#xff0c;但是是有问题的&#xff0c;uva的测试数据太水了所以侥幸通过而已。因为题目要求的数据是实数而非整数&#xff0c;我的代码是按所有数据都是整数来暴力做的……但因为刘汝佳的代码写得太…...

驱蚊“卷到”母婴,润本市值73亿

作者 | 若楠 禄存 排版 | Cathy 监制 | Yoda 出品 | 不二研究 从 " 驱蚊第二股 " 到 " 婴童护理第一股 " 润本终于敲钟了。 尽管宣称 " 婴童护理第一股 "&#xff0c;但实际上&#xff0c;润本最初是以驱蚊产品起家的。 10 月 17 日&#…...

Swingbench 压力测试(超详细)

目录 前提需要有配置好的oracle哦 1、环境准备 2、安装Swingbench 3、造数据 4、压测 前提需要有配置好的oracle哦 1、环境准备 启动监听 lsnrctl start 启动数据库 sqlplus / as sysdba startup 创建表 CREATE TABLESPACE soe DATAFILE /u01/app/oracle/oradata/or…...

【python】--python环境安装及配置

目录 一、python开发环境部署1、下载安装Miniconda2、python环境3、进入或退出python环境4、对应python环境安装工具/库5、进入pyhton环境&#xff0c;查看已安装的工具/库6、安装pycharm专业版7、pycharm创建项目并关联python版本环境 一、python开发环境部署 要安装一个pyth…...

Android前台服务和通知

前台服务 Android 13及以上系统需要动态获取通知权限。 //android 13及以上系统动态获取通知权限 if (Build.VERSION.SDK_INT > Build.VERSION_CODES.Q) {checkPostNotificationPermission(); } private void checkPostNotificationPermission() {if (ActivityCompat.chec…...

算法进修Day-36

算法进修Day-36 71. 简化路径 难度&#xff1a;中等 题目要求&#xff1a; 给你一个字符串 path &#xff0c;表示指向某一文件或目录的 Unix 风格 绝对路径 &#xff08;以 / 开头&#xff09;&#xff0c;请你将其转化为更加简洁的规范路径。 在 Unix 风格的文件系统中&am…...

postman自动化运行接口测试用例

做过接口测试的人&#xff0c;应该都知道postman &#xff0c;我们在日常的时候都可以利用postman做接口测试&#xff0c;我们可以把接口的case保存下来在collection里面&#xff0c;那么可能会有这样的需求&#xff0c;我们怎么把collection的用例放到jenkins中定时执行呢&…...

【Linux】Linux环境搭建

Linux环境搭建 前言Linux 环境的搭建方式一、Linux环境搭载购买云服务器 二、 使用 XShell 远程登陆到 Linux关于 Linux 桌面下载安装 XShell查看 Linux 主机 ip使用 XShell 登陆主机XShell 下的复制粘贴 前言 Linux 环境的搭建方式 主要有三种 直接安装在 物理机 上. 但是由…...

k8s day07

昨日内容回顾: - 污点: 影响Pod调度&#xff0c;污点是作用在worker节点上。语法格式: KEY[VALUE]:EFFECT 有三种污点。 EFFECT: - NoSchedule&#xff1a; 已经调度到当前节点的Pod不驱逐&#xff0c;并且不在接…...

压力大,休息日都没有,更别说年休假了

我一周要工作六天&#xff0c;每天至少十小时&#xff0c;连个休息日都没有。哪来的年休假&#xff1f;...

人手一个助理,三句话让AI替我们上班

目录 前言 从大模型上长出来的 AI 原生应用&#xff0c;才是关键 而这看起来只是一个小小的办公沟通场景&#xff0c;却是大模型重构的一个非常典型的场景。背后考验的也是大模型的综合能力应用 这种从AI原生角度进行的重构&#xff0c;离不开大模型的理解、生成、逻辑、记…...

【Eclipse Maven Tycho】如何通过maven执行eclipse application

通过maven执行eclipse application 前言命令行下运行通过maven tycho运行 前言 eclipse其实不只是一个桌面&#xff08;GUI&#xff09;程序&#xff0c;他还可以是一个命令行程序。如果你的产品或软件是基于eclipse开发的&#xff0c;并且他没有UI相关的功能&#xff0c;那么…...

(一)docker:建立oracle数据库

前言&#xff0c;整个安装过程主要根据docker-images/OracleDatabase/SingleInstance /README.md &#xff0c;里边对如何制作容器讲的比较清楚&#xff0c;唯一问题就是都是英文&#xff0c;可以使用谷歌浏览器自动翻译成中文&#xff0c;自己再对照英文相互参照来制作提前准备…...

在配置文件“tsconfig.json”中找不到任何输入。指定的 “include“ 路径为“[“**/*“]”,“exclude“ 路径为[]

在vscode中项目下的tsconfig.json莫名报错 解决办法 在目录中随便创建一个后缀为.ts的文件 便不再报错...

java编译时指定classpath

说明 Java编译时可以通过选项--class-path <path>&#xff0c;或者 -classpath <path>&#xff0c;或者-cp <path>来指定查找用户类文件、注释程序处理程序、或者源文件的位置。这个设置覆盖CLASSPATH环境变量的设置。如果没有设置-sourcepath&#xff0c;那…...

分享一下抽奖活动小程序怎么做

在当今数字化时代&#xff0c;抽奖活动小程序已成为一种高效、创新的营销方式。它不仅能够吸引用户的注意力&#xff0c;提高品牌知名度&#xff0c;还能促进用户参与度&#xff0c;增强用户对品牌的忠诚度。本文将详细介绍如何制作一个成功的抽奖活动小程序&#xff0c;以及它…...

同为科技(TOWE)工业级多位USB快充桌面PDU插座

如今&#xff0c;许多便捷式、轻薄化电子设备越来越多&#xff0c;很多设备上预留的端口越来越少&#xff0c;甚至很多款笔记本电脑只预留了一个单一的Type-C接口。这样做虽然在体验感、美观度和轻薄尺寸的优势显而易见&#xff0c;然而也存在接口不足的明显弊端。USB快充插排产…...

testt

wd wwwwwwwwwwwwww qdwqdwqd...

Git Bash(一)Windows下安装及使用

目录 一、简介1.1 什么是Git&#xff1f;1.2 Git 的主要特点1.3 什么是 Git Bash&#xff1f; 二、下载三、安装3.1 同意协议3.2 选择安装位置3.3 其他配置&#xff08;【Next】 即可&#xff09;3.4 安装完毕3.5 打开 Git Bash 官网地址&#xff1a; https://www.git-scm.com/…...

软考公告 | 关于2023年下半年软考批次安排

按照《2023年下半年计算机技术与软件专业技术资格&#xff08;水平&#xff09;考试有关工作调整的通告》&#xff0c;自2023年下半年起&#xff0c;计算机软件资格考试方式均由纸笔考试改革为计算机化考试。 为进一步提升考试服务质量和水平, 便利考生考试, 减少考生参加考试…...

终极Walkway.js进阶教程:掌握复杂交互动画与响应式设计的完整指南

终极Walkway.js进阶教程&#xff1a;掌握复杂交互动画与响应式设计的完整指南 【免费下载链接】walkway An easy way to animate SVG elements. 项目地址: https://gitcode.com/gh_mirrors/wa/walkway Walkway.js是一款轻量级的SVG动画库&#xff0c;让开发者能够轻松为…...

从‘头歌’实训出发:手把手教你用XPath和BeautifulSoup解析复杂网页数据(附避坑指南)

实战解析&#xff1a;XPath与BeautifulSoup在复杂网页数据抓取中的高阶应用 当我们需要从国防科技大学招生信息网这类结构复杂的页面中提取历年分数线数据时&#xff0c;传统的字符串匹配方法往往力不从心。本文将带您深入两种主流解析技术——XPath和BeautifulSoup的核心差异与…...

别再手动标注了!用百度大脑EasyData的多人协同功能,3步搞定团队数据标注

高效团队数据标注实战&#xff1a;用协同工具提升3倍效率 当五个人围着一堆猫狗图片争论"这只算狸花猫还是虎斑猫"时&#xff0c;数据标注工作就变成了效率黑洞。我们实验室去年标注10万张医疗影像的经历让我深刻理解&#xff1a;团队标注的核心痛点从来不是工具操作…...

Qt表格入门(优化篇)抡

1. 前言 本文详细介绍如何使用 kylin v10 iso 文件构建出 docker image&#xff0c;docker 版本为 20.10.7。 2. 构建 yum 离线源 2.1. 挂载 ISO 文件 mount Kylin-Server-V10-GFB-Release-030-ARM64.iso /media 2.2. 添加离线 repo 文件 在/etc/yum.repos.d/下创建kylin-local…...

3步搞定通义千问3-4B部署:Ollama镜像一键拉起实操手册

3步搞定通义千问3-4B部署&#xff1a;Ollama镜像一键拉起实操手册 想在自己的电脑上跑一个功能强大的AI助手&#xff0c;但又担心配置复杂、资源消耗大&#xff1f;今天&#xff0c;我们就来解决这个问题。通义千问最新推出的3-4B-Instruct-2507模型&#xff0c;号称“4B体量&…...

023.混淆矩阵分析:如何从错误中学习,改进模型

上周调一个产线缺陷检测模型&#xff0c;指标看着不错——mAP0.5有92%&#xff0c;实际跑起来却总漏检关键缺陷。产线老大直接打电话过来&#xff1a;“你们这模型怎么把划痕当背景了&#xff1f;” 挂掉电话打开测试集&#xff0c;发现模型把30%的划痕都预测成了“正常”&…...

中文新闻文本分类实战:从 TextCNN → BiLSTM → BERT 三档方案对比(附完整代码)

任务&#xff1a;中文新闻文本分类&#xff08;如 THUCNews&#xff0c;10/14 类&#xff09; 目标&#xff1a;给出可直接复现的三种主流方案&#xff0c;实现 对比1. 数据准备 以 THUCNews 为例&#xff08;每行&#xff1a;label \t text&#xff09; import torch from to…...

液压与气压课程设计

液压与气压传动作为现代工业的核心技术之一&#xff0c;在机械装备、自动化设备等领域发挥着不可替代的作用。其核心原理是通过液体或气体的压力传递能量&#xff0c;实现动力传输与运动控制。相比机械传动&#xff0c;液压系统具备功率密度高、响应速度快、调速范围广等优势&a…...

液压折弯机(全套)2012本科毕业设计

液压折弯机作为金属板材加工领域的核心设备&#xff0c;其全套系统设计直接决定了加工精度与效率。该设备通过液压系统驱动滑块实现垂直运动&#xff0c;配合模具对板材施加压力&#xff0c;使其按预设角度弯曲成型。其核心作用体现在三方面&#xff1a;一是精准控制弯曲角度&a…...

C# 学习笔记:从IO文件操作到窗体应用开发

前言在C#学习过程中&#xff0c;从IO文件操作到窗体应用开发是一个重要的进阶阶段。本文将系统总结day14到day17的学习内容&#xff0c;涵盖文件读写、多线程编程、窗体复习以及高级窗体应用等内容&#xff0c;帮助读者建立起完整的知识体系。一、IO文件操作&#xff08;day14&…...