1007. Maximum Subsequence Sum (25)-PAT

优化NEXYS A7开发板(Xilinx Artix-7)Microblaze核的FLASH读写性能实战 本文针对NEXYS A7开发板(Xilinx Artix-7)上Microblaze核读写FLASH速度慢的问题,提供了系统性的优化实战指南。通过深入分析SPI控制器配置、Flash指令模式选择、Microblaze核的Cache与硬件加速器优化,以及程序运行位置(BRAM vs DDR)的调整,有效将FLASH读写性能从“龟速”提升至接近理论峰值。文章结合实测数据,为FPGA嵌入式开发者提供了清晰的性能瓶颈分析与解决方案。 阅读详情

1007. Maximum Subsequence Sum (25)

时间限制
400 ms
内存限制
32000 kB
代码长度限制
16000 B
判题程序
Standard
作者
CHEN, Yue

Given a sequence of K integers { N1, N2, ..., NK }. A continuous subsequence is defined to be { Ni, Ni+1, ..., Nj } where 1 <= i <= j <= K. The Maximum Subsequence is the continuous subsequence which has the largest sum of its elements. For example, given sequence { -2, 11, -4, 13, -5, -2 }, its maximum subsequence is { 11, -4, 13 } with the largest sum being 20.

Now you are supposed to find the largest sum, together with the first and the last numbers of the maximum subsequence.

Input Specification:

Each input file contains one test case. Each case occupies two lines. The first line contains a positive integer K (<= 10000). The second line contains K numbers, separated by a space.

Output Specification:

For each test case, output in one line the largest sum, together with the first and the last numbers of the maximum subsequence. The numbers must be separated by one space, but there must be no extra space at the end of a line. In case that the maximum subsequence is not unique, output the one with the smallest indices i and j (as shown by the sample case). If all the K numbers are negative, then its maximum sum is defined to be 0, and you are supposed to output the first and the last numbers of the whole sequence.

Sample Input:
10
-10 1 2 3 4 -5 -23 3 7 -21
Sample Output:
10 1 4
推荐指数:※※
#include <iostream>
using namespace std;
#define N 10002
int main()
{
	int i,s,t,n,num[N];
	int sum,oldsum;
	int flag=0;
	cin>>n;
	for(i=0;i<n;i++){
		cin>>num[i];
		if(num[i]>=0)
			flag=1;
	}
	if(flag==0)
	{
		cout<<0<<" "<<num[0]<<" "<<num[n-1]<<endl;
		return 0;
	}
	int ns,nt;
	sum=0;
	oldsum=0x80000000;
	s=0;
	ns=0;
	t=0;
	nt=0;
	for(i=0;i<n;i++){
		if(num[i]>=0){
			sum+=num[i];
			nt=i;
			if(oldsum<sum){
				t=nt;
				s=ns;
				oldsum=sum;
			}
		}
		else if(num[i]<0){
			sum+=num[i];
			if(sum<0){
				sum=0;
				ns=i+1;
				nt=i+1;
			}
		}
	}
	if(oldsum>=sum){
		cout<<oldsum<<" "<<num[s]<<" "<<num[t]<<endl;
	}
	else
	{
		cout<<sum<<" "<<num[ns]<<" "<<num[nt]<<endl;
	}
}



14 硬件工程师笔面试高频考点真题解析——逻辑门 逻辑门是数字电路的基本单元,实现布尔运算(如与、或、非、异或等)。OC门(集电极开路)和OD门(漏极开路)需外接上拉电阻,支持“线与”逻辑,适用于I2C总线等场景,避免推挽输出并联导致的短路问题。三态门具有高、低、高阻三种状态,用于总线分时复用。推挽输出因内置上下管,禁止并联,否则会引发电源短路。三者区别在于:推挽驱动强但不可并联;OC/OD需上拉,支持线与;三态门通过使能控制实现高阻隔离,适用于共享总线设计。 阅读详情

相关推荐

SAPABAP金色传说:关于导入和导出Excel时反复弹窗提示 SAP GUI安全性问题的解决方法

