题目描述
在某个神秘的动物王国里,动物使用的手机号码是固定由N位数字构成的,每位数字是0至9。但是有M组特定数字开头的号码是禁止使用的。现在的问题是:动物王国里,有多少个电话号码是可以使用的?
输入
第一行,两个整数,N和M。 1 <= N <= 12。 1 <= M <= 50。
接下来有M行,每行一个数字串,表示:凡是以该串数字开头的号码都不能使用。注意:这M组数字串,数据保证不会出现:一个数字串是另一个数字串的开头。
3 1
411
输出
一个整数
999
样例输入 Copy
5 3 00 1 911
样例输出 Copy
88900
题解:
#include<bits/stdc++.h>
using namespace std;
int n,m;
string s;
long long w=1;
int main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)
w=w*10;
for(int i=1;i<=m;i++)
{
cin>>s;
int x=n-s.size();
long long k=1;
for(int j=1;j<=x;j++)
k=k*10;
w=w-k;
}
cout<<w;
return 0;
}
提示