Bruteforce Algorithm to Compute the Maxmium Powerful Digit Sum u
- 时间:2020-09-09 13:16:32
- 分类:网络文摘
- 阅读:147 次
A googol (10100) is a massive number: one followed by one-hundred zeros; 100100 is almost unimaginably large: one followed by two-hundred zeros. Despite their size, the sum of the digits in each number is only 1.
Considering natural numbers of the form, ab, where a, b < 100, what is the maximum digital sum?
Maxmium Powerful Digit Sum using Java’s BigInteger
Given a and b are in short range of [0 to 99]. There bruteforce algorithm should be more than enough to solve the problem. We need to check total 100*100 different combinations of a to the power b.
In order to hold such large number, we can use array, or in Java, we can simply use the java.math.BigInteger. See below Java’s trivial implementation using the BigInteger. The result (BigInteger) is converted to String type, then the digits are sum, then updating the maximum.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | package com.helloacm; import lombok.var; import java.math.BigInteger; public class Main { public static void main(String[] args) { int ans = 0; for (var a = 2; a < 100; ++ a) { for (var b = 2; b < 100; ++ b) { var c = BigInteger.valueOf(a).pow(b); var v = c.toString(); var sum = 0; for (var x: v.toCharArray()) { sum += x - 48; ans = Math.max(sum, ans); } } } System.out.println(ans); } } |
package com.helloacm;
import lombok.var;
import java.math.BigInteger;
public class Main {
public static void main(String[] args) {
int ans = 0;
for (var a = 2; a < 100; ++ a) {
for (var b = 2; b < 100; ++ b) {
var c = BigInteger.valueOf(a).pow(b);
var v = c.toString();
var sum = 0;
for (var x: v.toCharArray()) {
sum += x - 48;
ans = Math.max(sum, ans);
}
}
}
System.out.println(ans);
}
}The answer is 972.
–EOF (The Ultimate Computing & Technology Blog) —
推荐阅读:哪些类型的网站不适合使用虚拟主机? 针对网站安全防护 探讨waf防火墙的作用 内容为王!百度搜索发布优质内容生产指南 搜狗SR值更新:好多网站SR值变1 SEO入门:三分钟带你了解权重 网站结构如何布局,会提高用户体验? 对于新站来说:如何让网站快速被搜索引擎收录呢? 网站内部优化细节流程(纯白帽SEO) 网站安全防止被黑客攻击的办法 我在落伍的那几年:一个个人站长的回忆录
- 评论列表
-
- 添加评论