NYOJ746——整数划分(四)

YOLOv8中的C2f模块代码详解 在YOLOv8网络结构中,C2f模块(CSP Bottleneck with 2 Convolutions)是一个关键组件,用于实现跨阶段部分聚合 阅读详情

整数划分(四)

时间限制: 1000 ms  |  内存限制: 65535 KB
难度: 3
描述

       暑假来了,hrdv 又要留学校在参加ACM集训了,集训的生活非常Happy(ps:你懂得),可是他最近遇到了一个难题,让他百思不得其解,他非常郁闷。。亲爱的你能帮帮他吗?

      问题是我们经常见到的整数划分,给出两个整数 n , m ,要求在 n 中加入m - 1 个乘号,将n分成m段,求出这m段的最大乘积

输入
第一行是一个整数T,表示有T组测试数据
接下来T行,每行有两个正整数 n,m ( 1<= n < 10^19, 0 < m <= n的位数);
输出
输出每组测试样例结果为一个整数占一行
样例输入
2
111 2
1111 2
样例输出
11
121
来源
经典题目

上传者


区间dp,设dp[i][j] 表示在区间[0, i]之中,插入j个乘号可以得到的最大数

设a[i][j]为区间[i,j]所形成的数

所以 dp[i][j] = max(dp[k][j-1] * a[k + 1][i])

注意数的范围,用int不够

#include <map>  
#include <set>  
#include <list>  
#include <stack>  
#include <queue>  
#include <vector>  
#include <cmath>  
#include <cstdio>  
#include <cstring>  
#include <iostream>  
#include <algorithm>  
  
using namespace std;

long long dp[22][22];
long long a[22][22]; 
char str[22];

int main()
{
	int len, t, m;
	scanf("%d", &t);
	while (t--)
	{
		scanf("%s%d", str, &m);
		len = strlen(str);
		m--;
		memset (a, 0, sizeof(a)); 
		memset (dp, 0, sizeof(dp));
		for (int i = 0; i < len; i++)
		{
			a[i][i] = str[i] - '0';
			for (int j = i + 1; j < len; j++)
			{
				a[i][j] = a[i][j - 1] * 10 + str[j] - '0';
			}
		}
		for (int i = 0; i < len; i++)
		{
			dp[i][0] = a[0][i];
		}
		for (int j = 1; j <= m; j++)
		{
			for (int i = j; i < len; i++)
			{
				for (int k = 0; k < i; k++)
				{
					dp[i][j] = max(dp[i][j], dp[k][j - 1] * a[k + 1][i]);
				}
			}
		}
		printf("%lld\n", dp[len - 1][m]);
	}
	return 0;
} 


汉书HE8,好用的汇编代码编写工具 汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大 立即下载

相关推荐

嵌入式下载故障排查:ST-LINK与GD32 Programmer典型问题解决

嵌入式固件烧录是MCU开发的关键环节,其本质依赖于调试器(如ST-LINK、GD-Link)与目标芯片间的协议通信、驱动加载及硬件接口协同。原理上,SWD/JTAG协议需在正确时序、电平与供电条件下完成设备枚举、ID读取与Flash编程;技术价值在于保障量产烧录稳定性与调试可重复性;典型应用场景涵盖STM32/GD32教学开发、工业控制板量产调试及Windows 11新系统适配。本文聚焦ST-LINK-V2在Keil MDK中的下载失败和GD32 All In One Programmer的DLL加载异常两

weixin_35006125的博客 153

区间DP详解,思路分析,OJ详解

通过区间DP,理解自下而上分析思想

EQUINOX1的博客 1612

台达PLC使用RS485Modbus指令通信

台达PLC,RS485,Modbus RTU,从站梯形图,0X01,0X02,0X05,CRC校验

lilililimu的博客 1万+

nyoj746 整数划分(四)

整数划分(四) 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述        暑假来了,hrdv 又要留学校在参加ACM集训了,集训的生活非常Happy(ps:你懂得),可是他最近遇到了一个难题,让他百思不得其解,他非常郁闷。。亲爱的你能帮帮他吗?       问题是我们经常见到的整数划分,给出两个整数 n , m ,要求在 n 中加入m - 1 个乘号,将...

weixin_34186128的博客 262

LCD工程师必看:Pixelclock、Mipi Clk计算全解析(附实用公式)

