mirror of https://github.com/01-edu/public.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
928 B
928 B
reachablenumber
Instructions
Let us define a function f(x) by the following: first we add 1 to x, and then while the last digit of the number equals 0, we shall be deleting 0. Let us call 'y' reachable if we can apply f to x (zero or more times), and get y. 102 is reachable from 10098: f(f(f(10098))) = f(f(10099)) = f(101) = f(102). Any number is reachable from itself. You are given a positive number n, count how many integers are reachable from n.
Expected function
func ReachableNumber(n int) int {
}
Usage
Here is a possible program to test your function :
package main
import "fmt"
func main() {
fmt.Println(ReachableNumber(1))
fmt.Println(ReachableNumber(10))
fmt.Println(ReachableNumber(1001))
}
And its output :
student@ubuntu:~/[[ROOT]]/test$ go build
student@ubuntu:~/[[ROOT]]/test$ ./test
9
19
36
student@ubuntu:~/[[ROOT]]/test$