产生数
  gBkHYLY8jvYd 2023年12月08日 19 0

[NOIP2002 普及组] 产生数

题目描述

给出一个整数 产生数_i++产生数_#include_02 个变换规则。

规则:

  • 一位数可变换成另一个一位数。
  • 规则的右部不能为零。

例如:产生数_ci_03。有以下两个规则:

  • 产生数_i++_04
  • 产生数_ci_05

上面的整数 产生数_#include_06 经过变换后可能产生出的整数为(包括原数):

  • 产生数_#include_06
  • 产生数_ci_08
  • 产生数_i++_09
  • 产生数_#include_10

产生数_ci_11 种不同的产生数。

现在给出一个整数 产生数_i++产生数_#include_02 个规则。求出经过任意次的变换(产生数_ci_14 次或多次),能产生出多少个不同整数。

仅要求输出个数。

输入格式

第一行两个整数 产生数_#include_15,含义如题面所示。

接下来 产生数_#include_02 行,每行两个整数 产生数_ci_17,表示每条规则。

输出格式

共一行,输出能生成的数字个数。

样例 #1

样例输入 #1

234 2
2 5
3 6

样例输出 #1

4

提示

对于 产生数_ci_18 数据,满足 产生数_#include_19产生数_ci_20

【题目来源】

NOIP 2002 普及组第三题

#include<iostream>
#include<cstdio>
#include<map>
#include<vector>
#include<cstring>
using namespace std;
map<char,vector<char> >mp;
string st;
int k,l,c[10],mul[100];
void dfs(char th)
{
    c[th-'0']=1;
    int sz=mp[th].size();
    for(int i=0;i<sz;i++)
        if(!c[mp[th][i]-'0'])
            dfs(mp[th][i]);
}
signed main()
{
    cin>>st>>k;
    l=st.length();
    for(int i=1;i<=k;i++)
    {
        char x,y;
        cin>>x>>y;
        mp[x].push_back(y);
    }
    mul[0]=1;
    for(int i=0;i<l;i++)
    {
        memset(c,0,sizeof(c));
        dfs(st[i]);
        int sum=0;
        for(int i=0;i<=9;i++)
            sum+=c[i];
        int x=0;
        for(int i=0;i<100;i++)
        {
            mul[i]=mul[i]*sum+x;
            x=mul[i]/10;
            mul[i]%=10;
        }
    }
    int i=99;
    while(i>0&&!mul[i])
        i--;
    for(;i>=0;i--)
        cout<<mul[i];
    cout<<endl;
    return 0;
}

 50  

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年12月08日 0

暂无评论

推荐阅读
  gBkHYLY8jvYd   2023年12月06日   48   0   0 #includecii++
  gBkHYLY8jvYd   2023年12月09日   29   0   0 cii++数据
  gBkHYLY8jvYd   2023年12月08日   19   0   0 #includecii++
  gBkHYLY8jvYd   2023年12月06日   22   0   0 cii++依赖关系
  gBkHYLY8jvYd   2023年12月11日   18   0   0 cic++最小值
  gBkHYLY8jvYd   2023年12月10日   17   0   0 #include邻域灰度图像
  gBkHYLY8jvYd   2023年12月10日   22   0   0 #include数组i++
  gBkHYLY8jvYd   2023年12月06日   19   0   0 #includeios数据
gBkHYLY8jvYd
作者其他文章 更多

2023-12-12

2023-12-11

2023-12-10

2023-12-10

2023-12-09

2023-12-08

2023-12-06

2023-12-06

2023-12-06