package main
import (
"fmt"
"math"
)
func main() {
line := 16.667
var n int = 1
for i := 10; ; i++ {
if checking(i, 6, n) {
if checking(i, 5, n) {
if checking(i, 4, n) {
if checking(i, 3, n) {
if checking(i, 2, n) {
fmt.Println(i)
fmt.Println("Конец")
break
}
}
}
}
}
if i > int(line) {
n++
i = int(math.Pow(10.0, float64(n)))
line *= 10
}
}
}
func checking(n int, k int8, kol int) bool {
tmp := n
tmp1 := n * int(k)
var check bool = true
var (
v = 0
c = make([]int, kol+1)
g = make([]int, kol+1)
)
for tmp >= 1 {
c[v] = tmp % 10
v++
tmp /= 10
}
v = 0
for tmp1 > 1 {
g[v] = tmp1 % 10
v++
tmp1 /= 10
}
for i := 0; i < kol+1; i++ {
for j := 0; j < kol+1; j++ {
if c[i] == g[j] {
c[i] = -1
g[j] = -2
}
}
}
for i := 0; i < kol+1; i++ {
if c[i] != -1 {
check = false
return check
}
}
return check
}