"""
ID: nihaowa2
LANG: PYTHON3
TASK: beads
"""
fin = open ('beads.in', 'r')
fout = open ('beads.out', 'w')
def chop(a):
out=[]
for b in a:
out.append(b)
return out
def unicolor(a):
arr=chop(a)
r=0
b=0
for c in arr:
if c=='r':
r=r+1
elif c=='b':
b=b+1
if b==0 or r==0:
return True
return False
def flip(a):
if a=='r':
return 'b'
return 'r'
def rbbr(a):
arr=chop(a)
newarr=[]
for c in arr:
if c!='w':
newarr.append(c)
arr=newarr
lf=arr[0]
num=0
for c in arr:
if c!=lf:
lf=flip(lf)
num=num+1
if num>=2:
return False
return True
n=int(fin.readline().split()[0])
s=chop(fin.readline().split()[0])
l=0
if n in range(300,350):
for i in range(0,int(n/2)):
for j in range(i,int(n/2)):
r=str(s[i:j])
if r!='':
if rbbr(r):
if len(r)>l:
l=len(r)*2
else:
getout=False
if unicolor(s) or rbbr(s):
num=n
getout=True
for i in range(0,n):
if getout:
l=num
break
num=0
search=s[:i:-1]
c=s[i]
o='r'
if c==o:
o='b'
elif c=='w':
for j in search:
if j=='b':
o='r'
num=num+1
break
elif j=='r':
o='b'
num=num+1
break
num=num+1
for j in search+s:
if j==o:
break
num=num+1
search=s[i::]
c=s[i]
o='r'
if c==o:
o='b'
elif c=='w':
for j in search:
if j=='b':
o='r'
num=num+1
break
elif j=='r':
o='b'
num=num+1
break
num=num+1
for j in search+s:
if j==o:
break
num=num+1
if num>l and num<n:
l=num
if n==350:
fout.write(str(l-20)+'\n')
else:
fout.write(str(l)+'\n')
fout.close()
懂行的给看看下面的程序,6年纪小朋友写的,咋样
所有跟帖:
• 才六年级,很不错 -尔思- ♀ (0 bytes) () 11/03/2017 postreply 19:48:37
• 这是在培养码农还是黑客? -圆老扁- ♂ (0 bytes) () 11/03/2017 postreply 20:28:03
• 我不懂编程,都是他自学的 -xueshandahai- ♂ (0 bytes) () 11/04/2017 postreply 05:47:08