本文为LCD工程师详细解析了像素时钟(Pixelclock)与MIPI时钟(Mipi Clk)的核心计算方法。文章从时序参数构成入手,通过实战公式推导,系统阐述了从屏幕分辨率、刷新率到最终MIPI速率的高效计算链路,并提供了实用的调试思路与排查清单,帮助工程师快速解决画面撕裂、闪烁等常见问题。

weixin_29266679的博客 388

[LaTeX] 调整参考文献的格式(References),包括作者名缩写,行距,字体,引用顺序等等

在此记录我对LaTeX中参考文献references的尝试,主要涵盖如题几个方面。

the Blog of 等不到天亮丶等时光 4万+

区间DP——整数划分(使乘积最大)

将N长度的整数切割成M段,使乘积最大。 #include #include #include using namespace std; #define SIZE 20 char arr[SIZE]; int Num[SIZE][SIZE]; int DP[SIZE][SIZE]; int len; int cutNum; void getNum(){ fo

一刀不二 1415

基于MATLAB编程的LSTM的时间序列预测

时间序列预测,回归分析,LSTM详细原理

abc991835105的博客 360

OJ演练--整数划分(经典DP问题)

对整数划分,关键点: 1、找出动态规划的状态转移方程 2、确定各种情况下的初始条件 类型一:将n划分成若干正整数之和 Description 将正整数n表示成一系列正整数之和:n=n1+n2+…+nk,其中n1&gt;=n2&gt;=…&gt;=nk&gt;=1。正整数n的这种表示称为正整数n的划分。求正整数n的不同划分个数。例如,正整数6有如下11种不同的划分:6: 6; 5+1...

造梦先森Kai的专栏 772

深度学习中常用的几种卷积(下篇):膨胀卷积、可分离卷积(深度可分离、空间可分离)、分组卷积(附Pytorch测试代码)

膨胀卷积也称为扩张卷积或空洞卷积,一般可通过对标准二维卷积的卷积核设置合适的膨胀率(具体地指卷积核元素之间的距离)实现。合理利用膨胀卷积可在不引入其他参数的同时,扩大输出中元素的感受野,提高特征的全局表示能力。下面通过展示几个不同膨胀率下的卷积核大小以及感受野变化情况,可以更直观的理解:图中灰色为输入,蓝色为卷积核,黄色为输出。1)dilation=1:表示卷积核元素之间距离为1,使用0进行大小为dilation-1=0的填充(这是默认情况),因此。

NorthSmile的博客 9014

Pyhon在振动信号处理中的高级应用(一):振动信号特征(时域、频域)提取

