zoukankan      html  css  js  c++  java
  • 2016校招真题之数组单调和

    1、题目描述

    现定义数组单调和为所有元素i的f(i)值之和。这里的f(i)函数定义为元素i左边(不包括其自身)小于等于它的数字之和。请设计一个高效算法,计算数组的单调和。给定一个数组A同时给定数组的大小n,请返回数组的单调和。保证数组大小小于等于500,同时保证单调和不会超过int范围。

    测试样例:
    [1,3,5,2,4,6],6
    返回:27
     

    2、代码实现

     1 import java.util.*;
     2 
     3 public class MonoSum {
     4     public static void main(String[] args) {
     5         int[] arr = {1,3,5,2,4,6};
     6         int a = 6;
     7         System.out.println(MonoSum.calcMonoSum(arr,a));
     8     }
     9     
    10     public static int calcMonoSum(int[] A, int n){
    11         int tempResult = 0;
    12         if (n > 500 && tempResult <= 2147483647 && tempResult >= -2147483647) {
    13             return 0;
    14         }
    15         for(int i = 0; i < A.length; i++){
    16             for(int j = 0; j < i; j++){
    17                 if(A[j] <= A[i]){
    18                     tempResult += A[j];
    19                 }
    20             }
    21         }
    22         
    23         return tempResult;
    24     }
    25 }
     
  • 相关阅读:
    GitHub Interesting Collection
    使用 CSS3 Flexible Boxes 布局
    消失的属性
    浅谈 JavaScript 模块化编程
    为你的 Javascript 加点咖喱
    软件测试
    osi七层模型
    3_Hydra(爆破神器)
    2_NC(瑞士军刀)
    1_HTTP协议详解
  • 原文地址:https://www.cnblogs.com/wangchaoyuan/p/5965969.html
Copyright © 2011-2022 走看看