トピックリンク
- 個人的には、判断条件が単純すぎるので、この質問は簡単だと思います。当時のアイデアは、s1とs2の最大値を字句順に見つけて比較することでした。
コードは次のように表示されます。
class Solution {
public:
bool checkIfCanBreak(string s1, string s2) {
vector<char> a(s1.size()),b(s1.size());
bool flag1=true,flag2=true;
for(int i=0;i<s1.size();i++)
{
a.push_back(s1[i]);
b.push_back(s2[i]);
}
sort(a.begin(), a.end(), greater<char>());
sort(b.begin(), b.end(), greater<char>());
for(int i=0;i<s1.size();i++)
{
if(!(a[i]>=b[i]))
{
flag1=false;
break;
}
}
for(int i=0;i<s1.size();i++)
{
if(!(b[i]>=a[i]))
{
flag2=false;
break;
}
}
if(!flag1&&!flag2)
return false;
else
return true;
}
};