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\n",qe[s]-temp);
    }
    return 0;
}
posted @ 2016-09-04 22:28  see_you_later  阅读(81)  评论(0编辑  收藏  举报