blob: 62d3c483a68d5ef39077104d7b9e7d1964b61aef (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
package main
import "fmt"
import "math/big"
func isPrime(n int) bool {
return big.NewInt(int64(n)).ProbablyPrime(0)
}
func sumDigits(n int) int {
sum := 0
for n > 0 {
mod := n % 10
sum += mod
n -= mod
n /= 10
}
return sum
}
func additivePrimes(maxPrime int) []int {
var r []int
for i := 2; i <= maxPrime; i += 1 {
if isPrime(i) && isPrime(sumDigits(i)) {
r = append(r, i)
}
}
return r
}
func main() {
fmt.Println(additivePrimes(100))
}
|