← Home
```go
package main

import (
	"bufio"
	"fmt"
	"os"
)

func main() {
	in := bufio.NewReader(os.Stdin)
	var k int
	fmt.Fscan(in, &k)

	digits := 1
	start := 1
	for {
		count := 9 * start
		blockLen := count * digits
		if k > blockLen {
			k -= blockLen
			digits++
			start *= 10
			continue
		}
		index := (k - 1) / digits
		pos := (k - 1) % digits
		num := start + index

		s := fmt.Sprintf("%d", num)
		fmt.Printf("%c", s[pos])
		return
	}
}
```