Codeforces Round #436 (Div. 2) E. Fire

揭秘Coze图生图隐藏玩法:用Excel批量生成100+电商主图(扣子插件进阶教程) 本文深入解析了如何利用Coze(扣子)的图像生成插件实现电商主图的批量自动化生产。通过将Excel数据源、参数化提示词模板与参考图风格相结合,构建了一套高效的企业级解决方案,能够快速为海量SKU生成风格统一的高质量图片,大幅提升电商运营效率。 阅读详情

Description

Polycarp is in really serious trouble — his house is on fire! It’s time to save the most valuable items. Polycarp estimated that it would take ti seconds to save i-th item. In addition, for each item, he estimated the value of di — the moment after which the item i will be completely burned and will no longer be valuable for him at all. In particular, if ti ≥ di, then i-th item cannot be saved.

Given the values pi for each of the items, find a set of items that Polycarp can save such that the total value of this items is maximum possible. Polycarp saves the items one after another. For example, if he takes item a first, and then item b, then the item a will be saved in ta seconds, and the item b — in ta + tb seconds after fire started.
Input

The first line contains a single integer n (1 ≤ n ≤ 100) — the number of items in Polycarp’s house.

Each of the following n lines contains three integers ti, di, pi (1 ≤ ti ≤ 20, 1 ≤ di ≤ 2 000, 1 ≤ pi ≤ 20) — the time needed to save the item i, the time after which the item i will burn completely and the value of item i.
Output

In the first line print the maximum possible total value of the set of saved items. In the second line print one integer m — the number of items in the desired set. In the third line print m distinct integers — numbers of the saved items in the order Polycarp saves them. Items are 1-indexed in the same order in which they appear in the input. If there are several answers, print any of them.
Examples

input
3
3 7 4
2 6 5
3 7 6
output
11
2
2 3
input
2
5 6 1
3 3 5
output
1
1
1

http://codeforces.com/contest/864/problem/E

题意:

有一堆物品,每个物品有3个属性,需要的时间,失效的时间(一开始)和价值。只能一件一件的选择物品(即在选择这件物品时需要一定的时间,在这段时间之内不能选择其他物品),选择这件物品只能在失效时间之前选择。问选择的最大价值是多少。

挺水 的一道01背包的记录路径的题目。可是我比赛的时候没有做出来。。
都怪自己之前没有好好看。。
现在看这个用的dfs 的方式输出。。
这里由于有2000,另外每件物品还有上届和下届。所以还是不同的。

至少每次都要有 f[i][j]=f[i-1][j];这个东西,这样才可以把价值传递过去。。

#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cstdlib>
#include<ctime>
#include<utility>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef pair<int,int> pii;
int f[110][2010];
int g[110][2010];
struct p {
    int t,d,p,id;
};
p a[110];
int cmp(p a,p b) {
    return a.d<b.d;
}
void solve(int x,int y,int s){
    if(x<0)printf("%d\n",s);
    else{
        if(!g[x][y])solve(x-1,y,s);
        else{
            solve(x-1,y-a[x].t,s+1);
            printf("%d ",a[x].id);
        }
    }
}
int main() {
    memset(f,0x80,sizeof f);
    f[0][0]=0;
    int n;
    scanf("%d",&n);
    int i,j;
    for(i=1;i<=n;i++) {
        scanf("%d%d%d",&a[i].t,&a[i].d,&a[i].p);
        a[i].id=i;
    }
    sort(a+1,a+n+1,cmp);
    for(int i=1;i<=n;++i){
        for(int j=0;j<=2000;++j){
            f[i][j]=f[i-1][j];
            g[i][j]=0;
            if(j>=a[i].t&&j<a[i].d){
                if(f[i-1][j-a[i].t]+a[i].p>f[i][j]){
                    f[i][j]=f[i-1][j-a[i].t]+a[i].p;
                    g[i][j]=1;
                }
            }
        }
    }
    int ans1=-1,ans2=-1;
    for(i=0;i<=2000;i++)
        if(f[n][i]>ans1) {
            ans1=f[n][i];
            ans2=i;
        }
    printf("%d\n",ans1);
    solve(n,ans2,0);
}
多标签损失之Hamming Loss(PyTorch和sklearn)、Focal Loss、交叉熵和ASL损失 多标签损失 阅读详情

