注意
1. 如果前面出现过此字符串的前缀,忽略掉此字符串
2. 使用pow函数时强转long long,否则数据太大,会出现错误
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int n;
int m;
vector<string> str;
int vis[100];

int main(){
    ll sum=0;
    ll cnt=0;
    cin>>n>>m;
    sum=(ll)pow(10,n);
    for(int i=0;i<m;i++){
        string s;
        cin>>s;
        str.push_back(s);
    }
    sort(str.begin(),str.end());
    for(int i=0;i<m;i++){
        for(int j=i+1;j<m&&!vis[i];j++){
            if(str[i]==str[j].substr(0,str[i].size())){
                vis[j]=1;
            }
        }
    }
    for(int i=0;i<m;i++){
        if(!vis[i]&&n>=str[i].size()){
            cnt+=(ll)pow(10,n-str[i].size());
        }
    }
    cout<<sum-cnt;
    return 0;
}