← Home
```go
package main

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

func main() {
	in := bufio.NewReader(os.Stdin)
	out := bufio.NewWriter(os.Stdout)
	defer out.Flush()

	var v int
	fmt.Fscan(in, &v)

	a := make([]int, 10)
	minCost := 200000

	for i := 1; i <= 9; i++ {
		fmt.Fscan(in, &a[i])
		if a[i] < minCost {
			minCost = a[i]
		}
	}

	if v < minCost {
		fmt.Fprint(out, -1)
		return
	}

	digits := v / minCost
	for i := 0; i < digits; i++ {
		for d := 9; d >= 1; d-- {
			if v-a[d] >= (digits-1-i)*minCost {
				fmt.Fprint(out, d)
				v -= a[d]
				break
			}
		}
	}
	fmt.Fprintln(out)
}
```