相关推荐

Ubuntu运行vmware时报错Vmware Unable to install all modules!Use shipped Linux kernel AIO access library解决。

Ubuntu运行vmware时报错Vmware Unable to install all modules! vmware --version 提示下面内容: [AppLoader] Use shipped Linux kernel AIO access library. An up-to-date "libaio" or "libaio1" package from your system is preferred. VMware Workstation 16.1.2 build-17966106

wto882dim的博客 2848

CodeForces 864E Fire

题目链接:http://codeforces.com/contest/864/problem/E 题意:现在一个房子里着火了,你要从这个房子里抢救一些东西出来,有n件物品,抢救第i件物品,需要花费ti的时间,这件物品价值为pi,如果物品超过di的时间还没有被救出来,就救不了,现在问你最大能救出的价值为多少,并且输出救了的物品的id 解析:其实跟背包一样的,dp[j]表示j时刻救了多少价值的物品,

22h's Blog 674

SAP BSP网页开发入门:从SE80创建到MVC实战(附成品展示)

本文详细介绍了SAP BSP网页开发的入门与实战,从SE80环境搭建到MVC架构实现的全流程。通过具体案例和代码示例,帮助开发者掌握业务服务器页面(BSP)技术,提升SAP Web化转型中的开发效率,适用于需要扩展SAP功能的企业场景。

x1y2z的博客 1万+

Codeforces Round #436 (Div. 2)E.Fire

题目链接 题意是有一个人着火了,有n个物品,每个物品有一个价值p,有一个d代表必须在<d之前的时间里把这个东西救出来才有效,有一个t代表救该物品需要用的时间,问你说最后能够获得的最大价值是多少,同时按救援顺序输出救了哪些东西。 如果不考虑物品的deadline的话,我们就直接做一个背包记录一下路径即可,但是考虑到物品救援有先后顺序,我们发现如果两个物品的d一样的话,那么先后救哪

WeYoungg的博客 482

接入穿山甲SDK时,Unity打Android包报错日志

SDK工程设置为Enable,项目工程设置为Disable。2、将unitypackage导入包名为:com.DefaultCompany.Myproject的另一个工程,打包报错。3、点击工程默认弹出Enable Android Auto-resolution 设置选项,点击Enable。1、新建一个空工程,设置包名为:com.ceshi.hewen,正常打包无报错,导出unitypackage。2、点击Reset to Defaults 重置参数,再点击ok关闭设置窗口。

不文不武的禾文 3582

【目标检测】IoU(交并比)详解及代码实现

1. IOU概述        IoU的全称为交并比(Intersection over Union),是目标检测中使用的一个概念,IoU计算的是“预测的边框”和“真实的边框”的交叠率-,即它们的交集和并集的比值。最理想情况是完全重叠,即比值为1。 2. IoU计算        IoU等于“预测的边框”和“真实的边框”之间交集和并集的比值。IoU计算如下图,B1为真实

Roaddd的博客 2万+

Codeforce E. Fire

E. Fire time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Polycarp is in really serious trouble — his house...

weixin_30748995的博客 166

详细分析一下华为自研的MetaERP系统中的合并报表流程与规则

华为MetaERP合并报表系统针对其全球化复杂业务量身定制,采用五层自动化架构:统一数据采集、多币种转换、智能对账协同、规则化抵消处理及多维分析输出。系统核心在于可配置的智能规则引擎,涵盖股权合并范围、内部交易抵消、未实现利润计算等复杂场景,实现多准则并行处理。相比传统软件,该系统深度集成业务数据、支持准实时合并,并通过参数化配置快速适应组织变革,成为华为全球财务管控的"数字神经中枢",在效率、准确性和安全性上具有显著优势。

