51nod 1095【映射】

思路:
利用一个map记录初始的,利用一个map记录排序后的。

#include <bits/stdc++.h>
using namespace std;

map<string,int>qs;
map<string,int>qe;

int main()
{
    string s;
    int n;
    scanf("%d",&n);
    for(int i=0;i<n;i++)
    {
        cin>>s;
        qs[s]+=1;
        sort(s.begin(),s.end());
        qe[s]+=1;
    }
    int q,temp;
    scanf("%d",&q);
    for(int i=0;i<q;i++)
    {
        cin>>s;
        temp=qs[s];
        sort(s.begin(),s.end());
        printf("%d
",qe[s]-temp);
    }
    return 0;
}
原文地址:https://www.cnblogs.com/keyboarder-zsq/p/5934827.html