当前位置: 首页 > news >正文

小红的好数组陡峭值之和

题目如下
在这里插入图片描述
这个题我一开始是先生成满足0,1,2的全排列,但是n很大时很快就超出内存限制了,后来想到用动态规划的方法做,这里先分析一下。
n=2时,有01,02,10,12,20,21共6项,
n=3时,有010,012,020,021…共12项
容易推导出,n=m时,有3 * Math.pow(2, m-1)项
这里我们先定义一个数组f (n, i)表示第n组中以i结尾的所有数组的权值之和,比如
f(2,0)有10, 20两项,权值之和是1+2=3
f(2,1)有01,21两项,权值之和是1+1=2
同理f(2,2)=3
这几个就是我们的初始条件了
那f(n,0)怎么推到呢,0只能加在1和2的后面,如果加在1后面,如*** 10,增加的权值是1, 如果是增加在2后面,如*** 20,增加的权值是2,假设n-1组中以0结尾的数组有count个,那么增加的权值就是1 * count, 假设n-1组中以2结尾的数组有count个,那么增加的权值就是2 * count, 这里就可以写出推导式f(n,0) = f(n-1) + count * 1 + f(n-2) + 2 * count, 其他也这样推导出来。代码如下

    public int fun (int m) {final int MAX = (int) Math.pow(10, 7);// 容易归纳出// n= 2时,有6个数组// n= 3时,有12个数组// n= m时,有3*math.pow(2,n-1)个数组int[][] array= new int[m+1][3]; // array[n][i]表示第n组以i结尾的数组的权值array[2][0] = 3; // 10,20array[2][1] = 2; // 01,21array[2][2] = 3; // 02,12for (int n = 3; n < m+1; n++) {int count = (int) Math.pow(2, n-2); // n-1组中分别以以0,1,2结尾的各有多少项// 第n组中以0结尾的分别是由上一组中以1和2结尾的组成// 将0添加在1后面权值+1, 共有count项,总权制增加count*1// 将0添加在2后面权值+2, 共有count项,总权制增加count*2, 其他的类推array[n][0] = (count*1 + array[n-1][1]) + (count*2 + array[n-1][2]) % MAX;array[n][1] = (count*1 + array[n-1][0]) + (count*1 + array[n-1][2]) % MAX;array[n][2] = (count*2 + array[n-1][0]) + (count*1 + array[n-1][1]) % MAX;}return (array[m][0] + array[m][1] + array[m][2]) % MAX;}

相关文章:

小红的好数组陡峭值之和

题目如下 这个题我一开始是先生成满足0&#xff0c;1&#xff0c;2的全排列&#xff0c;但是n很大时很快就超出内存限制了&#xff0c;后来想到用动态规划的方法做&#xff0c;这里先分析一下。 n2时&#xff0c;有01&#xff0c;02&#xff0c;10&#xff0c;12&#xff0c;2…...

MySQL中存储具有不定列的数据-EAV模型

当需要在MySQL中存储具有不定列的数据时&#xff0c;一种常见的解决方案是使用EAV&#xff08;Entity-Attribute-Value&#xff09;模型。EAV模型允许灵活地存储不同实体的不同属性&#xff0c;适用于属性数量不确定的情况。本文将介绍如何使用Java和MySQL来实现EAV模型的存储和…...

COM接口规则的存在是有原因的

可能有些人认为接口上的 COM 接口规则没有必要设计的那么严格&#xff0c;但我想说的是&#xff0c;这些规则的存在是有原因的。 假设你在你的产品代码中新增加了版本号为 N 的接口&#xff0c;由于这个接口是内部使用的&#xff0c;没有任何公开文档。所以你可以随意修改它&a…...

并行分布式计算 并行计算性能评测

文章目录 并行分布式计算 并行计算性能评测基本性能指标参数CPU 基本性能指标存储器性能并行与存储开销 加速比性能定律Amdahl 定律Gustafson 定律Sun 和 Ni 定律加速比讨论 可括放性评测标准等效率度量标准等速度度量标准平均延迟度量标准 基准评测程序&#xff08;Benchmark&…...

[网络安全]XSS之Cookie外带攻击姿势及例题详析

[网络安全]XSS之Cookie外带攻击姿势及例题详析 概念姿势及Payload启动HTTP协议 method1启动HTTP协议 method2 例题详析Payload1Payload2window.open 总结 本文仅分享XSS攻击知识&#xff0c;不承担任何法律责任。 本文涉及的软件等请读者自行安装&#xff0c;本文不再赘述。 概…...

Angular之创建项目报错:setTimeout is not defined

零基础的宝们&#xff0c;跟着视频学习Angular中&#xff0c;会教授大家如何创建一个新项目。 但是在操作时就会遇到无法创建的问题。 接下来我们一起来看看&#xff0c;本人Angular起步时卡在家门口的问题。 在已经安装了nodejs的情况下&#xff0c;被建议使用cnpm命令全局安装…...

python实现神经网络之---构建神经元模型1(python3.7)

本文主要要以周志华的机器学习书为蓝本编写 第5章神经网络 5.1python 实现神经元模型 神经网络中最基本的成分是神经元 (neuro且)模型&#xff0c;如下图所示&#xff1a; 1943 年&#xff0c; [McCulloch and Pitts, 1943] 将上述情形抽象为国 5.1所示的简单模型&#xff0c…...

前端面试题 —— JavaScript (三)

一、JavaScript有哪些内置对象 全局的对象&#xff08; global objects &#xff09;或称标准内置对象&#xff0c;不要和 "全局对象&#xff08;global object&#xff09;" 混淆。这里说的全局的对象是说在全局作用域里的对象。全局作用域中的其他对象可以由用户的…...

【openGauss】一键编译openGauss5.0+dolphin,体验新增的mysql兼容特性

脚本 新建一个/opt/onekey-build-og.sh文件&#xff0c;存入以下内容 #!/bin/bash # 环境 centos 7.9 4C 8G (配置越高编译越快&#xff0c;4G内存编译不了&#xff0c;磁盘大概需要14GB) # 安装一些依赖 &#xff08;libaio-devel如果不卸载重装&#xff0c;可能会找不到io_c…...

【LeetCode - 每日一题】1073. 负二进制数相加 (2023.05.18)

1073. 负二进制数相加 题意 基数为 -2 。实现两个 0/1 数组串的加法。 解法 这是一道模拟题。 设 arr1[i] 和 arr2[i] 是数组 arr1 和 arr2 从低到高的第 i 位数。 首先回顾普通的二进制数的相加&#xff0c;从低位开始计算&#xff0c;在计算的同时维护用一个变量 carry…...

软件上线会面临哪些缺陷?这四种你一定很熟悉

上线对任何软件产品来说都是一件大事&#xff0c;确保一切正常并且向用户发布高质量的软件非常重要。劣质、过早、不稳定、难以使用的产品会产生大量经济损失&#xff0c;也可能使用户对品牌本身失去信任。一直以来&#xff0c;我们都说应该测试&#xff0c;应该将缺陷修复到可…...

html监听界面被隐藏或显示

vue相比于小程序和uni-app 显然少了两个有点用的生命周期 onShow 应用被展示 onHide 应用被隐藏 但其实这个 要做其实也很简单 JavaScript中 有对应的visibilitychange事件可以监听 我们Html参考代码如下 <!DOCTYPE html> <html lang"en"> <head>…...

Springboot启动失败 DB连不上竟然是maven配置的问题

Springboot启动失败&#xff1a;Failed to instantiate [javax.sql.DataSource]。 最开始以为是DB版本后&#xff0c;需要升级驱动版本&#xff0c;但更新驱动版本还是不行&#xff0c;而且另外一个项目同样驱动同样配置可以启动。 后面发现代码读取不到yml文件中的配置信息。…...

P9234 [蓝桥杯 2023 省 A] 买瓜 题解

题目传送门 前言 说实话这题根本用不到什么折半……&#xff0c;今天看机房大佬写了半天加了一堆剪枝还以为很难&#xff0c;其实是你们想复杂了 20分钟不到从看题到代码实现 这题其实只需要可行性剪枝加排序 哦还有个后缀和 进入正题 小木棍子都听说过吧 没错就是小波上…...

ThingsBoard自定义分发节点duplicate to related

------------------------------------内容仅博主所有,订阅者请勿泄露,感谢--------------------- 1、概述 大家好,我又更新干货了,还是那句话,我绝不像某些博主“拿我格子衫”分享那些照抄官网翻译的东西来骗订阅,我觉得那是浪费时间,要搞就搞干货,今天给大家分享Th…...

vim自动更新ctags与taglist

vim的 ctags 和 taglist 在默认情况下是不进行自动更新的&#xff0c;这对于编写代码是非常不方便的&#xff0c;好在vim的脚本还是很强大的&#xff0c;于是在vimrc中添加如下函数&#xff1a; function! UpdateCtags()let curdirgetcwd()while !filereadable("./tags&qu…...

linux查看日志常用命令,动态日志命令

linux查看日志命令&#xff0c;动态日志命令&#xff1a; tail&#xff1a; -n是显示行号&#xff1b;相当于nl命令&#xff1b;例子如下&#xff1a; tail -100f test.log 实时监控100行日志。 tail -n 10 test.log 查询日志尾部最后10行的日志。 tail -…...

分段存储管理方式

目录 一、分段存储管理方式的引入的需求: 1.方便编程 2.信息共享 3.信息保护 4.动态增长 5.动态链接 二、分段系统的基本原理 1.分段 2.段表 3.地址变换机构 4.分页与分段的主要区别 三、信息共享 四、段页式存储管理方式 1.基本原理 2.地址变换过程 分段与分页…...

将nacos从本地切换到远程服务器上时报错:客户端端未连接,Client not connected

报错信息&#xff1a; 09:34:38.438 [com.alibaba.nacos.client.Worker] ERROR com.alibaba.nacos.common.remote.client - Send request fail, request ConfigBatchListenRequest{headers{charsetUTF-8, Client-AppNameunknown, Client-RequestToken65c0fbf47282ae0a7b85178…...

系统掌握入河排污口设置论证技术、方法及报告编制框架

在短时间内较系统的掌握入河排污口设置论证技术、方法及报告编制框架&#xff0c;学习内容以城镇生活污水厂、造纸项目、石化项目、制药项目案例为线索&#xff0c;系统讲解入河排污口设置论证报告书编制过程&#xff0c;并以水质模型为手段&#xff0c;讲解水质影响预测模型的…...

从零开始:如何用AVX和AVX2内在函数让你的C程序性能翻倍 [特殊字符]

从零开始&#xff1a;如何用AVX和AVX2内在函数让你的C程序性能翻倍 &#x1f680; 【免费下载链接】AVX-AVX2-Example-Code Example code for Intel AVX / AVX2 intrinsics. 项目地址: https://gitcode.com/gh_mirrors/avx/AVX-AVX2-Example-Code 你是否曾想过&#xff…...

如何快速解密QQ音乐加密文件:终极QMC解密工具完全指南

如何快速解密QQ音乐加密文件&#xff1a;终极QMC解密工具完全指南 【免费下载链接】qmc-decoder Fastest & best convert qmc 2 mp3 | flac tools 项目地址: https://gitcode.com/gh_mirrors/qm/qmc-decoder 你是否曾经下载了QQ音乐的文件&#xff0c;却发现在其他播…...

千问3.5-2B实战落地:制造业设备铭牌OCR+故障代码映射+维修建议生成一体化流程

千问3.5-2B实战落地&#xff1a;制造业设备铭牌OCR故障代码映射维修建议生成一体化流程 1. 制造业设备维护的痛点与解决方案 在制造业设备维护场景中&#xff0c;工程师们经常面临三大挑战&#xff1a; 设备铭牌识别困难&#xff1a;老旧设备铭牌模糊不清&#xff0c;手抄记…...

Chandra OCR优化技巧:单卡环境配置,提升推理速度与稳定性

Chandra OCR优化技巧&#xff1a;单卡环境配置&#xff0c;提升推理速度与稳定性 1. 为什么单卡用户需要特别优化 许多开发者在尝试部署Chandra OCR时遇到一个典型问题&#xff1a;官方文档中提到的"两张卡&#xff0c;一张卡起不来"的提示。这并非产品缺陷&#x…...

通义千问2.5-7B新手入门:vLLM+WebUI镜像,手把手教你搭建智能问答系统

通义千问2.5-7B新手入门&#xff1a;vLLMWebUI镜像&#xff0c;手把手教你搭建智能问答系统 1. 引言&#xff1a;从零开始&#xff0c;10分钟拥有你的AI助手 你是不是也对大语言模型充满好奇&#xff0c;想亲手搭建一个属于自己的智能问答系统&#xff0c;但又觉得技术门槛太…...

其实我现在对于app广告拦截不是很在意-----因为国外app是绝对不允许出现摇一摇的

国外的APP只有点击指定按钮才允许跳转&#xff0c;不像国内app&#xff0c;只要你点不到那个按钮就跳转。这种摆明了是在刷GDP的行为&#xff0c;当然不会有人管。...

asp.net core + ef core 实现动态可扩展的分页方案

在开始之前&#xff0c;先问你一个问题&#xff1a;你做的系统&#xff0c;是不是每次增加一个查询条件或者排序字段&#xff0c;都要去请求参数对象里加一个属性&#xff0c;然后再跑去改 EF Core 的查询逻辑&#xff1f;如果是&#xff0c;那这篇文章应该对你有用。我会带你做…...

【实战】Streamlit搭建Python章节代码可视化系统

【实战】Streamlit搭建Python章节代码可视化系统 在日常学习和教学中&#xff0c;我们经常会遇到多章节代码文件管理的问题&#xff0c;手动切换文件夹、打开文件查看代码效率极低。本文将手把手教你用Streamlit快速搭建一个Python章节代码可视化系统&#xff0c;支持左侧章节…...

将盾CDN:WAF工作机制与多层次防御策略解析

将盾CDN&#xff1a;Web应用防火墙的工作机制与防御策略 在当前数字化浪潮中&#xff0c;Web应用面临着DDoS攻击、SQL注入、跨站脚本等多元化威胁。将盾CDN通过智能防护机制&#xff0c;为企业Web应用构建了多层次的安全防线。## 将盾CDN的核心防护机制将盾CDN的WAF功能部署在…...

三星电机完成SAP S/4HANA云ERP切换:以一体化数据平台支撑实时经营决策

三星电机近日宣布&#xff0c;已完成基于 SAP S/4HANA 的新一代 ERP 系统部署&#xff0c;并正式进入全面运营阶段。这次升级的核心意义&#xff0c;并不只是把旧 ERP 换成新系统&#xff0c;而是借此打通企业内部长期分散的数据体系&#xff0c;将原本分别存在于 ERP、MES 和 …...