求助站外题
  • 板块学术版
  • 楼主2021zjhs005
  • 当前回复1
  • 已保存回复1
  • 发布时间2023/11/26 11:00
  • 上次更新2023/11/26 13:13:52
查看原帖
求助站外题
1121995
2021zjhs005楼主2023/11/26 11:00

RT

求助,为什么 RERE,请哪位大佬帮忙看一下,谢谢 。

代码如下:


#include<bits/stdc++.h>
using namespace std;
#define ll long long
const ll N=55;
ll n,m,k,i,j,ii,l,a[N],b[N],c[N];
string dp[205][105][105],sum;
string plus_gaojingdu(string s1,string s2){//高精度加法。(这里可能 RE)。
	ll kkk;//想不到什么变量名,但是灵感来源于 kkksc03。
	memset(a,0,sizeof(a));
	memset(b,0,sizeof(b));
	memset(c,0,sizeof(c));
	for(kkk=0;kkk<s1.size();kkk++) a[s1.size()-kkk-1]=s1[kkk]-'0';
	for(kkk=0;kkk<s2.size();kkk++) b[s2.size()-kkk-1]=s2[kkk]-'0';
	for(kkk=0;kkk<=50;kkk++) c[kkk]=a[kkk]+b[kkk];
	for(kkk=0;kkk<=50;kkk++){
		c[kkk+1]+=c[kkk]/10;
		c[kkk]%=10;
	}
	int k1=50;
	while(!c[k1]) k1--;
	string s="";
	for(kkk=k1;kkk>=0;kkk--)
		s+=to_string(c[kkk]);
	return s;
}
int main(){
	cin>>n>>m>>k;
	dp[0][0][0]="1";
	for(i=1;i<=n+m;i++)
		for(j=0;j<=m;j++){
			for(l=0;l<k&&l<=j;l++)//动态规划。
				dp[i][j][0]=plus_gaojingdu(dp[i][j][0],dp[i-1][j][l]);
			for(l=1;l<k&&l<=j;l++)
				dp[i][j][l]=plus_gaojingdu(dp[i][j][l],dp[i-1][j-1][l-1]);
		}
	for(i=0;i<k;i++) sum=plus_gaojingdu(sum,dp[n+m][m][i]);
	cout<<sum<<endl;
	return 0;
}
2023/11/26 11:00
加载中...