金牌架构师 673

Codeforces Round #436 (Div. 2) E fire DP

原题链接:http://codeforces.com/contest/864/problem/E 题目大意:给出n个物品的价值vi,获得该物品所需的时间costi,物品从时间ti开始价值归零。问最多能获得多少总价值的物品,及其解决方案。 首先对于两个物品i,j如果这两个物品都在解集里面,且ti 然后对于两个物品i,j如果这两个物品都在解集里面,且ti=tj,vi>vj 则先获得物品i一定不会

ACM交流帖 352

Playwright爬虫实战:破解动态网页懒加载与无限滚动

本文介绍了使用Playwright处理懒加载和无限滚动页面的完整解决方案。摘要如下: 问题分析:传统爬虫无法获取JS动态渲染内容,Playwright能模拟真实浏览器行为解决此类问题。 核心原理: 懒加载:资源延迟加载,滚动触发 无限滚动:滚动到底部异步加载新内容 技术方案: 分段滚动页面并等待加载 动态监测页面高度变化 合理设置等待和终止条件 代码实现: 提供图片懒加载和无限滚动列表的完整可运行代码 包含异常处理和性能优化建议 关键优势: 比传统爬虫更可靠 支持复杂交互场景 完善的错误处理机制 该方法已在

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 523

【YOLOs-CPP-图像分类部署】04-项目优化(加速部署)

本文详细介绍了将YOLO图像分类C++部署项目从CMake迁移到Visual Studio控制台应用的全过程。针对低配CPU性能瓶颈问题,作者通过替换多线程HPP代码为官方实现,并采用448x448固定输入尺寸优化推理速度。项目配置包含OpenCV和ONNX Runtime环境设置,实现了图像批量处理、分类结果显示及结果日志输出功能。关键步骤包括依赖库配置、DLL部署和代码调试,最终在Windows平台成功实现高效CPU推理。该方案显著提升了低配硬件的兼容性,为图像分类任务提供了稳定的部署解决方案。

深耕CV 353

Codeforces Round #436 (Div. 2)E. Fire

E. Fire time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Polycarp is in really serious trouble — his house i

Egqawkq的博客 434

基于 ESP32 的智能药盒提醒装置设计与实现

本装置基于 ESP32 实现了智能药盒的核心功能,硬件选型兼顾成本与实用性,软件设计模块化、易拓展。后续可通过 ESP32 的 WiFi 模块接入物联网平台(如阿里云、OneNet),实现远程设置提醒、服药状态反馈等功能,进一步提升智能化水平。该装置能有效解决老人忘服药问题,具有较高的实用价值与推广潜力。

weixin_42300449的博客 1043

Codeforces Round #436 (Div. 2) E. Fire

DescriptionPolycarp is in really serious trouble — his house is on fire! It’s time to save the most valuable items. Polycarp estimated that it would take ti seconds to save i-th item. In addition, for

so_so_y的博客 631

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Codeforces Round #436 (Div. 2) 864E. Fire

那天晚上发现有场cf时间比较早就跑去打了一下,只写出ABCDE的我(一次都没被hack,也一次都没去hack)……地址:Codeforces Round #436 (Div. 2) 864E. Fire题目:E. Firetime limit per test : 2 seconds memory limit per test : 256 megabytes input : standard i

永无止境 380

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

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

Codeforces Round #436 (Div. 2) E. Fire(背包+记录路径)

传送门 题意 给出n种物品,抢救第\(i\)种物品花费时间\(t_i\),价值\(p_i\),截止时间\(d_i\) 询问抢救的顺序及物品价值和最大值 分析 按\(d_i\)排序的目的是防止以下情况 4 8 100 1 2 100 不排序只能选择第一个物品 (请仔细思考) 那么排序后做一遍背包,排序后选择顺序必定是递增的,求路径时从n往前找,具体见代码 code #include&l...

