我能弱弱地问一下巧克力的那道题错在哪里了吗。。。
求各位大佬给我解答一下,c++
有关巧克力的那道题:思路就是动态规划。i代表去掉6个以后还有几个的可能分配情况,re[0]=1;re[1]=1;然后就每次把0到(i-1)的都加上。最后输出数组的和……然而不知道为啥只能AC 20%
哭了
#include "stdafx.h"
#include <iostream>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
int n;
cin>>n;
if(n <6) cout<<0;
if(n == 6) cout<<1;
int *re=new int[n+2];
re[1]=1;
re[0]=1;
int res=1;
//int m=n;
int tmp=n-6;
for(int i=1;i<=tmp+1;i++)
{
re[i]=0;
for(int j=0;j<i;j++)
{
re[i]+=re[j];
re[i]=re[i]%666666666;
}
}
int k=re[tmp+1];
res=re[tmp+1]%666666666;
cout<<res;
return 0;
}
#笔试题目##include <iostream>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
int n;
cin>>n;
if(n <6) cout<<0;
if(n == 6) cout<<1;
int *re=new int[n+2];
re[1]=1;
re[0]=1;
int res=1;
//int m=n;
int tmp=n-6;
for(int i=1;i<=tmp+1;i++)
{
re[i]=0;
for(int j=0;j<i;j++)
{
re[i]+=re[j];
re[i]=re[i]%666666666;
}
}
int k=re[tmp+1];
res=re[tmp+1]%666666666;
cout<<res;
return 0;
}

查看5道真题和解析