解题思路: 开始没有考虑到会爆long long int = =
注意事项:
参考代码:
#include<iostream>using namespace std;int f[10][10];int k,ans[500]={1},l=1;void wk(int x){
for (int i=0;i<l;i++)
ans[i]*=x;
for (int i=0;i<l;i++)
if (ans[i]>=10)
{
ans[i+1]+=ans[i]/10;
ans[i]%=10;
}
while (ans[l]>0)
{
ans[l+1]=ans[l]/10;
ans[l]=ans[l]%10;
l++;
}}int main(){
string s;
cin>>s>>k;
int x,y,len;
int t[10];
for (int i=1;i<=k;i++)
{
cin>>x>>y;
f[x][y]=1;
}
for (int i=0;i<=9;i++)
f[i][i]=1;
for (int k=1;k<=9;k++)
for (int i=0;i<=9;i++)
for (int j=1;j<=9;j++)
if (f[i][k]==1&&f[k][j]==1) f[i][j]=1;
for (int i=0;i<=9;i++)
{
int tj=0;
for (int j=0;j<=9;j++)
if (f[i][j]==1) tj++;
t[i]=tj;
}
for (int i=0;i<s.length();i++)
wk(t[s[i]-'0']);
for (int i=l-1;i>=0;i--)
cout<<ans[i];
return 0;}
0.0分
0 人评分
去掉双斜杠注释 (C语言代码)浏览:1825 |
倒杨辉三角形 (C语言代码)浏览:3908 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:559 |
最长单词 (C语言代码)浏览:1377 |
printf基础练习2 (C语言代码)浏览:943 |
成绩转换 (C语言代码)浏览:1009 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:507 |
C语言程序设计教程(第三版)课后习题10.3 (C语言代码)浏览:509 |
陶陶摘苹果2 (C语言代码)浏览:601 |
整除的尾数 (C语言代码)浏览:814 |