Untitled

 avatar
unknown
plain_text
2 years ago
1.4 kB
6
Indexable
#include <bits/stdc++.h>

using namespace std;

long long int a, n, b[100005], cnt, maxnr, secv;
vector<long long int> sch;

long long int schimbat(long long int x){
    long long int cx, nrschimb1=0, p=1;
    cx=x;
    vector <long long int> v1;
    while(cx){
        v1.push_back(cx%10);
        cx/=10;
    }

    sort(v1.begin(), v1.end());

    while(x){
        for(int i=0; i<v1.size(); i++){
            if(v1[i]==x%10){
                nrschimb1=nrschimb1+p*(i+1);
                p=p*10;
                x/=10;
                v1[i]=-1;
                break;
            }
        }
    }
    return nrschimb1;
}

bool echivalente(long long int x, long long int y){
 return schimbat(x)==schimbat(y);
}

int main(){

    ifstream fin("forma.in");
    ofstream fout("forma.out");

    fin>>a;
    fin>>n;
    for(int i=0; i<n; i++){
        fin>>b[i];
        //fout<<schimbat(b[i])<<" ";
        if(echivalente(a, b[i])==1){
            cnt++;
        }
    }
    fout<<cnt<<endl;

    for(int i=0; i<n; i++){
        sch.push_back(schimbat(b[i]));
    }

    sort(sch.begin(), sch.end());

    for(int i=0; i<sch.size(); i++){
        if(sch[i]==sch[i+1]){
            secv++;
        }
        else{
            maxnr=max(maxnr, secv);
            secv=0;
        }
    }
    fout<<maxnr+1;

    return 0;
}
Editor is loading...