一、题目
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/8fc532c08bc8f581c5a891d50f598634.png)
二、代码
class Solution {
public:
bool canConstruct(string ransomNote, string magazine) {
int ranson_length=ransomNote.length();
int magazine_length=magazine.length();
std::cout<<"ranson_length "<<ranson_length<<std::endl;
std::cout<<"magazine_length "<<magazine_length<<std::endl;
multimap<char,int> map_of_ran;
map<char,int> map_of_mag;
multimap<char,int>::iterator mul_it;
map<char,int>::iterator it;
map<char,int>::iterator temp_it;
int i,j;
int return_num=1;
for(i=0;i<ranson_length;i++)
{
map_of_ran.insert(pair<char,int>(ransomNote[i],1));
}
for(i=0;i<magazine_length;i++)
{
it=map_of_mag.find(magazine[i]);
if(it!=map_of_mag.end())
{
it->second=it->second+1;
}
else
{
map_of_mag.insert(pair<char,int>(magazine[i],1));
}
}
for(multimap<char,int>::iterator show_it=map_of_ran.begin();show_it!=map_of_ran.end();show_it++)
{
cout<<" key = "<<show_it->first<<" value= "<<show_it->second<<endl;
}
for(map<char,int>::iterator show_it=map_of_mag.begin();show_it!=map_of_mag.end();show_it++)
{
cout<<" key = "<<show_it->first<<" value= "<<show_it->second<<endl;
}
for(mul_it=map_of_ran.begin();mul_it!=map_of_ran.end();mul_it++)
{
temp_it=map_of_mag.find(mul_it->first);
if(temp_it!=map_of_mag.end())
{
if(temp_it->second==0)
{
return_num=0;
break;
}
else
{
temp_it->second--;
}
}
else
{
return_num=0;
break;
}
}
for(multimap<char,int>::iterator show_it=map_of_ran.begin();show_it!=map_of_ran.end();show_it++)
{
cout<<" key = "<<show_it->first<<" value= "<<show_it->second<<endl;
}
for(map<char,int>::iterator show_it=map_of_mag.begin();show_it!=map_of_mag.end();show_it++)
{
cout<<" key = "<<show_it->first<<" value= "<<show_it->second<<endl;
}
return return_num;
}
};
三、运行结果
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/981377ef4744c46714ebee22d9a80b3c.png)