课堂测试进阶02

import java.util.ArrayList;
import java.util.Scanner;

public class FirstTest {
    
    public static int getResult(ArrayList<Integer> array) {
        int sum = 0;
        int result = array.get(0);
        for (Integer integer : array) {
            if(sum<=0)
                sum = integer;
            else
                sum += integer;
            
            if(sum>result)
                result = sum;
        }
        return result;
    }
    
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        int num=input.nextInt();
        int array[]=new int[num];
        ArrayList<Integer> result = new ArrayList<>();
        
        for(int i=0;i<num;i++)
        {
            if((int)(Math.random()*2)==0)
            {
                array[i]=(int)(Math.random()*10);
            }
            else
            {
                array[i]=-(int)(Math.random()*10);
            }
        }
        for(int i=0;i<num;i++) {
            System.out.println(array[i]);
        }
        
        
        for(int i=0;i<num;i++) {
            ArrayList<Integer> list = new ArrayList<>();
            for(int j=i;j<num;j++) {
                list.add(array[j]);
            }
            for(int k=0;k<i;k++) {
                list.add(array[k]);
            }
            result.add(getResult(list));
        }
        int max = result.get(0);
        for (Integer integer : result) {
            if(max<integer)
                max = integer;
        }
        
        System.out.println(max);
    }
    
    
}
复制代码

运行结果截图:

    

posted on 2022-03-13 16:42  辰逸1  阅读(12)  评论(0编辑  收藏  举报