poj 1948二维01背包

【纯实战】C#基于TCP/IP实现三菱PLC MC协议完整通信(含完整源码+通信原理+避坑指南) MC协议是三菱电机为旗下MELSEC系列PLC量身定制的以太网专用通信协议,本质是一套基于TCP/IP的应用层协议规范,专门用于实现上位机(PC/工控机)与PLC之间的双向数据交互,支持对PLC的软元件(X/Y/M/D/W/T/C等)进行读、写、批量读写等核心操作,同时支持PLC状态查询、程序启停等控制指令。重要:三菱PLC的MC协议默认基于TCP 4999端口通信,部分新版本FX5U/Q系列也支持TCP 5000端口,核心通信逻辑一致。 阅读详情

题意:给出不多于40个小棍的长度,求出用所有小棍组成的三角形的最大面积。

 

思路:三角形3边求面积,海伦公式:p=(a+b+c)/2;S=p*(p-a)*(p-b)*(p-c);因为最大周长为1600  则三角形的边长小于周长一半800;

则可以用背包思想dp[i][j]代表能组成的两条边i和j。dp为true代表小棍能组成这两条边,第三条边也能求出,最后遍历一次dp数组求最大面积。

 

代码:

#include<iostream>
#include<cstring>
#include<cstdio>
#include<cmath>
#define MAXN 815
#define INF 1e8
using namespace std;
bool dp[801][801];
int a[44];
int n,sum,p;
int main()
{
   while(scanf("%d",&n)!=EOF)
   {
        sum=0;
        for(int i=0;i<n;i++)
        {
            scanf("%d",&a[i]);
            sum+=a[i];
        }
        memset(dp,0,sizeof(dp));
        dp[0][0]=1;
        p=sum/2;
        for(int i=0;i<n;i++)
        {
            for(int j=p;j>=0;j--)
            {
                for(int k=j;k>=0;k--)
                {
                    if((j>=a[i]&&dp[k][j-a[i]])||(k>=a[i]&&dp[k-a[i]][j]))
                        dp[k][j]=1;
                }
            }
        }
        int ans=-1;
        for(int i=p;i>=1;i--)
        {
            for(int j=i;j>=1;j--)
            {
                if(dp[j][i])
                {
                    int c=sum-i-j;
                    if(i + j > c && i + c > j && j + c > i)
                    {
                        double px=(i+j+c)*1.0/2;
                        int temp=(int)(sqrt(px*(px-i)*(px-j)*(px-c))*100);
                        if(ans<temp)
                            ans=temp;
                    }
                }
            }
        }
        if(ans)
        printf("%d\n",ans);
        else
        printf("-1\n");
   }
   return 0;
}


 

safetensors_rust.SafetensorError: Error while deserializing header: MetadataIncompleteBuffer解决方案 本文主要介绍了safetensors_rust.SafetensorError: Error while deserializing header: MetadataIncompleteBuffer解决方案,希望能对使用Python的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案 2.1 Windows 2.2 Linux 阅读详情

相关推荐

特征模理论指导滤波天线设计的优势和方法

本文探讨了特征模理论在滤波天线设计中的应用优势和方法。特征模理论通过分析天线结构的本征模特性,突破了传统经验设计的局限,实现了辐射与滤波功能的一体化设计。文章重点阐述了如何利用模式显著性(MS)和模式加权系数(MWC)来指导辐射零点的产生,揭示了辐射零点形成的物理机制。通过特征模分析,设计师可以明确调控天线结构和馈电系统,优化滤波性能。这种方法为现代多频/宽带滤波天线设计提供了理论依据和实用工具,显著提升了设计效率和性能指标。

qq_64207806的博客 956

POJ 1948 (Triangular Pastures)二维背包 DP/DFS

题意:有N个木棒,全部使用使得

gg_gogoing的专栏 676

从平衡车到寻迹小车:IMU963RA九轴陀螺仪实战避坑与四元数融合指南