文章目录一、概述二、算法原理2.1 时域统计特征三、python代码实现 一、概述 二、算法原理   这里我们借鉴西安交通大学机械学院雷教授的论文《Fault diagnosis of rotating machinery based on multiple ANFIS combination with GAs》相关研究成果。雷教授在论文中共列举了4类共24种振动信号的时域和频域特征。 2.1 时域统计特征 p1=∑n=1Nx(n)NP2=∑n=1N(x(n)−p1)2N−1p3=(∑n=1N∣x(n)∣N

白银时代的博客 1万+

ACM 整数划分(四)

整数划分(四) 时间限制:1000ms | 内存限制:65535KB 难度:3 描述 暑假来了,hrdv 又要留学校在参加ACM集训了,集训的生活非常Happy(ps:你懂得),可是他最近遇到了一个难题,让他百思不得其解,他非常郁闷。。亲爱的你能帮帮他吗? 问题是我们经常见到的整数划分,给出两个整数 n , m ,要求在 n 中加入m...

weixin_34018202的博客 221

【MERRA-2数据集】M2I1NXASM (5.12.4) 和 M2I1NXINT (5.12.4)概述

M2I1NXASM (5.12.4) 和 M2I1NXINT (5.12.4)概述

WW、forever的博客 683

NYOJ 746 整数划分(四)区间DP

整数划分(四) 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述        暑假来了,hrdv 又要留学校在参加ACM集训了,集训的生活非常Happy(ps:你懂得),可是他最近遇到了一个难题,让他百思不得其解,他非常郁闷。。亲爱的你能帮帮他吗?       问题是我们经常见到的整数划分,给出两个整数 n , m ,要求在 n

briup_acmer的专栏 1073

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

【NYOJ746】整数划分(四)

题目描述 暑假来了,hrdv 又要留学校在参加ACM集训了,集训的生活非常happy,可是他最近遇到了一个难题,让他百思不得其解,他非常郁闷。。亲爱的你能帮帮他吗? 问题是我们经常见到的整数划分,给出两个整数 n , m ,要求在 n 中加入m - 1 个乘号,将n分成m段,求出这m段的最大乘积 输入 第一行是一个整数T,表示有T组测试数据 接下来T行,每行有两个正整数 n,m ...

anweiyun4308的博客 188

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

NYOJ746 整数划分(四)

描述        暑假来了,hrdv 又要留学校在参加ACM集训了,集训的生活非常Happy(ps:你懂得),可是他最近遇到了一个难题,让他百思不得其解,他非常郁闷。。亲爱的你能帮帮他吗?       问题是我们经常见到的整数划分,给出两个整数 n , m ,要求在 n 中加入m - 1 个乘号,将n分成m段,求出这m段的最大乘积 输入第一行是一个整数T,表示有T组

人生如梦,浮华一瞬间的专栏 633

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

经典问题一.(插入乘号的整数划分)整数划分(四) nyoj 746

NYOJ 746 整数划分(四) (区间DP)解决问题: 给出一个长度为n的数,要在其中加上m-1个乘号,分成m段,使m段的乘积之和最大。解决办法: 首先预处理出: 不划分,其各个区间的值 dp[i][j] 代表: 前i位数,在划分成j段后的最大乘积和。 初始化: dp[i][1]: 不划分(即划分成1段)的时候,其值等于qujian[1][i]。 递推式: dp[i][j] = d

学无纸巾 807

nyoj746 整数划分(四)

题目:描述 暑假来了,hrdv 又要留学校在参加ACM集训了,集训的生活非常Happy(ps:你懂得),可是他最近遇到了一个难题,让他百思不得其解,他非常郁闷。。亲爱的你能帮帮他吗? 问题是我们经常见到的整数划分,给出两个整数 n , m ,要求在 n 中加入m - 1 个乘号,将n分成m段,求出这m段的最大乘积 输入 第一行是一个整数T,表示有T组测试数据 接下来T行,每行有

_今已亭亭如盖矣 457

nyoj746整数划分(四)

#include #include int k, pp[20]; long long sum, ff[20][20], max; void dfs(int n[], int m, int count, int q) { if(count == m) { sum = 1; for(int i = 0; i sum *= ff[pp[i]][pp[i + 1]];

u012675695的专栏 691

nyoj_746 整数划分(四)

题目链接: http://acm.nyist.net/JudgeOnline/problem.php?pid=746 分析: dp[i][j] : 表示在区间 [0,i] 插入 j 个乘号可以得到的最大值  a[i][j] : 表示区间 [i,j] 所形成的数    则:  dp[i][j]=max(dp[k][j-1]*a[k+1][i]) 代码: #in

老子(道家) 656

NYOJ 746 整数划分(四)详解 (区间DP)

整数划分(四) 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述        暑假来了,hrdv 又要留学校在参加ACM集训了,集训的生活非常Happy(ps:你懂得),可是他最近遇到了一个难题,让他百思不得其解,他非常郁闷。。亲爱的你能帮帮他吗?       问题是我们经常见到的整数划分,给出两个整数 n , m ,要求在 n

K键盘里的青春K 1004

NYOJ-746整数划分(四)

整数划分                                                                                                                                                  题目链接 经典区间DP问题,但是和石子合并又有些区别 石子合并的dp并不适合套用在这道题上

wjhshuai的博客 320

NYOJ 746 整数划分(四)

整数划分(四)

@~莲坂果贸的博客 443

nyoj746整数划分(四)【区间dp】

整数划分(四) 时间限制:1000 ms  |            内存限制:65535 KB 难度:3 描述        暑假来了,hrdv 又要留学校在参加ACM集训了,集训的生活非常Happy(ps:你懂得),可是他最近遇到了一个难题,让他百思不得其解,他非常郁闷。。亲爱的你能帮帮他吗?       问题是我们经常见到的整数划分,给出两个整数 n , m ,要求在

走一步再走一步 626
上一篇: POJ2955——Brackets
下一篇: POJ1651——Multiplication Puzzle
tokers
博客等级 码龄12年 71粉丝 700原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值