第十四届蓝桥杯JavaB组省赛真题 - 蜗牛

dp[i][0] 状态转移方程:

1. 从上一个竹竿的底部转移过来,即:
dp[i][0]=dp[i−1][0]+x[i]−x[i−1];
2. 从上一个竹竿的传送门转移过来,即:
dp[i][0]=dp[i−1][1]+b[i]/1.3;

dp[i][1] 状态转移方程:

1. 从上一个竹竿的底部转移过来,即:
dp[i][1]=dp[i−1][0]+x[i]−x[i−1]+a[i]/0.7;

2.从上一个竹杠传送门过来:

需要判断上一个竹杠传送门过来后是在当前竹杠传送门上分还是下方,在当前竹杠传送门上分就需要向下移动,否则反之。

a[i]>b[i]
                dp[i][1] = Math.min(dp[i-1][0] + x[i]-x[i-1] + a[i]/0.7, dp[i-1][1] + (a[i]-b[i])/0.7);
b[i]>=a[i]
                dp[i][1] = Math.min(dp[i-1][0] + x[i]-x[i-1] + a[i]/0.7,dp[i-1][1] + (b[i]-a[i]) /1.3);

注意:

数组a的下标是从一开始的,而数组b的下标是从二开始的。

import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] x = new int[n+1];
        int[] a = new int[n+1];
        int[] b = new int[n+1];
        for(int i = 1;i<=n;i++){
            x[i] = sc.nextInt();
        }
        for(int i = 1;i<n;i++){
            a[i] = sc.nextInt();
            b[i+1] = sc.nextInt();
        }

        double[][] dp = new double[n+1][2];
        dp[1][0] = x[1];
        dp[1][1] = x[1] + a[1]/0.7;

        for(int i = 2;i <= n;i++){
            if(a[i]>b[i]){
                dp[i][1] = Math.min(dp[i-1][0] + x[i]-x[i-1] + a[i]/0.7, dp[i-1][1] + (a[i]-b[i])/0.7);
            }else {
                dp[i][1] = Math.min(dp[i-1][0] + x[i]-x[i-1] + a[i]/0.7,dp[i-1][1] + (b[i]-a[i]) /1.3);
            }
            dp[i][0] = Math.min(dp[i-1][1] +b[i]/1.3 ,dp[i-1][0]+x[i]-x[i-1]);

        }
        System.out.printf("%.2f",dp[n][0]);
    }
}


 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java集合框架-读书笔记

Java集合框架 数据结构是以某种形式将数据组织在一起的集合。数据结构不仅可以存储数据 并且可以对数据进行访问和处理操作。 eg&#xff1a;Arraylist是将数据保存在线性表的数据结构 其实java中还提供了一些第一数据进行操作和存储的数据结构 这些数据结构被称为 java集合…

如何使用phpStudy在Windows系统部署静态站点并实现无公网IP远程访问

文章目录 使用工具1. 本地搭建web网站1.1 下载phpstudy后解压并安装1.2 打开默认站点&#xff0c;测试1.3 下载静态演示站点1.4 打开站点根目录1.5 复制演示站点到站网根目录1.6 在浏览器中&#xff0c;查看演示效果。 2. 将本地web网站发布到公网2.1 安装cpolar内网穿透2.2 映…

并发编程之interrupt方法的详细解析

3.9 interrupt方法详解 Interrupt说明 interrupt的本质是将线程的打断标记设为true&#xff0c;并调用线程的三个parker对象&#xff08;C实现级别&#xff09;unpark该线程。 基于以上本质&#xff0c;有如下说明&#xff1a; 打断线程不等于中断线程&#xff0c;有以下两种…

hcia静态实验

题目&#xff1a; 要求&#xff1a; 1、R6为isp&#xff0c;接口ip均为公有地址&#xff0c;该设备只能配置ip地址&#xff0c;之后不能再对其进行任何其他配置 2、r1到r5为局域网&#xff0c;私有ip地址为192.168.1.0 24&#xff0c;合理分配 3、r1,r2,r4各有两个环回地址&am…

python基础——语句

一、条件语句 就是 if else 语句 &#xff01; 代表不等于 代表等于if 关键字&#xff0c;判断语句&#xff0c;有“如果”的意思&#xff0c;后面跟上判断语句else 常和“if” 连用&#xff0c;有“否则”的意思&#xff0c;后面直接跟上冒号 …

探秘空投女巫:区块链世界的神秘现象

在区块链世界中&#xff0c;充满了各种新奇的名词和概念&#xff0c;其中一个引人注目的现象就是“空投女巫”。这个神秘的名字让人不禁好奇&#xff0c;究竟是什么&#xff1f; 什么是空投女巫&#xff1f; 空投女巫是指那些在区块链项目中频繁参与空投活动&#xff0c;并且…

[Netty实践] 简单聊天实现(四):Server集群改造

目录 一、介绍 二、解决方案 三、server端改造 五、客户端改造 四、测试 五、拓展 一、介绍 本章是拓展内容&#xff0c;主要实现的是Server集群。 当系统的用户多了之后&#xff0c;单机Server资源有限&#xff0c;无法提供socket连接时&#xff0c;我们需要部署Serve…

