/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
public class Main
{
public static void main
(String[] args
) { int n = 10000;
int sum = -1;
for (int i = 1; i <= n; i *= 2) {
for (int j = 1; j <= n; j *= 3) {
for (int k = 1; k <= n; k *= 5) {
int x = i*j*k;
if (x <= n) {
sum += x;
} else {
break;
}
}
}
}
System.
out.
println("sum(constructive)=" + sum
);
sum = 0;
List<Integer> otherPrimes = new ArrayList<>();
for (int i = 2; i <= n; i++) {
boolean isDivisibleByOtherPrimes = false;
for (int p : otherPrimes) {
if (i % p == 0) {
isDivisibleByOtherPrimes = true;
break;
}
}
if (!isDivisibleByOtherPrimes) {
if (i % 2 == 0 || i % 3 == 0 || i % 5 == 0) {
sum += i;
} else {
otherPrimes.add(i);
}
}
}
System.
out.
println("sum(DP)=" + sum
); }
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgpwdWJsaWMgY2xhc3MgTWFpbgp7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB7CgkgICAgaW50IG4gPSAxMDAwMDsKCSAgICBpbnQgc3VtID0gLTE7CgkJZm9yIChpbnQgaSA9IDE7IGkgPD0gbjsgaSAqPSAyKSB7CgkJICAgIGZvciAoaW50IGogPSAxOyBqIDw9IG47IGogKj0gMykgewoJCSAgICAgICAgZm9yIChpbnQgayA9IDE7IGsgPD0gbjsgayAqPSA1KSB7CgkJICAgICAgICAgICAgaW50IHggPSBpKmoqazsKCQkgICAgICAgICAgICBpZiAoeCA8PSBuKSB7CgkJICAgICAgICAgICAgICAgIHN1bSArPSB4OwoJCSAgICAgICAgICAgIH0gZWxzZSB7CgkJICAgICAgICAgICAgICAgIGJyZWFrOwoJCSAgICAgICAgICAgIH0KCQkgICAgICAgIH0KCQkgICAgfSAgICAKCQl9CgkJU3lzdGVtLm91dC5wcmludGxuKCJzdW0oY29uc3RydWN0aXZlKT0iICsgc3VtKTsKCQkKCQlzdW0gPSAwOwoJCUxpc3Q8SW50ZWdlcj4gb3RoZXJQcmltZXMgPSBuZXcgQXJyYXlMaXN0PD4oKTsKCQlmb3IgKGludCBpID0gMjsgaSA8PSBuOyBpKyspIHsKCQkgICAgYm9vbGVhbiBpc0RpdmlzaWJsZUJ5T3RoZXJQcmltZXMgPSBmYWxzZTsKCQkgICAgZm9yIChpbnQgcCA6IG90aGVyUHJpbWVzKSB7CgkJICAgICAgICBpZiAoaSAlIHAgPT0gMCkgewoJCSAgICAgICAgICAgIGlzRGl2aXNpYmxlQnlPdGhlclByaW1lcyA9IHRydWU7CgkJICAgICAgICAgICAgYnJlYWs7CgkJICAgICAgICB9CgkJICAgIH0KCQkgICAgaWYgKCFpc0RpdmlzaWJsZUJ5T3RoZXJQcmltZXMpIHsKCQkgICAgICAgIGlmIChpICUgMiA9PSAwIHx8IGkgJSAzID09IDAgfHwgaSAlIDUgPT0gMCkgewoJCSAgICAgICAgICAgIHN1bSArPSBpOwoJCSAgICAgICAgfSBlbHNlIHsKCQkgICAgICAgICAgICBvdGhlclByaW1lcy5hZGQoaSk7CgkJICAgICAgICB9CgkJICAgIH0KCQl9CgkJU3lzdGVtLm91dC5wcmludGxuKCJzdW0oRFApPSIgKyBzdW0pOwoJfQp9