Project Euler #48: Self powers
Question
The series, 11 + 22 + 33 + ... + 1010 = 10405071317.
Find the last ten digits of the series, 11 + 22 + 33 + ... + 10001000
Answer : 9110846700
Hacker Rank Problem
Solution
The series, 11 + 22 + 33 + ... + 1010 = 10405071317.
Find the last ten digits of the series, 11 + 22 + 33 + ... + 10001000
Answer : 9110846700
Hacker Rank Problem
Solution
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | import java.math.BigInteger; import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner in = new Scanner(System.in); long t = in.nextLong(); System.out.println(count(t)); } public static String count(long num) { BigInteger modulus = BigInteger.TEN.pow(10); BigInteger sum = BigInteger.ZERO; for (int i = 1; i <= num; i++) sum = sum.add(BigInteger.valueOf(i).modPow(BigInteger.valueOf(i), modulus)); return sum.mod(modulus).toString(); } } |
Comments
Post a Comment