[Linux]多线程(在Linux中的轻量级进程(LWP),怎么使用线程(接口))

目录 一、在Linux中的轻量级进程&#xff08;LWP&#xff09; 二、多线程的接口 1.创建线程&#xff08;pthread_create&#xff09; 2.线程ID&#xff08;pthread_self&#xff09; 3.线程终止 终止某个线程而不终止整个进程的三种方法&#xff1a; return pthread_…

Python Windows系统 虚拟环境使用

目录 1、安装 2、激活 3、停止 1、安装 1&#xff09;为项目新建一个目录&#xff08;比如&#xff1a;目录命名为learning_log&#xff09; 2&#xff09;在终端中切换到这个目录 3&#xff09;执行命令&#xff1a;python -m venv ll_env&#xff0c;即可创建一个名为ll…

基于ssm的医院住院管理系统论文

摘 要 随着时代的发展&#xff0c;医疗设备愈来愈完善&#xff0c;医院也变成人们生活中必不可少的场所。如今&#xff0c;已经2021年了&#xff0c;虽然医院的数量和设备愈加完善&#xff0c;但是老龄人口也越来越多。在如此大的人口压力下&#xff0c;医院住院就变成了一个问…

YOLOv2学习

YOLOv2学习 引入 Anchor boxes摘要数据集组合方法&#xff08;Dataset Combination Method&#xff09;联合训练算法&#xff08;Joint Training Algorithm&#xff09;改进Batch NormalizationHigh Resolution Classifier分类器预训练分辨率调整**Convolutional With Anchor B…

鸿蒙Harmony应用开发—ArkTS-全局UI方法(警告弹窗)

显示警告弹窗组件&#xff0c;可设置文本内容与响应回调。 说明&#xff1a; 从API Version 7开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版本。 本模块功能依赖UI的执行上下文&#xff0c;不可在UI上下文不明确的地方使用&#xff0c;参见UI…

云手机为电商提供五大出海优势

出海电商行业中&#xff0c;各大电商平台的账号安全是每一个电商运营者的重中之重&#xff0c;账号安全是第一生产力&#xff0c;也是店铺运营的基础。因此多平台多账号的防关联管理工具成了所有电商大卖家的必备工具。云手机最核心的优势就是账户安全体系&#xff0c;本文将对…

网络仿真3-NS2协议修改和移植

Ns2实现原理 OTcl与C关联 执行路径&#xff1a;Tcl->Otcl->C 返回路径&#xff1a;C->Otcl->Tcl NS2协议修改和移植 NS2中的各种网络协议在底层通过C实现&#xff0c;在网络仿真过程中最终通过调用底层C代码实现网络行为、算法、功能等各种仿真 NS2协议修改&…

vue3+threejs新手从零开发卡牌游戏(三):尝试在场景中绘制一张卡牌

首先我们思考下&#xff0c;一张最简单的卡牌有哪些东西构成&#xff1a;卡牌样式和卡牌数据。一张卡牌有正面和背面&#xff0c;有名称、属性、种族、攻击力等数据&#xff0c;我们先不考虑数据&#xff0c;先尝试在场景中绘制一张卡牌出来。 一、寻找卡牌素材 为了简单我直…

2024第二届经济管理、贸易与信息技术创新国际会议(ICEMITI2024)

2024第二届经济管理、贸易与信息技术创新国际会议&#xff08;ICEMITI2024&#xff09; 会议简介 2024第二届经济管理、贸易与信息技术创新国际会议&#xff08;ICEMITI2024&#xff09;将在中国郑州举行。这是一个重要的学术会议&#xff0c;旨在讨论当前经济管理、贸易和信…

python中类的导入与使用

1、类的介绍 与C中面向对象思想类似&#xff0c;有时候为了方便&#xff0c;需要专门创建一个类&#xff0c;将相关的函数全部写入到该类中&#xff0c;方便后续创建对象&#xff0c;再使用类中函数。那么如何创建完类&#xff0c;在其他文件中使用类中函数&#xff0c;这是这篇…

Design Script 官方案例解析3:函数

在本练习中,我们将创建一个通用定义,该定义将通过输入的点列表创建球体。这些球体的半径由每个点的 Z 特性驱动。 首先从 0 到 100 的十个值范围开始。将这些值插入 Point.ByCoordinates 节点,以创建对角线。 创建代码块,然后使用一行代码引入定义:def sphereByZ(inputPt)…

“找不到msvcr100.dll”或“msvcr100.dll丢失”的多种解决方法分享

当计算机系统中msvcr100.dll文件发生丢失时&#xff0c;导致某些应用程序无法正常运行。msvcr100.dll是Microsoft Visual C Redistributable Package的一部分&#xff0c;对于许多基于Windows操作系统的应用程序正常运行至关重要。小编将介绍5种解决msvcr100.dll丢失问题的方法…

LeetCode-热题100:17.电话号码的字母组合

题目描述 给定一个仅包含数字 2-9 的字符串&#xff0c;返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下&#xff08;与电话按键相同&#xff09;。注意 1 不对应任何字母。 示例 1&#xff1a; 输入&#xff1a; digits “23” 输出&a…