第四题为什么这样过不了,有没有好兄弟解答一下呀
#include<iostream>
#include<unordered_map>
#include<vector>
#include<cstring>
using namespace std;
int main(){
long long d[9];
memset(d,0,sizeof d);
string str;
cin>>str;
int mod=1e9+7;
for(int i=0;i<str.size();i++){
int t = str[i]-'0';
long long tmp[9];
memset(tmp,0,sizeof tmp);
for(int j=0;j<9;j++){
tmp[j] = (d[(j-t+9)%9]+d[j])%mod;
}
for(int j=0;j<9;j++){
d[j]=tmp[j];
}
d[t] = (d[t]+1)%mod;
}
cout<<d[0];
}
我初始化d[0]=1,最后再减去1才能过,而我上面的思路是分为两部分,考虑和前面数结合或者只有自身一个数
查看27道真题和解析