文章目录前言一、提示的到底是什么?二、关闭SAP GUI安全提示的步骤1.设置位置 前言 如果你在SAP中,经常需要将数据导出Excel,或者使用Excel进行批导数据,那么你对下面这个频繁出现的弹窗提示一定不陌生! 系统试图创建文件 C:\Users\15265\Desktop\EXPORT.XLSX 于目录 C:\Users\15265\Desktop\ 是否要授权修改父目录及其所有子目录? 不管你是不是选的记住我的决定,它必出!就很烦!那如何处理才能关闭呢? 提示:以下是本篇文章正文内容,看完快

Easystudios博客 1万+

PAT A1007 最大子列和

写这道题的时候才意识到审题是多么的重要,最前面的分析错了,后面怎么都不会对的。改了好多次才成功,而且还只能打补丁。输出有很多需要注意的点: output the one with the smallest indices i and j (as shown by the sample case)----也就是说 如果子列是 0 0 1 2 3 的情况,那么子列的第一个元素是0而不是1 If a...

he626shidizai的博客 465

Rust 与 C/C++:Rust 比 C/C++ 更好还是只是“技能问题”?

对于许多嵌入式系统开发人员而言,的崛起似乎掀起了一股不小的浪潮,特别是在相较于传统的语言,Rust的“内存安全”优势让人眼前一亮。然而,是否可以将Rust作为C/C++的替代品?或者说,Rust是否真的比C/C++更好,抑或它只是一个“技能问题”呢?在嵌入式开发的领域,我观察到,尽管Rust在一些高性能、内存安全敏感的场景中受到了广泛推崇,但它在实际应用中的普及度,特别是在嵌入式领域,依然有限。今天,我会从多个角度探讨这个问题,并且分享一些对于Rust、C/C++以及嵌入式系统开发的个人见解。

qq_63315166的博客 1300

1007. Maximum Subsequence Sum (25)

最大连续子序列和 #include #include int k; typedef struct Node { int num; int start; int sum; }Node; std::vector d; int main() { while(scanf("%d",&k)!=EOF) { d.resize(k); for(int i = 0; i < k; ++i)

孙佰贵的专栏 3153

电子硬件仿真:设计一个频率范围为10k—50k的带通滤波器

带通滤波器是一种常用的滤波器类型,具有选择特定频率范围内信号的能力,并在该范围内提供一定的增益。它允许通过一定范围内的频率信号,并在该范围内提供一定的增益,同时在该范围之外的频率上提供较高的衰减。这意味着在通带内(10kHz至50kHz),滤波器的增益应为10dB,而在每个十倍频的频率点上,滤波器的增益应降低40dB。设计滤波器:使用滤波器设计工具(如MATLAB、Python的scipy库、Tina软件等),根据选定的滤波器类型(例如巴特沃斯滤波器),中心频率和通带宽度,设计一个4阶带通滤波器。

走向CTO的路上... 579

R语言LASSO回归作图为什么X轴使用-log(λ)而不是log(λ),如何转化为log(λ)?

🏆本文收录于 《全栈Bug调优(实战版)》 专栏,该专栏专注于分享我在真实项目开发中遇到的各类疑难Bug及其深层成因,并系统提供高效、可复现的解决思路和实操方案。无论你是刚入行的新手开发者,还是拥有多年项目经验的资深工程师,本专栏都将为你提供一条系统化、高质量的问题排查与优化路径,助力你加速成长,攻克技术壁垒,迈向技术价值最大化与职业发展的更高峰🚀!

**My Coding Family** 1015

PAT甲级 1007 Maximum Subsequence Sum (25 分)(测试点分析)

1007Maximum Subsequence Sum(25分) Given a sequence ofKintegers {N​1​​,N​2​​, ...,N​K​​}. A continuous subsequence is defined to be {N​i​​,N​i+1​​, ...,N​j​​} where1≤i≤j≤K. The Maximum...

ItaLink 2755

SPI协议详解(图文并茂+超详细)

