Saturday 23 March 2019

A Very Big Sum :- HakerRank Solution in JAVA

Problem:-

Calculate and print the sum of the elements in an array, keeping in mind that some of those integers may be quite large.
Function Description
Complete the aVeryBigSum function in the editor below. It must return the sum of all array elements.
aVeryBigSum has the following parameter(s):
  • ar: an array of integers .
Input Format
The first line of the input consists of an integer 
The next line contains  space-separated integers contained in the array.
Output Format
Print the integer sum of the elements in the array.
Constraints 
 
Sample Input
5
1000000001 1000000002 1000000003 1000000004 1000000005
Output
5000000015
Note:
The range of the 32-bit integer is .
When we add several integer values, the resulting sum might exceed the above range. You might need to use long long int in C/C++ or long data type in Java to store such sums.

Solution:-


import java.io.*;
import java.math.*;
import java.security.*;
import java.text.*;
import java.util.*;
import java.util.concurrent.*;
import java.util.regex.*;

public class Solution {
static long sum=0;
// Complete the aVeryBigSum function below.
static long aVeryBigSum(long[] ar) {
for (int i = 0; i < ar.length; i++) {
sum += ar[i];
}
return sum;
}

private static final Scanner scanner = new Scanner(System.in);

public static void main(String[] args) throws IOException {
BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(System.getenv("OUTPUT_PATH")));

int arCount = scanner.nextInt();
scanner.skip("(\r\n|[\n\r\u2028\u2029\u0085])?");

long[] ar = new long[arCount];

String[] arItems = scanner.nextLine().split(" ");
scanner.skip("(\r\n|[\n\r\u2028\u2029\u0085])?");

for (int i = 0; i < arCount; i++) {
long arItem = Long.parseLong(arItems[i]);
ar[i] = arItem;
}

long result = aVeryBigSum(ar);

bufferedWriter.write(String.valueOf(result));
bufferedWriter.newLine();

bufferedWriter.close();

scanner.close();
}
}

5 comments:

  1. import java.util.*;
    import java.util.Scanner;
    class Main
    {
    public static void main(String[] args)
    {
    Scanner sc=new Scanner(System.in);
    int n=sc.nextInt();
    int m=sc.nextInt();
    long arr[]=new long[m];
    long sum=0;
    for(int i=0;i<n;i++)
    {

    for(int j=0;j<m;j++)
    {
    arr[j]=sc.nextLong();
    sum+=arr[j];

    }
    }
    System.out.println(sum);
    }


    }
    pls tell me what is wrong in this program

    ReplyDelete
  2. How to solve this question in C.

    ReplyDelete
  3. #include
    #include
    #include
    #include

    int main()
    {
    long long int a[10],n,i,sum=0;
    scanf("%lld",&n);
    for(i=0;i<n;i++)
    scanf("%lld",&a[i]);
    for(i=0;i<n;i++)
    sum=sum+a[i];
    printf("%lld",sum);
    return 0;
    }

    ReplyDelete
  4. This is the easiest solution, but not for the biggener
    https://github.com/AmitRoy3370/HackerRank/blob/master/A%20Very%20Big%20Sum

    ReplyDelete

Error While embed the video in Your website page

Error:- Refused to display '<URL>' in a frame because it set 'X-Frame-Options' to 'sameorigin Solution:- if ...