在含有负数的一百个整数中,找出连续三个数之和最大的部分,并打印出来。找工作,遭受各种打击,只怪自己技术不佳,没办法,好好学吧。每次笔试面试都是对自己的一种提高!
1.只循环一次:初始值为前3个数之和,相邻的3个数和的差为后一个数与前3个数中的第一个数之差;
2.当差值为正时,当前3个数之和比前一个最大和大,差值为负时,继续向后移累加差值,直至为正
import java.util.*;
public class MaxSum {
public static void init(int[] arr) {
Random rad = new Random();
for (int i = 0; i < 100; i++) {
arr[i] = rad.nextInt(100);
if (rad.nextBoolean()) {
arr[i] = -arr[i];
}
}
for (int i = 0; i < arr.length; i++)
{
System.out.println(i + ":" + arr[i]);
}
}
public static int getMaxSum(int[] arr) {
int maxSum = 0;
int index = 0;
for (int i = 0; i < arr.length - 2; i++) {
int sum = 0;
for (int j = i; j < i + 3; j++) {
sum += arr[j];
}
if (sum > maxSum) {
maxSum = sum;
index = i;
}
}
return index;
}
public static void main(String[] args) {
int[] arr = new int[100];
init(arr);
int index = getMaxSum(arr);
System.out.println("Position:" + index + "," + (index + 1) + "," + (index + 2));
}
}
分享到:
相关推荐
C语言程序设计-编写程序。...⑴求出这8个数据的和、最大值、最小值及平均值。 ⑵求这8个数据的正数之和、负数之和(或正数与负数的个数); ⑶求这8个数据的奇数之和、偶数之和(或奇数与偶数的个数)。
第一行为一个整数C,表示有C组测试数据,接下来有2*C行数据,每组测试数据占2行,每组测试数据第一行是1个整数n,表示有n个整数,接下来一行有n个整数,它们之间用空格隔开. Output 你的输出应该有C行,即每组...
数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。 求所有子数组的和的最大值。要求时间复杂度为O(n)。 例如输入的数组为1, -2, 3, 10, -4, 7, 2, -5,和最大的子数组为3, 10, -4, 7, 2, 因此...
C语言输入10个整数,统计其中正数、负数和零的个数,并在屏幕上输出(博主小白)
今天又学习到了一些知识分享给大家
编程实现从键盘任意输入20个整数,统计非负数的个数,并计算非负数之和。
输入一些整数,编程计算并输出其中所有正数的和,输入负数时不累加,继续输入下一个数。输入零时,表示输入数据结束。要求最后统计出累加的项数
资源包括:源代码+详细设计报告+使用说明。 设计一台嵌入式CISC模型计算机, 输入包含5个整数(有符号数)的数组M,输出所有负数的平方和。
六年级数学下册一生活中的负数1.2初步认识正负整数和整数教学反思素材冀教版20200512241
5.1试编写一个汇编语言程序,要求对键盘输入的小写字母用大写字母...5.20 设在A,B和C单元中存放着三个数,若三个数都不是0,则求出三树之和并存放于D单元中;其中有一个数为0,则把其他两个数也清零。试编写此程序。
包含全部代码以及课设报告
输入包含5个整数(有符号数)的数组M,输出最大负数的绝对值(A类)。完成系统的总体设计, 画出模型机数据通路框图;设计微程序控制器(CISC 模型计算机) 的逻辑结构框图;设计机器指令格式和指令系统;设计时序...
计算机组组成原理课程设计,设计一台嵌入式CISI模型计算机(输入包含5个整数(有符号数)的数组M,输出所有负数的平方和)。文件中CISI可以直接使用,其他文件夹是各个器件的的代码。
六年级数学下册第一单元生活中的负数1.2认识负数和整数课时练冀教版
找出若干个数使其和最接近于M 1. 题目 给定一个由正数组成的列表alts,一个目标数M 需要从alts中选取若干个备选数,使其和为M 若找不到和刚好与M相等的备选数列表,则返回和与M最接近的备选数列表 若有多个结果,...
这个代码主要是写有关输入一串数字之后,判断这串数字中的正数、负数和0,供大家下载,谢谢
7.8找出一个二维数组中的鞍点,即该位置上的元素在该行上最大,在该列上最小。也可能没有鞍点。 38 7.9有15个数按从小到大的顺序存放在一个数组中。输入一个数,要求用折半查找法找出该数是数组中第几个元素的值。...
Labview应用技术 使用数组函数寻找数组中负数个数(拓展).docx 学习资料 复习资料 教学资源
长整数 高精度 计算 整数 正数负数
已知线性表按顺序存于内存,每个元素都是整数,把所有值为负数的元素移到全部正数值元素前边的算法