小苯的Polygon

news/2025/3/26 13:44:47/文章来源:https://www.cnblogs.com/benscode/p/18789684

题目链接:https://ac.nowcoder.com/acm/contest/104637/E

题意:

在给定的数组中选出一些数,组成封闭凸多边形周长最小

思路:

注意到:最长边<其他所有边之和

不妨枚举最长边,再对小于它的边进行背包dp,以此来求解

dp数组的0/1状态分别表示:其他边(总长为j)此时可以转移得到

背包初始化dp[0]=1,枚举其他边总长(big+1,1e4),如果dp[j]=1,即可以通过01背包得到,立刻取min并break

从后往前枚举,发现dp[p]可以由dp[p-a[i]]转移得到,即如果dp[p-a[i]]可以得到,那么dp[p]也可以得到

void solve(){int n;cin>>n;vector<int>a(n+1);for(int i=1;i<=n;i++)cin>>a[i];sort(a.begin()+1,a.end());vector<int>dp(maxn);dp[0]=1;int ans=1e9;for(int i=1;i<=n;i++){int big=a[i];for(int j=big+1;j<=1e4;j++){if(dp[j]){ans=min(ans,j+big);break;}}for(int p=1e4;p>=big;p--){dp[p]|=dp[p-a[i]];}	}if(ans>1e8)cout<<-1<<endl;else cout<<ans<<endl;
}

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

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

相关文章

【Docker】安装部署jenkins

docker安装部署jenkinsdocker安装jenkins  1、下载jenkins  2、创建挂载目录  3、启动jenkins容器  4、验证jenkins是否启动成功  5、获取管理员密码  6、下载安装插件 docker安装jenkins【1】下载jenkins拉取jenkins镜像 docker pull jenkins/jenkins:2.426.2-lts…

焊接保护气体智能调节控制器|节气装置

机器人焊接节气装置在焊接流程中扮演着至关重要的角色,它犹如一道坚实的屏障,为熔融金属营造一个纯净的焊接环境,有效抵御空气中氧气、氮气、水蒸气等不良因素的侵扰。具体而言,保护气体的多重功效可详尽阐述为以下几个层面:对焊缝的精心呵护。在诸如氩弧焊等精密焊接工艺…

线段树+扫描线,解决“静态矩阵加和+矩阵查询”问题

在试图用 CDQ 分治做这道题的时候遇到了一些麻烦,修改全部在查询之前的静态部分不会做,题解虽然还算详细,但是本人蒟蒻仍然无法理解,思考一上午,尝试过各种证明方法后,大致证明题解算法的正确性,记录在这里。先看题解的说法和代码:使用扫描线、线段树和差分离线解决静态…

centOS 上部署hadoop+mysql+hive 服务之mysql 和hive安装

hive默认存放元数据的数据库是Derby数据库,Derby数据库是嵌入式数据库,它只能单用户访问,也就是只能有一个会话连接到元数据存储,不适合多用户连接操作需求。比如,多用户同时进行查询或并发操作时,Derby无法处理,这会导致性能瓶颈或直接报错。因此,建议替换为用mysql在…

Pydantic根校验器:构建跨字段验证系统

title: Pydantic根校验器:构建跨字段验证系统 date: 2025/3/24 updated: 2025/3/24 author: cmdragon excerpt: Pydantic根校验器支持预处理(pre)与后处理(post)模式,可访问全量字段数据并修改值字典。多字段关联验证实现业务规则检查,如航班时间顺序与保险策略联动。分阶…

机器人焊接节气设备

WGFACS(Welding Gas Flow Automatic Control System)机器人焊接气体流量自适应控制系统。机器人焊接节气设备包含高速控制和采集系统与气体流量自适应装置。它专为在保证焊接质量的前提下,实现节能减排、降低用气成本而设计,广泛应用于汽车制造、航空航天、机械加工等多个行业…

做销售,会讲故事,能说服90%的客户!

在开始之前,先抛出一个问题:说服他人最有效的方式是什么? 或许很多人的第一反应是:事实和数据。毕竟,数据被认为是不会说谎的(当然,也存在数据造假的情况),人们似乎也更倾向于相信数据。正因如此,许多销售话术总会包含大量数据,诸如升学率达 xx%、录取率为 xx%、满意…

CSP安全策略与XSS漏洞的关系

CSP与XSS漏洞的关系1、CSP不依赖漏洞的存在: 2、CSP是独立的安全机制,其有效性取决于策略本身的严格性,而非漏洞是否存在。 例如: 严格CSP(基于nonce):即使站点存在XSS漏洞,攻击者也无法伪造合法的 nonce 值来执行脚本。 宽松CSP(允许unsafe-inline):若漏洞存在,攻…

vue项目启动报错---FATAL ERROR js堆内存不足

vue项目启动报错---FATAL ERROR js堆内存不足 估计项目太大 电脑性能扛不住 解决方法如下: 1.启动项目报错 估计是项目太大了 电脑性能不太行FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory 2.白话文---致命…

spring boot项目打包例子

1.进入到spring项目执行 mvn clean package2.这个时候会在target目录下生成如下包 3.运行 java -jar demo-0.0.1-SNAPSHOT.war 4.调用 5.项目目录结构

攻击

sql注入 SQL注入是一种常见的Web应用程序漏洞,攻击者可以利用它来执行恶意的SQL查询,从而绕过身份验证、访问敏感数据或对数据库进行破坏。以下是一些常见的SQL注入攻击语句示例:基本的SQL注入攻击:SELECT * FROM users WHERE username = admin AND password = OR 1=1; Co…

CTF

Web前置技能 HTTP请求 请求方式读题get传参类型 UseCTF**B那就传参CTFHUB得到flagBP抓包改包得到flag302跳转点击这个会进行http重定向重新返回这个页面 我们就可以用BP截取截取第一次请求得到flag cookie看提示唯一admin可以得到flag基本认证响应包源代码 信息泄露 目标遍历ph…