通过海量题库、编程比赛和实时排名,系统化提升您的编程能力。
"NOIP真题" 试卷中 NOIP第二十一届全国青少年信息学奥林匹克联赛初赛试题[2015提高组] 中有题目如下:
第1题
(双子序列最大和)给定一个长度为n(3≤n≤1000) 的整数序列,要求从中选出两个连续子序列,使得这两个连续子序列的序列和之和最大,最终只需输出这个最大和。一个连续子序列的序列和为该连续子序列中所有数之和。要求:每个连续子序列长度至少为 1,且两个连续子序列之间至少间隔 1 个数。
#include <iostrea m> using namespace std; const int MAXN = 1000; int n, i, ans, sum; int x[MAXN]; int lmax[MAXN]; // lmax[i] 为仅含 x[i] 及 x[i] 左侧整数的连续子序列的序列和中,最大的序列和 int rmax[MAXN]; // rmax[i] 为仅含 x[i] 及 x[i] 右侧整数的连续子序列的序列和中,最大的序列和 int main() { cin >> n; for (i = 0; i < n; i++) cin >> x[i]; lmax[0] = x[0] ; for (i = 1; i < n; i++) if (lmax[i - 1] <= 0) lmax[i] = x[i]; else lmax[i] = lmax[i - 1] + x[i]; for (i = 1; i < n; i++) if (lmax[i] < lmax[i - 1]) lmax[i] = lmax[i - 1]; ①; for (i = n - 2; i >= 0; i --) if (rmax[i + 1] <= 0) ②; else ③; for (i = n - 2; i >= 0; i --) if (rmax[i] < rmax[i + 1]) ④; ans = x[ 0] + x [2]; for (i = 1; i < n - 1; i++) { sum = ⑤; if (sum > ans) ans = sum; } cout << ans << endl; return 0; }
所属试卷:NOIP第二十一届全国青少年信息学奥林匹克联赛初赛试题[2015提高组]
有如下程序,运行这个程序的输出结果是。
主机甲通过 TCP 向主机乙发送数据的部分过程如图所示
如题 35 图所示的支持VLAN 划分的交换机,已按端
软件按功能可以分为:应用软件、系统软件和支撑软件(或工
若有C语言表达式 2+3*4+7/3,以下选项中叙述正
有以下程序:程序运行后的输出结果是( )。
函数调用语句:含有的实参个数 是( )。
己知x为非空列表,那么表达式x.sort==sor
random模块中_______方法的作用是将列表中的
已知x={'a':'b','c':'d'},那么表达式
已有变量定义语句double=5.0,p;int n=
若有定义语句:char c='\010';则变量c中包
结构化程序是由________、________、__
有以下程序(函数fun只对下标为偶数的元素进行操作)
完成远程登录的TCP/IP协议是:( )
在一个C源程序文件中,要定义一个只允许本源文件中所有函
观察当前系统的运行级别可用命令:____实现。
要使得名为fido的文件具有如下权限-r-xr-x—x
在Linux系统中,用来存放系统所需要的配置文件和子目
在FOREIGN KEY约束子句中,如果试图删除某行的
顺序存储方式只能用于存储线性结构。
路由器运行于OSI模型的
数组名可作为函数的实参,但不能作为函数的形参。
功能:在键盘上输入一个3行3列矩阵的各个元素的值(值为
在C语言中,函数可以嵌套定义。
当a=1,b=2,c=3时,执行以下程序段后b=___
有以下程序程序的运行结果是
输入 :8 4输出 :____
现有一只青蛙,初始时在 n 号荷叶上。当它某一时刻在
输入:6 6 5 5 3 输出:___________
更多选择题
更多填空题
第十章 C++流
第九章 C++模板
第八章 C++运算符重载
C++语言程序设计真题5
C++语言程序设计真题4
C++语言程序设计真题3
C++语言程序设计真题2