anquan1533的博客 138

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Codeforces Round #436 (Div. 2) E. Fire (有放入顺序有关的01背包)

一道和放入顺序有关的01背包问题,入门题。题意:有个房子着火了,里面有100个物品,现在要把这些东西拿出来,每个物品有一个价值,拿出来所需的时间,和能承受火的最长时间,问最多可以拿出多少价值的物品。

hmc0411的博客 2699

Codeforces Round #436 (Div. 2) E. Fire(DP+记录路径)

http://codeforces.com/contest/864/problem/E 题意:题目有点长,主要是讲了一连串的故事。。。。(01背包问题+路径输出)了解了是01背包之后,就能很好的理解题意了。   大致说一下题意,就是给你三个数组ti, di, pi(1 ≤ ti ≤ 20,1 ≤ di ≤ 2 000,1 ≤ pi ≤ 20)   三个数组的意思分别表示为...

aisongdan0899的博客 194

Codeforces 864E (Codeforces Round #436 (Div. 2)) E. Fire 背包输出路径

E. Fire time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Polycarp is in really serious trouble — his house i

J. Cole 442

【01背包 && 记录路径 && 约束】Codeforces Round #436 (Div. 2) E. Fire

Problem Description 发生火灾了,家里有n件物品,每件物品有把它就救出来的时间,烧坏的所需时间,没烧坏的价值。 问你你拯救的最大价值,同时输出拯救的物品数量,和物品。 Input 3 3 7 4 2 6 5 3 7 6 Output 11 2 2 3 思路: 达到烧坏所需的时间后,这个物品就没有价值...

ACMer 梁剑锋 的博客 280

Codeforces Round #436 (Div. 2) E. Fire(背包DP+输出路径)

题意:现在着火了,你要保留物品,每个物品有三个值t,d,p,t是解救需要的时间,d是过了多少秒这个物品就烧没了,p是物品价值,问保留物品最大的价值是多少,有多少个,分别是哪几个?思路:很明显的DP,而且总是觉得在哪里见过。dp[i]表示到时间为i为止,所能取得的最大价值,转移方程:dp[j]=max(dp[j],dp[j-a[i].t]+a[i].p),有点类似于背包,只不过这里放的是时间。还有一点

Roll_Keyboard的博客 388

Codeforces Round #436 (Div. 2) E - Fire 01背包(模版)

传送门 题意: n个物品,每个物品有个需要拯救花的时间,截止时间,物品价值。 让你能救回的最大价值,打印选择方式。 做法: 这这这,这不就是,是个01背包吗。 //china no.1 #pragma comment(linker, "/STACK:1024000000,1024000000") #include #include #include #in

twh233的算法blog 374

Codeforces Round #436 (Div. 2) E. Fire(01背包+输出路径)

Polycarp is in really serious trouble — his house is on fire! It's time to save the most valuable items. Polycarp estimated that it would take tiseconds to save i-th item. In addition, for each item

SSimpLe_Y的博客 1355

Codeforces Round #436 (Div. 2) E. Fire(dp 记录路径)

E. Fire time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Polycarp is in really serious trouble — his house...

weixin_33963189的博客 97

Codeforces Round #436 (Div. 2)-背包&排序&输出状态-E. Fire

http://codeforces.com/contest/864/problem/E 给定若干个文件。 和整理他们花费的时间,他们的截止时间,和他们的价值。 问如何弄 价值最大。并输出文件数整理的顺序。和文件数量。 是背包。但是没想到怎么背。 先对截至日期排序。 dp[j]是截止到时间j。最大价值。 找到最大价值。然后再背包的过程中,保留用到i时的j(时间)。 然后从后往前,记录。

天与云与山与水 329
上一篇: Codeforces 761D-Dasha and Very Difficult Problem 贪心
下一篇: hdu 3308(线段树区间合并)
sega_handsome
博客等级 码龄10年 7粉丝 164原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值