Java实现 蓝桥杯 算法提高 数组求和
2024-10-21 14:20:09
试题 算法提高 数组求和
资源限制
时间限制:1.0s 内存限制:256.0MB
问题描述
输入n个数,围成一圈,求连续m(m<n)个数的和最大为多少?
输入格式
输入的第一行包含两个整数n, m。第二行,共n个整数。
输出格式
输出1行,包含一个整数,连续m个数之和的最大值。
样例输入
10 3
9 10 1 5 9 3 2 6 7 4
样例输出
23
数据规模和约定
0<m<n<1000, -32768<=输入的每个数<=32767。
PS:
方法就是把数组的前m个放在正常数组的后面
第一个好理解 第二个代码量少
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int m = sc.nextInt();
int [] num = new int [n+m];
for (int i=0;i<n;i++){
num[i]=sc.nextInt();
}
sc.close();
for (int i=n;i<n+m;i++){
num[i]=num[i-n];
}
// for (int i=0;i<num.length;i++){
// System.out.print(num[i]+" ");
// }
int max = 0,sum=0;
for (int i=0;i<m;i++)
sum+=num[i];
for (int i=m;i<m+n;i++){
sum= sum-num[i-m]+num[i] ;
max=Math.max(max,sum);
}
System.out.println(max);
}
}
import java.util.Scanner;
public class 数组求和 {
public static void main(String[] args) {
int max = 0,sum=0,n,m,i;
int [] num;
Scanner sc = new Scanner(System.in);
n = sc.nextInt();
m = sc.nextInt();
//建立m+n的数组就是为了把首尾连接的情况
// 把最开头的m个放在后面,省去了链表的复杂
num = new int [n+m];
for ( i=0;i<m;i++){
num[i]=sc.nextInt();
sum+=num[i];
}
for ( i=m;i<m+n;i++){
num[i]=i<n?sc.nextInt():num[i-n];//n以内就是输入的,n以后就是数组的前m
sum= sum-num[i-m]+num[i] ;//减去m列表内的第一项,加上当前项
max=Math.max(max,sum);
}
sc.close();
System.out.println(max);
}
}
最新文章
- css3 翻转和旋转的区别
- jquery模拟LCD 时钟
- mysql 获取权限
- 详解SQL集合运算
- Hadoop分布式文件系统:架构和设计要点
- c++语法集锦
- Segment fault及LINUX core dump详解
- iOS开发多线程篇—单例模式(ARC)
- [百度空间] [原]跨平台编程注意事项(二): windows下 x86到x64的移植
- SP避免Form重复提交的三种方案
- 全部省市县数据库(MySQL脚本) (转)
- 洛谷 P1026 统计单词个数
- [转载] extern ";C";的用法解析
- 在 Linux 系统中安装Load Generator ,并在windows 调用方法
- [转载]PHP检测一个元素是否存在于数组中
- Makefile学习总结
- java多线程设计模式
- Imcash:比特币减半 四年机遇你能否抓住?
- rpm: /root/anaconda3/lib/liblzma.so.5: version `XZ_5.1.2alpha&#39; not found (required by /lib64/librpmio.so.3)
- 使用zabbix-java-gateway可以通过该网关来监听多个JVM
热门文章
- [工具]微软的学习平台Microsoft Learn很好用,推荐一下
- 为什么PUSH推送要经常背锅?
- 一道题带你搞定Python函数中形参和实参问题
- Web_php_include
- android 百度地图v3.2.0获取实际地址
- mybatis开发,你用 xml 还是注解?我 pick ...
- Windows 系统如何安装 Docker
- Postman学习之Postman简介
- Vue element-ui date-picker 结束时间大于开始时间且开始时间小于此刻(转)
- Java创建线程的方式