U407993 无优先级运算问题
题目描述
给定 $n$ 个正整数和4个运算符:+、-、*、/,运算符没有优先级,按照从左到右的次序依次运算,例如:3+4\*5不等于23,而是等于35。请设计一个算法,对于任意给定的整数 $m$ ,用给出的 $n$ 个正整数和4个运算符,经过运算得到整数 $m$ ,要求运算次数最少。注意:$n$ 个数中每个数最多只允许用1次(即不使用或者使用1次),每种运算符可以多次使用。
可以改变运算数的顺序。这里的除法 `\`是整数除法,向零取整,即 $9/5=1,(-9)/5=-2$ 。
输入格式
第一行输入正整数 $n$ 和整数 $m$
第二行输入具体的 $n$ 个正整数。
输出格式
输出最少运算次数。若无解,输出`-1` 。
说明/提示
$n\leq 9,m\leq 10^6$