本文详细解析了IMU963RA九轴陀螺仪在机器人姿态控制中的应用,重点探讨了从六轴升级到九轴系统的技术路径及四元数融合算法。通过实战案例,揭示了如何利用地磁计补偿陀螺积分漂移,并提供硬件集成、传感器校准及算法实现的完整解决方案,有效将8小时漂移控制在2度以内。

weixin_27219587的博客 253

poj1948 二维01背包

http://poj.org/problem?id=1948 Description Like everyone, cows enjoy variety. Their current fancy is new shapes for pastures. The old rectangular shapes are out of favor; new geometries are the fa

ACM,再见! 1628

从开票数据到 ML81N 一键过账:用 ABAP BAPI 批量创建 Service Entry Sheet 的落地方案

摘要:SAP ESM场景中,服务履约确认通常通过ML81N事务码创建服务条目表(SES)完成。本文介绍如何基于开票数据(VBRK/VBRP)自动生成SES:首先通过BAPI_PO_GETDETAIL获取采购订单服务行结构,然后使用BAPI_ENTRYSHEET_CREATE创建SES并覆盖开票数量与金额,最后调用BAPI_ENTRYSHEET_RELEASE自动释放。解决方案包含ALV交互界面、批量处理逻辑和结果跳转功能,实现从人工录入到自动化处理的转变。(149字)

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 326

【Proteus仿真】51单片机+DAC0832+LM358放大电路波形发生器

【Proteus仿真】51单片机+DAC0832+LM358放大电路波形发生器

perseverance51博客 5785

poj 1948 Triangular Pastures(二维01背包)

Triangular Pastures Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 4333   Accepted: 1295 Descript

志当存高远 1808

第二大脑的觉醒:一个寄生在代码里的小生命,如何悄无声息地接管我的工作流

所有记忆都存在本地。

步子哥的博客 1060

POJ1948

