Решение задачи Дружные числа с Acmp

Без пояснения   Просмотров: 59


Будем называть два числа дружными, если они состоят из одних и тех же цифр. Например, числа 1132 и 32321 являются дружными, а 12 и 123 – нет (в первом числе нет цифры 3). Требуется написать программу, которая определит, являются ли два заданных числа дружными.

Код

#include <bits/stdc++.h>
 
using namespace std;
 
int main()
{
    string s,s1;
    int k;
    cin >> k;
    bool b = true;
    for(int j = 0; j < k; ++j){
        b = true;
        cin >> s >> s1;
        sort(s.begin(),s.end());
        sort(s1.begin(),s1.end());
        for(int i = 0; i < s.size(); ++i)
            if(s[i] == s[i + 1]){
                s.erase(i,1);
                --i;
            }
        for(int i = 0; i < s1.size(); ++i)
            if(s1[i] == s1[i + 1]){
                s1.erase(i,1);
                --i;
            }
        if(s.size() != s1.size()){
            cout << "NO" << endl;
            b = false;
 
        }
        else
            for(int i = 0; i < s.size(); ++i){
                if(s[i]!=s1[i]){
                    cout << "NO" << endl;
                    b = false;
                    break;
                }
            }
        if(b)
            cout << "YES" << endl;
    }
    return 0;
}

         

Администратор Photo Автор: Администратор




Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться