蓝桥杯-数组切分

问题描述
已知一个长度为 N 的数组: A1,A2,A3,...AN 恰好是1~ N的一个排列。现 在要求你将 4 数组切分成若干个 (最少一个,最多 N 个)连续的子数组,并且 每个子数组中包含的整数恰好可以组成一段连续的自然数。
例如对于 4 = 1,3,2,4,一共有 5 种切分方法:
1324:每个单独的数显然是(长度为 1的)一段连续的自然数。
{1}{3,2}{4}:{3,2}包含2到3,是 一段连续的自然数,另外 1 和 4 显然 也是。
{1}{3,2,4}:{3,2,4}包含2到4,是一段连续的自然数,另外1显然也是。
{1,3,2}{4}:{1,3,2}包含1到3,是 一段连续的自然数,另外 4 显然也是。
{1,3,2,4}:只有一个子数组,包含1到4,是 一段连续的自然数。
输入格式
第一行包含一个整数 N 。第二行包含 N 个整数,代表 4 数组。
输出格式
输出一个整数表示答案。由于答案可能很大,所以输出其对1000000007 取 模后的值


样例输入
样例输出
评测用例规模与约定
对于 30% 评测用例,1<N<20.
对于 100% 评测用例,1<N<10000
运行限制
最大运行时间:5s。
最大运行内存:512M

import java.util.Scanner;
public class Main {static int mod = 1000000007;public static void main(String[] args) {Scanner scan=new Scanner(System.in);int n=scan.nextInt();int[] a=new int[n+1];for (int i=1;i<=n;i++) a[i]=scan.nextInt();//dp[i]:以a[i]结尾的切分合法数组的方法数量int[] dp=new int[n+1];dp[0]=1;//初始化for (int i=1;i<=n;i++){int max=Integer.MIN_VALUE,min=Integer.MAX_VALUE;//注意初始化:max是小的,min是大的for (int j=i;j>0;j--){max =Math.max(max,a[j]);min =Math.min(min,a[j]);if (max-min==i-j) dp[i]=(dp[i]+dp[j-1])%mod;}}System.out.println(dp[n]);}
}

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

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

相关文章

卫星影像联合无人机实现农业保险全生命周期监管监测

随着科技的进步&#xff0c;农业保险监管系统的发展日新月异。特别是近年来&#xff0c;随着卫星技术与无人机技术的结合&#xff0c;为农业保险监管系统带来了前所未有的革新。本文将深入探讨如何利用卫星与无人机方案构建高效的农业保险监管系统&#xff0c;并结合实例进行说…

迷宫-蓝桥602-bfs-2019省赛

代码 #include<iostream> #include<queue> using namespace std;struct node{int x,y;string path; }; char mp[31][51]; char k[]{D,L,R,U};//要走的路径标记 int dir[4][2]{{1,0},{0,-1},{0,1},{-1,0}};//wangleba int vis[30][50];//记录走没走void bfs(){node…

Dart 中 JS 互操作的历史

由于在 Dart 3.3 中达到了令人兴奋的 JavaScript 互操作里程碑&#xff0c;Wasm 的支持刚刚登陆当前的 Flutter 测试版。为了庆祝这一里程碑&#xff0c;我们回顾了 Dart 和 JavaScript 互操作性长达十年的历程。 从 Dart 诞生之初&#xff0c;互操作性就是一个核心重点。2011…

【笔记】Teach less, learn more

文章目录 核心概念针对学习的理念知识高级知识生成器&#xff1a;WHWM四问基础知识与导出知识 案例小学数学小学语文经济学教育学物理学 核心概念 学习方法&#xff1a;以学科大图景为目标的以批判性思维和系联性思考为指导的理解型学习。 学科大图景&#xff1a;一个学科大概…

hashmap ArrayList基础使用 java

hashmap 1 hashmap1.1 hashmap基础使用1.2 遍历hashmap 2 ArrayList2.1 ArrayList基础使用2.2 ArrayList遍历 |--> Collection接口: 单列集合&#xff0c;用来存储一个一个对象。--> list接口:存储有序&#xff0c;可重复的数据。--> ArrayList、LinkList vector-->…

golangci-lint 报错

File is not gci-ed with --skip-generated -s standard,default (gci) golangci-lint 报错上面的错解决办法&#xff1a; 1. 文件换行需要换成"LF" 而不是"CRLF" ---->>> 我用的goland IDE&#xff0c;随便在这个文件删除一个空行&#xff…

20240412,引用,函数高级

老子什么时候能找到一个很爱我还和我一样喜欢看日出日落的对象 一&#xff0c;引用 给变量起别名&#xff0c;数据类型 & 别名原名&#xff1b;引用一定要初始化&#xff0c;初始化之后不能更改 #include <iostream> using namespace std; int main() {int a 10;i…

基于STM32技术的智慧超市系统研究

基于STM32技术的智慧超市系统研究 **摘要&#xff1a;**随着物联网技术的飞速发展&#xff0c;智慧超市作为零售业的一种新兴模式&#xff0c;正越来越受到关注。本文以STM32技术为基础&#xff0c;设计并实现了一套智慧超市系统。论文详细介绍了系统的架构、功能设计以及实现…

导入导出之使用EasyExcel快速进行表格导出

使用 EasyExcel 快速进行表格导入导出操作 在日常工作中&#xff0c;表格的导入和导出是常见的需求。针对这种情况&#xff0c;EasyExcel 提供了便捷的解决方案&#xff0c;可以快速地实现 Excel 表格的导入和导出操作。本文将介绍如何使用 EasyExcel 进行表格导出&#xff0c…

Linux权限的讲解

目录 1、用户的分级 2、用户的身份 3、文件的权限属性 3.1 文件类型 4、chmod 4.1 用八进制形式更改权限 5、chown与chgrp 6、umask 结语 前言&#xff1a; 在Linux下虽然一切都是文件&#xff0c;但是由于文件的权限不一样&#xff0c;导致访问或更改文件存在局限性…

MySQL 常见和不常见的所有查询语句

介绍&#xff1a; MySQL 是一个功能强大的关系型数据库管理系统&#xff0c;支持丰富的查询语句&#xff0c;用于从数据库中检索、插入、更新和删除数据。本文将介绍 MySQL 中常见和不常见的所有查询语句&#xff0c;并为每个语句提供示例。 常见查询语句&#xff1a; 1.sel…

Web App 入门指南:构建预测模型 App 的利器(shiny)

Web App 入门指南&#xff1a;构建预测模型 App 的利器 简介 近年来&#xff0c;随着机器学习和人工智能技术的快速发展&#xff0c;预测模型在各行各业得到了广泛应用。为了方便地部署和使用预测模型&#xff0c;将模型构建成 Web App 是一种非常好的选择。Web App 无需下载…

【leetcode面试经典150题】29.三数之和(C++)

【leetcode面试经典150题】专栏系列将为准备暑期实习生以及秋招的同学们提高在面试时的经典面试算法题的思路和想法。本专栏将以一题多解和精简算法思路为主&#xff0c;题解使用C语言。&#xff08;若有使用其他语言的同学也可了解题解思路&#xff0c;本质上语法内容一致&…

Bitmap OOM

老机器Bitmap预读仍然OOM&#xff0c;无奈增加一段&#xff0c;终于不崩溃了。 if (Build.VERSION.SDK_INT < 21)size 2; 完整代码&#xff1a; Bitmap bitmap; try {//Log.e(Thread.currentThread().getStackTrace()[2] "", surl);URL url new URL(surl);…

salesforce为不同的profile设置不同的域名,不同域名之间账号不互通

在Salesforce中&#xff0c;你可以通过设置不同的 My Domain 来实现不同的 profile 使用不同的域名&#xff0c;并确保这些域名之间的账号不互通。My Domain 是 Salesforce 提供的定制域名功能&#xff0c;允许你为 Salesforce 组织设置自定义的域名。 以下是一般的步骤&#…

nginx配置nacos返向代理

要配置Nginx作为反向代理服务器以便通过https访问Nacos集群&#xff0c;并且同时支持http到https的重定向&#xff0c;你需要编写一个Nginx配置文件。这个配置文件不仅需要处理SSL终端和重定向&#xff0c;还需要将流量代理到你的Nacos集群。 以下是一个基本的Nginx配置示例&a…

python|map

# 定义一个平方函数 def square(x): return x ** 2 # 创建一个数字列表 numbers [1, 2, 3, 4, 5] # 使用 map 函数将平方函数应用于列表中的每个元素 squares map(square, numbers) #将numbers绑定上一个函数 print(type(square)) print(square)# 将结果转换为列表…

【Hadoop】Hive导入导出数据指南

穿新衣吧 剪新发型呀 轻松一下Windows98 打扮漂亮 18岁是天堂 我们的生活甜得像糖 穿新衣吧 剪新发型呀 轻松一下Windows98 以后的路不再会有痛苦 我们的未来该有多酷 &#x1f3b5; 房东的猫《new boy》 Apache Hive 是一个基于Hadoop的数据仓库工具&…

【CSS】背景模糊,不模糊主体文字

问题 背景模糊&#xff0c;不模糊文本 效果图 t1 t2 t3 实现思路 自定义css变量存储图片地址&#xff0c;方便后期更改使用伪元素实现背景模糊达到不遮挡主体文本 transform: scale(1.5)吧图片放大1.5倍&#xff0c;避免设置背景模糊出现白边。 overflow: hidden 超出隐藏&…

上海人工智能实验室的书生·浦语大模型学习笔记(第二期第三课——下篇)

书生浦语是上海人工智能实验室和商汤科技联合研发的一款大模型&#xff0c;这次有机会参与试用&#xff0c;特记录每次学习情况。 一、基础作业 2、在 InternLM Studio 上部署茴香豆技术助手 本次选用 InternLM2-Chat-7B 作为本地基础模型&#xff0c;同时用智浦的GLM作为远…