先说串口 因为之前写过一篇UART,通用串行异步通讯协议,UART的相关资料 因为UART没有时钟信号,无法控制何时发送数据,也无法保证双发按照完全相同的速度接收数据。因此,双方以不同的速度进行数据接收和发送,就会出现问题。 如果要解决这个问题,UART为每个字节添加额外的起始位和停止位,以帮助接收器在数据到达时进行同步; 双方还必须事先就传输速度达成共识(设置相同的波特率,例如每秒9600位)。 传输速率如果有微小差异不是问题,因为接收器会在每个字节的开头重新同步。相应的协议如下图所示; 如果您注意到

一名热爱技术的工程师的博客。分享技术干货,记录美好生活。永远相信美好的事情即将发生。 33万+

1007 Maximum Subsequence Sum - 最大连续子序

思路: 原则是:用now表示当前的判断,在把多个元素加和的时候,若加到a[i]的时候小于0,那么舍去a[i],继续向后判断,设ans=-1记录最大值(设为-1的原因是要处理0开头的情况) 若sum==0那么我们不要(题上要求i,j最小),但如果第1个数是0那么就要 用tleft表示临时的左节点,当ans&gt;now的时候更新left=tleft,right=a[i] 最后判断一下全负的情...

m0_37579232的博客 249

【论文复现】Applied Intelligence 2025:Auto-PU正例无标签学习的自动化实现与GPT-5.4辅助编程实战

正例-无标签学习(Positive-Unlabelled Learning, PU Learning)是机器学习领域处理"只有正例标签,负例完全未知"场景的重要技术。本文基于2025年发表于Applied Intelligence的最新研究成果,详细阐述如何从零复现Auto-PU框架(包含GA-Auto-PU、BO-Auto-PU、EBO-Auto-PU三种优化器)。

nmdbbzcl的博客 1389

ESP32-C3模组上跑通HTTPS分次传输文件(1)

ESP32-C3模组上跑通HTTPS分次传输文件(1)

phmatthaus的专栏 760

【PAT甲级】1007 Maximum Subsequence Sum (25 分)

Maximum Subsequence Sum 题目描述 Given a sequence of K integers { N​1 , N​2, …, NK }. A continuous subsequence is defined to be { N​i​ , N​i+1​​ , …, Nj​​ } where 1≤i≤j≤K. The Maximum Subsequence is the...

初见还是重逢的博客 392

Zookeeper+Hadoop+Spark+Flink+Kafka+Hbase+Hive 完全分布式高可用集群搭建(保姆级超详细含图文) 附安装包网盘下载

Hadoop+Spark+Flink+Zookeeper+Kafka+Hbase+Hive完全分布式高可用集群搭建 Hadoop高可用集群搭建 Spark高可用集群搭建 Flink高可用集群搭建 Zookeeper高可用集群搭建 Kafka高可用集群搭建 Hbase高可用集群搭建 Hive高可用集群搭建 mysql搭建 jdk部署 大数据集群环境搭建

Mr.L-OAM的博客 2万+

【PAT】1007. Maximum Subsequence Sum (25)

题目链接:http://pat.zju.edu.cn/contests/pat-a-practise/1007 分析: (1)求最大连续子序列,最终输出最大子序列值以及子序列起始和终止元素。如果数组全为负数,则输出0以及数组的第一个和最后一个元素。 (2)一个特殊情况。如,输入的是:         4        -1 0 0 -1        那么我们输出的应该是: 0 0 0

此去经年 1814

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

PAT 1007. Maximum Subsequence Sum (25)

http://pat.zju.edu.cn/contests/pat-a-practise/1007 Given a sequence of K integers { N1, N2, ..., NK }. A continuous subsequence is defined to be { Ni, Ni+1, ..., Nj } where 1 Maximum Subsequenc

Steve Sun的专栏 4502

汉书HE8,好用的汇编代码编写工具

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

[PAT] 1007 Maximum Subsequence Sum (25 分)Java

1007 Maximum Subsequence Sum (25 分) Given a sequence of K integers { N​1​​, N​2​​, ..., N​K​​ }. A continuous subsequence is defined to be { N​i​​, N​i+1​​, ..., N​j​​ } where 1≤i≤j≤K. The...

Simma1101的博客 274

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

PAT甲级 1007 Maximum Subsequence Sum 25 分

