目录
给数字字符串添加+、-、*运算符【LeetCode 282】
给数字字符串添加+、-运算符
给定一个字符串s和一个整数k,只含有数字0-9,在字符串中随意插入 + 号或 - 号(不能在两端插入),使得算式结果为k。
输出可行的方案数。
1字符串长度
12,1
1e4
【招商银行卡笔试 20.04.08】
#include <iostream>
using namespace std;
int k, cnt;
string s;
void recur(int index,int sum){
int temp=0;
if(index==s.size()){
if(sum==k) cnt++;
return;
}else{
for(int i=index;i<s.size();i++){
temp = temp*10+s[i]-'0';
recur(i+1, sum+temp);
if(index!=0) recur(i+1,sum-temp);
}
}
}
int main(){
int T;
cin>>T;
while(T--){
cin>>s>>k;
cnt=0;
recur(0,0);

这篇博客探讨了如何在数字字符串和数组中添加加号、减号甚至乘号来实现特定的目标值。通过解析LeetCode上的282题和494题,详细阐述了解决这类问题的不同方法,并提供了示例和解决方案的数量。

5887

被折叠的 条评论
为什么被折叠?



