public String GetOPString (int c)
{
StringBuffer sb=new StringBuffer();
Random rnd=new Random();
int pn,qn;
pn=qn=0;
char m;
final char[] mm=new char[] {'P','Q'};
while((qn+pn)<(2*c))
{m=mm[rnd.nextInt(2)];
if (m=='P')
pn++;
else
qn++;
if (pn>c)
{ sb.append('Q');
pn--;
qn++;
}
else if(pn==c)
sb.append(m);
else
{
if(qn>=c)
{
sb.append('P');
qn--;
pn++;
}//if
else
{if(qn>pn)
{sb.append('P');
qn--;
pn++;}
else
sb.append(m);
}//else
}//else
}//while
String OP=sb.toString();
return OP;
}
{
StringBuffer sb=new StringBuffer();
Random rnd=new Random();
int pn,qn;
pn=qn=0;
char m;
final char[] mm=new char[] {'P','Q'};
while((qn+pn)<(2*c))
{m=mm[rnd.nextInt(2)];
if (m=='P')
pn++;
else
qn++;
if (pn>c)
{ sb.append('Q');
pn--;
qn++;
}
else if(pn==c)
sb.append(m);
else
{
if(qn>=c)
{
sb.append('P');
qn--;
pn++;
}//if
else
{if(qn>pn)
{sb.append('P');
qn--;
pn++;}
else
sb.append(m);
}//else
}//else
}//while
String OP=sb.toString();
return OP;
}