ch陈鸿 level
获赞
18
粉丝
8
关注
5
看过 TA
93
湖南工业大学
2019
Unity3D客户端
IP属地:山东
不想做咸鱼的TA不是一个好程序
私信
关注
2018-10-11 16:31
已编辑
湖南工业大学 Unity3D客户端
//爱德华有1个包含N个整数的数组A,他定义1个数组的美丽值为数组中所有不同整数的和。现在爱德华想知道数组A的所有连续子序列的美丽值之和。 //楼主很笨,用了一个很傻的方法,每次都遍历一遍,时间复杂度都达到O(N^4)了,能不能帮助楼主想个好办法呢? //测试用例: //1, 1, 2 => 11 //1, 2 => 6 //1,2,3,3 => 37 package 测试; public class Test1 { public static void main(String[] args) { int arr[] = { 1,1,3,3 }; System.ou...
五楼:如果是你的测试用例错了的话 我按照一楼老哥的思路写了个 import java.util.*; public class Qujian {     public static void main(String[] args){         Scanner sc=new Scanner(System.in);         while (sc.hasNext()) {             String input=sc.nextLine();             String[] numString=input.trim().split("\\s+");             int[] nums=new int[numString.length];             for(int i=0;i<nums.length;i++) nums[i]=Integer.valueOf(numString[i]);             int sum=0;             for(int i=0;i<nums.length;i++){                 sum=sum+countOne(nums,i);             }             System.out.println(sum);         }     }     public static int countOne(int[] nums,int index){         int now=nums[index];         int temp=index;         while((index-1)>=0){             if(nums[index-1]==now) break;             index--;         }         return (temp-index+1)*(nums.length-temp)*now;     } }
0 点赞 评论 收藏
分享
关注他的用户也关注了:
牛客网
牛客企业服务