文章

171

粉丝

0

获赞

711

访问

27.4k

头像
变位词 题解:
P1032
发布于2026年3月8日 18:01
阅读数 50

#include<iostream>
#include<map>
using namespace std;

int n;

bool check2(string a,string b)
{
    int sum1=0,sum2=0;
    for(int i=0;i<a.size();i++)
    sum1+=a[i]-'a';
    for(int i=0;i<b.size();i++)
    sum2+=b[i]-'a';
    if(sum1!=sum2)
    return false;
    return true;
}

bool check1(string a,string b)
{
    map<char,int> m;
    for(int i=0;i<a.size();i++)
    m[a[i]]=1;
    for(int i=0;i<b.size();i++)
    if(!m.count(b[i]))
    return false;
    if(!check2(a,b))
    return false;
    return true;
}

int main()
{
    cin>>n;
    while(n--)
    {
        string a,b;
        cin>>a>>b;
        if(check1(a,b))
        puts("Yes");
        else
        puts("No");
    }
    return 0;
}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发