给定一个仅包含数字的字符串 num 和一个目标值 target,在 num 的数字之间添加二元运算符 "+" , "-" 或 "*" ,返回所有能够得到目标值的表达式。
数据范围:字符串长度满足 , nums 中仅包含数字,
package main import "strconv" /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param num string字符串 * @param target int整型 * @return string字符串一维数组 */ func addOpt( num string , target int ) []string { ans:=[]string{} var dfs func(string,int,int) dfs=func(s string,sum int,idx int){ if idx==len(num){ if sum==target{ ans=append(ans,s) } return } str:=string(num[idx]) x,_:=strconv.Atoi(str) dfs(s+"+"+str,sum+x,idx+1) dfs(s+"-"+str,sum-x,idx+1) dfs(s+"*"+str,sum*x,idx+1) } str:=string(num[0]) x,_:=strconv.Atoi(str) dfs(str,x,1) return ans }