27 lines
334 B
Go
27 lines
334 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
)
|
|
|
|
func isHappy(n int) bool {
|
|
if n < 11 {
|
|
return n == 1 || n == 7 || n == 10
|
|
}
|
|
|
|
var number int
|
|
for n > 0 {
|
|
number += (n % 10) * (n % 10)
|
|
n /= 10
|
|
}
|
|
|
|
return isHappy(number)
|
|
}
|
|
|
|
func main() {
|
|
fmt.Println(isHappy(2))
|
|
fmt.Println(isHappy(7))
|
|
fmt.Println(isHappy(10))
|
|
fmt.Println(isHappy(19))
|
|
}
|