PAT甲级 1007 Maximum Subsequence Sum 25 分题目思考代码 题目 原题描述 即:找到一个字符串的和最大的连续子序列,输出:和,子序列开始元素,子序列结束元素 若子序列全为负数,则输出:0,数组开头元素,数组结束元素 思考 动态规划 sum[i]表示的是以a[i]元素结尾的连续子序列的最大和 状态转移方程: sum[i] = max (sum[i-1]+a[i], a...

weixin_41699413的博客 318

PAT 1007 Maximum Subsequence Sum (25 分)

Maximum Subsequence Sum (25 分) 最大子列和问题

Gnomeshgh的博客 919

[PAT-Advanced] A1007 Maximum Subsequence Sum (25)

A1007 Maximum Subsequence Sum (25point(s)) Given a sequence of K integers { N​1​​ , N​2​​ , …, N​K​​ }. A continuous subsequence is defined to be { N​i​​ , N​i+1​​ , …, N​j​​ } where 1≤i≤j≤K. The Ma...

Duke 290

【PAT甲级】1007 Maximum Subsequence Sum (25 分)

Given a sequence of K integers { N​1​​, N​2​​, ..., N​K​​ }. A continuous subsequence is defined to be { N​i​​, N​i+1​​, ..., N​j​​ } where 1≤i≤j≤K. The Maximum Subsequence is the continuous subsequen...

能饮一杯否 369

1007 Maximum Subsequence Sum (25 分) PAT甲级

1007 Maximum Subsequence Sum (25 分) 链接: 1007 Maximum Subsequence Sum (25 分) 来源: PTA程序设计类实验辅助教学平台 题目大意:给你一个K长度的数组,要求你去找到这个数组中 最大连续子序列的和 ,然后输出这个最大的和、这个序列第一个数、这个序列最后一个数,如果这个序列都为负数,那么输出0和这个数组第一个数和最后一个数,题意还是很好理解的,具体就是怎么去做了。 我们定义maxx为我们的最大和,startx为输出的序列中第一个数,e

323的博客 355

PAT甲级 - 1007 Maximum Subsequence Sum (25 分)

题目链接:PAT甲级 - 1007 Maximum Subsequence Sum (25 分) Given a sequence of K integers { N​1​​, N​2​​, ..., N​K​​ }. A continuous subsequence is defined to be { N​i​​, N​i+1​​, ..., N​j​​ } where 1≤i≤j≤K. T...

227

PAT甲级 1007 Maximum Subsequence Sum (25 分)

题意: 给定长度为n的序列,寻找最大字段和,按要求输出 思路: 滑动窗口,当前子段sum>=0时,右指针一直往右边滑动,如果当前序列sum变成的负数,那就把左指针往右滑动,直到序列sum变成非负数或者序列变空了; ps:如果最大子段和为负,如下操作:"If all theKnumbers are negative, then its maximum sum is defin...

床前明月光 332

pat 1007. Maximum Subsequence Sum (25)

1007. Maximum Subsequence Sum (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue Given a sequence of K integers { N

chen1007124127的专栏 383

【PAT甲级题解记录】1007 Maximum Subsequence Sum (25 分)

问题描述 求最大连续子序列和,输出这个连续子序列的首值、尾值和序列和(优先最靠前的),如果都为这个序列都为负的输出0和整个序列的首尾值。 解题思路 一道经典又特殊的动态规划,本身很简单,但考虑到要求最靠前的首尾值,容易出错,难度相应提高。

retr0的博客 448

PAT甲级——1007 Maximum Subsequence Sum (25分)

一开始DP思路: 这个最长子序列的开头元素肯定是正数 结尾的元素也肯定是正数 但是中间可能包含若干个负数 所以从两头开始找,遇到符合条件1,2的就计算中间所包含的子序列的和并记录 可以用递归解决 最后再遍历一遍找到最大的子序列和 这种算法最坏的复杂度是10000*10000,肯定超时 所以想办法用DP void f(int r,int t){ if(r>=t){ ...

沉迷单车的追风少年 554
上一篇: 1049. Counting Ones (30)-PAT
下一篇: 【转载】多重继承及虚继承中对象内存的分布
zoushidexing
博客等级 码龄18年 70粉丝 171原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值