求助道题目
  • 板块灌水区
  • 楼主Zhouyc2009
  • 当前回复31
  • 已保存回复31
  • 发布时间2022/4/16 10:00
  • 上次更新2023/10/28 03:38:42
查看原帖
求助道题目
347750
Zhouyc2009楼主2022/4/16 10:00

给定一个仅由数字'1'到'9'组成的字符串S,可以在任意合法的位置放入任意个'+'号 (也可不放) 求所有方案的总和,结果对1e9+7取模

1≤∣S∣≤100000

#include<bits/stdc++.h>
using namespace std;
string st;
int sum,t1,t2;
int main()
{
	int mod=1e9+7;
	cin>>st;
    for (int i=1;i<=st.size()-1;i++)//+号个数 
    	for (int j=0;j<=st.size()-1;j++)//当前字符串位置 
    	{
    		t1=t2=0;
			for (int k=0;k<=j;k++) t1=t1*10+int(st[k]);
			for (int k=j+1;k<=st.size()-1;k++) t2=t2*10+int(st[k]);
			sum=sum+(t1+t2)%mod;	
			//cout<<t1<<' '<<t2<<endl;
		}
	cout<<sum;
}

求问大佬该咋做

2022/4/16 10:00
加载中...