还以为有什么好的方法呢 /************************************************************** 作者:陈新 邮箱:cx2pbirate@gmail.com 用途:pboj1948 时间:2014 4月13日 15:17 测试: 12749645 Will4944 1948 Accepted 10256K 219MS C+

Alex_supertramp的专栏 2149

【DaVinci Developer专题】-36-创建一个“既读又写”的Sender Receiver Port(SR PR-Port)

有时会遇到SWC需要对一个Port进行“既可以读,也可以写”的操作。以下图为例,Test_A_SWC中Test_A_Port是P-Port;Test_B_SWC中Test_A_Port是R-Port。Test_C_SWC需要对Test_A_Port同时进行“读”和“写”。 该篇将详细介绍PR-Port的创建方法。 目录 1 创建一个S/R Port Interface 2 将一个PR-Port端口添加至Application Component 3 PR-Port端口初始化 4 Run.

「汽车电子助手」的博客 3013

EtherCAT主站SOEM -- 0 -- 该EtherCAT主站SOEM专栏后续安排

SOEM(Simple Open EtherCAT Master)是一个开源的EtherCAT主站库,允许开发者构建自定义的EtherCAT主站应用程序。EtherCAT是一种实时以太网通信协议,广泛应用于工业自动化和机器控制领域。开源性质:SOEM是一个开源项目,这意味着开发者可以自由地查看、修改和分发代码。这使其成为工业自动化领域的一个强大工具,可以根据具体需求进行定制。EtherCAT主站实现:SOEM库提供了一个完整的EtherCAT主站实现,允许主站与多个EtherCAT从站设备进行通信。

常驻客栈的博客--嵌入式EtherCAT 6665

背包问题--POJ 1948 Triangular Pastures[二维01背包]

POJ 1948 Triangular Pastures题目描述:给最多40根木棍,每根长度不超过40,要用完所有的木棍构成面积最大的三角形,求出最大的面积。 算法核心:二维01背包 使用到海伦公式: 已知三角形的三边长度a,b,c,求面积 S=√[p(p-a)(p-b)(p-c)] 而公式里的p为半周长:   p=(a+b+c)/2 分析:用dp[i][j][k]表示到...

a48634331的博客 164

Scrapy爬虫之热门网站数据爬取--------第2关

第2关:小说网站玄幻分类第一页小说爬取 任务描述 本关任务:爬目标网页的3本小说保存到本地MySQL数据库,目标网页为全书网玄幻分类首页。 注:考虑到单机(非分布式)爬虫的爬取时间和测试平台的压力,我们不爬更多页数的小说了,可以作为课下作业自己完善。 xpath匹配:循环获取相同标签下的内容 通过网页分析,我们在获取小说的章节名时,发现他们都在标签<DIV class="clearfix dirconone">下的li的a中: 这时,我们可以先把其中所有的li标签先获取到: titles = r

weixin_44949187的博客 2836

poj1948 二维01背包

题目给一些木棒,要求全部用上形成三条边,问能形成的三角形最大面积是多少? 一般的做法是只管一个,这次我们是管两个。 dp[i][j],表示第一条边为i,第二条边为j的情况是否存在。不需要计算第三条边,因为第三条边就是sum-i-j。 对于当前的一根木棒, 我们按照正常的01背包做法 for(int i=0;i for(int j=sum/2;j>=0;j--) //第一个木棒。为什么是

Little_boy_z的博客 283

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

POJ - 1948 二维01背包

T了两发,DP方程很简单粗暴 dp[i][j][k]:用前i物品使得容量分别为j和k的背包恰好装满 背包的调用只需一次即可,第一次T就是每次check都丧心病狂地背包一次 对于sum的枚举,其实i j枚举到sum/2就可以了 #include<cstdio> #include<cstring> #include<iostream> #include<alg...

weixin_30834783的博客 126

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

poj 1948 二维01背包

题意:给你n个小棒(l 思路:40个小棒,每个40,最长1600,每个边都不会比半周长长,所以是800, 设dp[i][k][j],分别是40,800,800,意思就是用了前i个小棒能组成的两个边为k和j,能为1.不能为0; dp[0][0][0] = true; for (i = 1; i    for (j = 0; j     for (k = 0; k      dp[

、Poppy 567

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

poj 1948 Triangular Pastures 二维01背包

题意: g

sepNINE的专栏 611

【POJ 1948】Triangular Pastures(dp—二维01背包)

小篆字两行,成双花前影 月下恰正逢西厢

reverie_mjp的博客 333

POJ 1948 Triangular Pastures【二维01背包】

题意:给出n条边,用这n条边构成一个三角形,求三角形的最大面积。 先求面积,用海伦公式,s=sqrt(p*(p-a)*(p-b)*(p-c)),其中a,b,c分别为三角形的三条边,p为三角形的半周长,同时由这个根式可以推出,三角形的任意一条边小于其半周长(根号里面大于0,如果等于0面积为0没有意义了) 所以考虑背包两条边,再用周长减去这两条边求出第三条边,再遍历一遍找出最大的三角形。 dp[...

weixin_30394333的博客 123

POJ 1948 Triangular Pastures (二维01背包)

题目链接:http://poj.org/problem?id=1948 题目大意:给最多40根木棍,每根长度不超过40,要用完所有的木棍构成面积最大的三角形,求出最大的面积。 思路:设f[i][j]为第一条边长度为i,第二条边长度为j是否可行 状态转移方程: if(j>=a[i]) f[j][k]=f[j][k]||f[j-a[i]][k] if(k>=a[i]) f[j...

weixin_30241919的博客 77

POJ1948:Triangular Pastures(二维01背包)

detail:http://blog.youkuaiyun.com/lvshubao1314/article/details/41624239 Triangular Pastures Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 7802   Accepted: 2590

junior19的博客 380

poj 1948 Triangular Pastures (dp 二维01背包)

题目:点击打开链接 题目大意: 给N条边,把这些边组成一个三角形,问面积最大是多少?必须把所有边都用上。 思路: 对于已知周长的三角形,我们只要知道两条边的长度变可推出第三条边,所以可以得到状态方程: f[i][j][k] 表示用前i条边,能否组成长度为j和k的两条边 初始化f[0][0][0] = true; f[i][j][k] = f[i-1][j-len[i]

D_Double's Journey 1796
上一篇: poj 1742 多重背包
下一篇: poj 1882完全背包变形
小狐狸jun
博客等级 码龄15年 12粉丝 140原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值