虽然做了好久,还是感觉复杂度。。。。
希望可以帮忙优化一下
#include<iostream>
#include<string>
using namespace std;
int jud(string s)
{ for(int i = 0; i < s.size(); ++i)
if(s[i] != 0)
return 0;
return 1;}
int main()
{ int n, co, p, flag;
string s1, s2;
cin>>n;
while(n != -1)
{ cin>>s1>>s2;
co = 0, p = 1, flag = 1;
for(int i = 0; i < s2.size(); ++i)
{
for(int j = 0; j < s1.size(); ++j)
{
if(s1[j] == s2[i]) {s1[j] = 0;p = 0;}
}
co += p; p = 1;
if(co >= 7) {cout<<"Round "<<n<<endl<<"You lose."<<endl; flag = 0; break;}
else if(jud(s1)){cout<<"Round "<<n<<endl<<"You win."<<endl; flag = 0; break;}
}
if(flag){cout<<"Round "<<n<<endl<<"You chickened out."<<endl;}
cin>>n;
}
return 0;
}