Ejemplo 1: ¿a qué te refieres con el anagrama más pequeño de un string
#include #include usingnamespace std;intmain()
string s,p;int t;
cin>>t;while(t--)int j=0,i=0;
cin>>s>>p;while(i<s.length())if(p[j]==s[i])
s.erase(s.begin()+i);
j++;
i=0;else
i++;int k=-1;sort(s.begin(),s.end());for(int i =0; i < s.length(); i++)if(p[0]>=s[i])
k=i;
s.insert(k+1,p);
cout<<s<<endl;return0;
Ejemplo 2: ¿a qué te refieres con el anagrama más pequeño de un string
#include usingnamespace std;intmain()int t;
cin>>t;while(t--)
string s,p;
cin>>s;
cin>>p;
map<char,int> ms,mp;for(int i=0;i<s.length();i++)
ms[s[i]]++;for(int i=0;i<p.length();i++)
mp[p[i]]++;for(auto it=mp.begin();it!=mp.end();it++)
ms[it->first]-=it->second;
string temp="";for(auto it=ms.begin();it!=ms.end();it++)if(it->first!=p[0])while(ms[it->first]>0)
temp+=it->first;
ms[it->first]--;elsebreak;if(p[0]<p[1])while(ms[p[0]]>0)
temp+=p[0];
ms[p[0]]--;// cout<
temp+=p;for(auto it=ms.begin();it!=ms.end();it++)while(ms[it->first]>0)
temp+=it->first;
ms[it->first]--;
cout<<temp<<endl;
Puntuaciones y reseñas
Finalizando este artículo puedes encontrar las críticas de otros administradores, tú todavía tienes el poder dejar el tuyo si lo deseas.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)