产教融合平台建设网站,网站要服务器吗,莱西网站制作,域名注册网站便宜为了比亚迪的电池终身质保#xff0c;写了个简单算法#xff0c;计算任意12个连续的月份公里数加起来不超过3万公里的预警import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
import java.util.stream.Collectors;/***…为了比亚迪的电池终身质保写了个简单算法计算任意12个连续的月份公里数加起来不超过3万公里的预警import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
import java.util.stream.Collectors;/*** Auther: LGH* Date: 2023/4/26 15:48* Description:*/
public class Test {public static void main(String[] args) {while (true){Scanner scannew Scanner(System.in);System.out.println(请输入开始年月份如202301);String monthscan.nextLine();System.out.println(请输入每月公里数逗号隔开(如2300,1233,3343));Scanner scan1new Scanner(System.in);String amountscan1.nextLine();if (amount.indexOf(,)0){System.out.println(你输入的格式不正确);}String [] hevsamount.split(,);ListInteger monthsnew ArrayList();int lengthhevs.length;int sum0;int begain0;int[] array Arrays.asList(hevs).stream().mapToInt(Integer::parseInt).toArray();int max0;int min0;String maxYearnull;String minYearnull;StringBuffer stringBuffernew StringBuffer();for (int i0;ilength;i){int hevarray[i];maxhev;minhev;int k0;sumhev;months.clear();months.add(hev);minYearhandelYear(month,i);maxYearhandelYear(month,i);k;for (int ji1;jlength;j){months.add(array[j]);if (array[j]max){maxarray[j];maxYearhandelYear(month,j);}if (array[j]min){minarray[j];minYearhandelYear(month,j);}sum array[j];k;String sssssss;if (k12){if (j12){System.out.println(从month至handelYear(month,11)的连续12个月的总里程sum公里,平均每月行驶sum/k公里,其中maxYear是单月最大行驶max公里,minYear是单月最小行驶公里数min公里);stringBuffer.append(从month至handelYear(month,11)里程详情months.stream().map(String::valueOf).collect(Collectors.joining(,))System.getProperty(line.separator));}else{System.out.println(从handelYear(month,i)至handelYear(handelYear(month,i),11)的连续12个月的总里程sum公里,平均每月行驶sum/k公里,其中maxYear是单月最大行驶max公里,minYear是单月最小行驶公里数min公里);stringBuffer.append(从handelYear(month,i)至handelYear(handelYear(month,i),11)里程详情months.stream().map(String::valueOf).collect(Collectors.joining(,))System.getProperty(line.separator));}sum0;k0;break;}else if (k12jlength-1){if (j12){System.out.println(从handelYear(month,i)至handelYear(month,length-1)的连续 k个月的总里程sum公里,平均每月行驶sum/(k)公里,其中maxYear是单月最大行驶max公里,minYear是单月最小行驶公里数min公里);//System.out.println(从month至handelYear(month,11)里程详情months.stream().map(String::valueOf).collect(Collectors.joining(,)));stringBuffer.append(从handelYear(month,i)至handelYear(month,length-1)里程详情months.stream().map(String::valueOf).collect(Collectors.joining(,))System.getProperty(line.separator));}else{System.out.println(从handelYear(month,i)至handelYear(handelYear(month,i),k-1)的连续 k个月的总里程sum公里,平均每月行驶sum/(k)公里,其中maxYear是单月最大行驶max公里,minYear是单月最小行驶公里数min公里);stringBuffer.append(从handelYear(month,i)至handelYear(handelYear(month,i),k-1)里程详情months.stream().map(String::valueOf).collect(Collectors.joining(,))System.getProperty(line.separator));}sum0;k0;break;}}}System.out.println(stringBuffer.toString());}}public static String handelYear(String month,int length){int yearInteger.valueOf(month.substring(0,4));String momonth.substring(4,6);int mon0;if (mo.startsWith(0)){monInteger.valueOf(month.substring(5,6));}else{monInteger.valueOf(month.substring(4,6));}monmonlength;int jmon/12;if (mon12){yearyearj;monmon-12*j;}String yearmonnull;if (mon9){yearmonString.valueOf(year)String.valueOf(mon);}else{if (mon0){monmon1;}yearmonString.valueOf(year)0String.valueOf(mon);}return yearmon;}
}