P2690 [USACO04NOV] Apple Catching G

这篇具有很好参考价值的文章主要介绍了P2690 [USACO04NOV] Apple Catching G。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

[P2690 USACO04NOV] Apple Catching G - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

问题描述:

​ 有两个位置,初始在位置1。在T分钟内,每分钟两个位置之一会掉落苹果,在位置1和位置2有W次转换。求T分组内,最多可获得多少个苹果。

转移方程:
F ( i , j , 0 ) = m a x ( F ( i − 1 , j , 0 ) + A [ i ] , F ( i − 1 , j − 1 , 1 ) + B [ i ] ) F ( i , j , 1 ) = m a x ( F ( i − 1 , j , 1 ) + B [ i ] , F ( i − 1 , j − 1 , 0 ) + A [ i ] ) F(i,j,0) = max(F(i-1, j,0) + A[i], F(i-1,j-1,1) + B[i]) \\ F(i,j,1) = max(F(i-1, j,1) + B[i], F(i-1,j-1,0) + A[i]) F(i,j,0)=max(F(i1,j,0)+A[i],F(i1,j1,1)+B[i])F(i,j,1)=max(F(i1,j,1)+B[i],F(i1,j1,0)+A[i])
状态表示:

F(i,j,k),k表示在那个位置,k = 0时表示在位置1,k = 1时表示在位置2。F(i,j, k)表示在位置k时i分钟内用了j次转换的最大价值。

边界:
F ( i , 0 , 0 ) = F ( i , 0 , 0 ) + A [ i ] F(i,0,0) = F(i,0,0) + A[i] F(i,0,0)=F(i,0,0)+A[i]
不清楚这个算不算是边界,但是个人感觉是一个边界,(可能边界也有可能是一段

目标:
m a x 0 ≤ k ≤ W ( F ( T , k , 1 ) , F ( T , k , 0 ) ) max_{0 \leq k \leq W}(F(T,k,1), F(T,k,0)) max0kW(F(T,k,1),F(T,k,0))
代码:文章来源地址https://www.toymoban.com/news/detail-646766.html

void solve() {
    int t,w; cin>>t>>w;
    for(int i = 0; i < t; ++i) {
        int k; cin>>k;
        if(k == 1) {
            A[i + 1] = 1; 
        } else B[i + 1] = 1;
    }
    f[1][0][0] = A[1];
    for(int i = 1; i <= t; ++i) {
        for(int j = 0; j <= w; ++j) {
            if(j == 0) {
                f[i][j][0] = f[i-1][j][0] + A[i];
            } else {
                f[i][j][0] = max(f[i-1][j][0] + A[i], f[i-1][j-1][1] + B[i]);
                f[i][j][1] = max(f[i-1][j][1] + B[i], f[i-1][j-1][0] + A[i]);
            }
        }
    }
    int ma = -INF;
    for(int i = 0; i <= w; ++i) {
        ma = max(ma, f[t][i][0]);
        ma = max(ma, f[t][i][1]);
    }
    cout<<ma;
}

到了这里,关于P2690 [USACO04NOV] Apple Catching G的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【数据结构与算法】04 哈希表 / 散列表 (哈希函数、哈希冲突、链地址法、开放地址法、SHA256)

    一种很好用,很高效,又一学就会的数据结构,你确定不看看? 莫慌,每个概念都很好理解。 哈希表( Hash Table ),也称为 散列表 ,是一种数据结构, 用于存储键值对(key-value pairs) 。 键值对是一种数据结构,用于将键(key)与对应的值(value)相关联。在键值对中,键

    2024年02月09日
    浏览(63)
  • 青岛大学_王卓老师【数据结构与算法】Week04_11_案例分析与实现1_学习笔记

    本文是个人学习笔记,素材来自青岛大学王卓老师的教学视频。 一方面用于学习记录与分享,另一方面是想让更多的人看到这么好的《数据结构与算法》的学习视频。 如有侵权,请留言作删文处理。 课程视频链接: 数据结构与算法基础–第04周11–2.8案例分析与实现1–多项

    2024年02月12日
    浏览(39)
  • 青岛大学_王卓老师【数据结构与算法】Week04_08_线性表的应用1_学习笔记

    本文是个人学习笔记,素材来自青岛大学王卓老师的教学视频。 一方面用于学习记录与分享,另一方面是想让更多的人看到这么好的《数据结构与算法》的学习视频。 如有侵权,请留言作删文处理。 课程视频链接: 数据结构与算法基础–第04周08–2.7线性表的应用1–线性表

    2024年02月12日
    浏览(30)
  • Java Catching and Handling Exceptions(二)

    try with resources语句是声明一个或多个资源的try语句。资源是程序使用完后必须关闭的对象。try with resources语句确保在语句末尾关闭每个资源。任何实现java.lang.AutoCloseable的对象(包括实现java.io.Closeable的所有对象)都可以用作资源。 下面的示例从文件中读取第一行。它使用B

    2024年02月04日
    浏览(21)
  • 2023年程序员数据报告:全球有 2690 万程序员,近一半不到35岁,Rust是最受期待的编程语言

    软件开发行业几乎是发展最快的行业,本报告为大家提供一份最新的程序员行业统计数据列表,帮助大家及时了解当前和未来的趋势,提供一个观察与展望全球程序员生态的交流平台。 本报告国内部分根据程序员客栈的数据模型估算而得,全球数据根据Evans Data、GitHub、Stac

    2023年04月17日
    浏览(39)
  • 用python实现基本数据结构【04/4】

            如果需要用到这些知识却没有掌握,则会让人感到沮丧,也可能导致面试被拒。无论是花几天时间“突击”,还是利用零碎的时间持续学习,在数据结构上下点功夫都是值得的。那么Python 中有哪些数据结构呢?列表、字典、集合,还有……栈?Python 有栈吗?本系列

    2024年02月09日
    浏览(29)
  • 8.3day04git+数据结构

    一个免费开源,分布式的代码版本控制系统,帮助开发团队维护代码 作用:记录代码内容,切换代码版本,多人开发时高效合并代码内容 安装git软件 如何创建git仓库 将本地文件夹转换成git仓库 从其他服务器上面拷贝git文件 创建git本地仓库 git@gitee.com:z-zhou-xin/sky_take_out.git

    2024年02月13日
    浏览(32)
  • TEE GP(Global Platform)安全认证方案 TEE之GP(Global Platform)认证汇总

    安全之安全(security²)博客目录导读  TEE之GP(Global Platform)认证汇总 目录 一、安全认证介绍 二、Protection Profile介绍 三、安全认证测试套和测试工具 四、参与安全认证         GlobalPlatform的安全认证计划通过独立的安全评估,确认安全组件是否符合通用标准认可的Protection

    2024年02月15日
    浏览(48)
  • 浙大数据结构之04-树4 是否同一棵二叉搜索树

    给定一个插入序列就可以唯一确定一棵二叉搜索树。然而,一棵给定的二叉搜索树却可以由多种不同的插入序列得到。例如分别按照序列{2, 1, 3}和{2, 3, 1}插入初始为空的二叉搜索树,都得到一样的结果。于是对于输入的各种插入序列,你需要判断它们是否能生成一样的二叉搜

    2024年02月16日
    浏览(28)
  • 浙大数据结构第四周之04-树6 Complete Binary Search Tree

    A Binary Search Tree (BST) is recursively defined as a binary tree which has the following properties: The left subtree of a node contains only nodes with keys less than the node\\\'s key. The right subtree of a node contains only nodes with keys greater than or equal to the node\\\'s key. Both the left and right subtrees must also be binary search trees. A Comple

    2024年02月16日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包