首页 > 其他分享 >2023.6.19 可被3整除的最大和

2023.6.19 可被3整除的最大和

时间:2023-06-19 12:44:46浏览次数:34  
标签:.. nums 19 max sum let 2023.6 整除 Vec

image

考虑动态规划,令f[i][j]表示以i开始,模3后值为j的最大和。
那么可以得到状态转移方程:

  1. 不取当前数,f[i][j] = f[i + 1][j]
  2. 取当前数,f[i][(f[i + 1][j] + nums[i]) % 3] = f[i + 1][j] + nums[i]

目标状态:f[0][0]

impl Solution {
    pub fn max_sum_div_three(nums: Vec<i32>) -> i32 {
        let n = nums.len();
        let mut f: Vec<Vec<i32>> = vec![vec![0; 3]; n + 1];

        for i in (0..n).rev() {
            // 不取这个数
            for j in 0..3 {
                f[i][j] = std::cmp::max(f[i][j], f[i + 1][j]);
            }
            // 取这个数
            for j in 0..3 {
                let sum = f[i + 1][j] + nums[i];
                f[i][(sum % 3) as usize] = std::cmp::max(f[i][(sum % 3) as usize], sum);
            }
        }
        f[0][0]
    }
}

标签:..,nums,19,max,sum,let,2023.6,整除,Vec
From: https://www.cnblogs.com/st0rmKR/p/17490862.html

相关文章

  • 非Oracle Linux下安装Oracle 19c
    《Oracle19c之RPM安装》介绍了在OracleLinux平台下安装Oracle19c的过程,其实无论是19c,还是11g,用OracleLinux会为你省不少的事情,毕竟同为Oracle产品,从推广角度看,肯定会相对其他平台提供更多的便利性,例如提前预安装了需要的Package,设置了信号量,创建了各种账号、路径和权限。这次采......
  • 非Oracle Linux下Oracle 19c CDB数据库安装
    《非OracleLinux下安装Oracle19c》我们安装了non-cdb的19c数据库,通过这个脚本,还可以搭建cdb的数据库。1.修改安装脚本cp/etc/init.d/oracledb_ORCLCDB-19c/etc/init.d/oracledb_pdbisal-19c其中要改几处,ORACLE_SID改成新的,LISTENER_NAME改成新的,CREATE_AS_CDB之前我写的false,......
  • CF19D. Points
    感觉不难啊,为什么是*2800捏。先离散化。对每个横坐标开一个set存点,插入删除就能做了。查询的时候线段树二分就行了。更具体地,我们维护区间内纵坐标的最大值,在二分的时候能左就左,不能左就右。注意这里的右上角是严格大于。点击查看代码#include<bits/stdc++.h>#definei......
  • 2023-06-19 uniapp云打包报错:app-plus.distribute.icons.android.hdpi 文件不存在
    详细报错:[HBuilder]11:02:51.408Manifest.json文件以下节点配置错误,请检查修复[HBuilder]11:02:51.408app-plus.distribute.icons.android.hdpi 文件不存在[HBuilder]11:02:51.408app-plus.distribute.icons.android.xxhdpi 文件不存在[HBuilder]11:02:51.408ap......
  • ChatGPT4+Midjourney镜像网站汇总-6月19日更新
    如何在国内使用ChatGPT4和Midjourney?本文将给出多个无需注册,无需登录,无需梯子,即可在国内使用ChatGPT的套壳网站,也称为镜像网站。......
  • 20230426 19. 组合模式 - 分公司
    介绍组合模式(Composite),将对象组合成树形结构以表示'部分-整体'的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。Component为组合中的对象声明接口,在适当情况下,实现所有类共有接口的默认行为Leaf在组合中表示叶节点对象,叶节点没有子节点Composite定义......
  • Android - 无法使用任何临时 SqlClient 版本(v2.1.4、v4.1.0、v5Preview)连接到 SQL Ser
    Aconnectionwassuccessfullyestablishedwiththeserver,butthenanerroroccurredduringthepre-loginhandshake.设法用证书和IP地址解决它。使用powershell为您的IP地址创建证书:New-SelfSignedCertificate-certstorelocationcert:\localmachine\my-dns......
  • 2023.6.18拷逝
    T1如图,从\(x_1\)能且只能走到\(x_1+2,x_1+4,x_1+6...\)设\(f[x]\)表示从\(x_1\)走到\(x\)的方案数,那么如果\(x-x_1\)是偶数,那么\(f[x]=f[x-2]+f[x-4]+...+f[x_1]\),否则\(f[x]=0\)。初始值:\(f[x_1]=1\)。考虑\(f[x]\)的前几项。\(f[x_1]=1,f[x_1+2]=1,f[x_......
  • 给Nexus6p刷入lineage14.1(android 7.1)和 nethunter 2019.3
    本文依据kali教程编写https://build.nethunter.com/contributors/re4son/angler/INSTALLATION.txt写在前面的话你可能很奇怪,为什么有kali2020.3不用要刷入2019.3版本的。其实目的是使用安卓7,因为高版本安卓对某些软件的兼容性太差,刷入2019载手动升级到2020.3.Andrax在安卓7、9......
  • 2023.6.18 12.数据库配置优化
    12.数据库配置优化mysql数据库优化框架体系优化要有框架和体系:根据⽤户访问⽹站流程优化集群,根据OSI7层模型,从下往上优化数据库!1、硬件层⾯优化1.1数据库物理机采购:1.2服务器硬件配置调整1.2.1服务器BIOS调整1.2.2阵列卡调整2、软件层优化2.1操作系统层⾯优化2.1.1操......