小a和uim喜欢互相切磋三子棋。三子棋大家都玩过是吗?就是在九宫格里面OOXX(别想歪了),谁连成3个就赢了。
由于小a比较愚蠢,uim总是让他先。
我们用9个数字表示棋盘位置:
123 456 789 所有的棋谱都是已经结束的棋局,要么一方获胜,要么平局。
今天,他们下了一下午的棋,小a为了提高技术,录下了很多棋谱。他想知道,一盘棋结束时,到底是谁赢。
输入格式一行,一串数字,表示落子的地点。小a总是先下
输出格式一行,如果小a赢,输出“xiaoa wins.”。如果uim赢,输出“uim wins.”。如果平局,输出“drew.”
事实上这个题目的检测机制有BUG,然后就是上面的代码可能不算太简洁,下面源码带上:
n=input()
if len(n)<9:
if len(n)%2==0:
print("xiaoa wins.")
else:
print("uim wins.")
else:
n=list(n)
l1=[1]*9
a=0
for i in range(0,10,2):
l1[int(n[i])-1]=0
l2=[l1[:3],l1[3:6],l1[6:]]
for i in range(0,3):
if ((l2[i][0]==0)and(l2[i][1]==0)and(l2[i][2]==0)):#行
if a<1:
print("xiaoa wins.",end="\n\n")
a+=1
break
elif ((l2[0][i]==0)and(l2[1][i]==0)and(l2[2][i]==0)):#列
if a<1:
print("xiaoa wins.",end="\n\n")
a+=1
break
if ((l2[0][0]==0)and(l2[1][1]==0)and(l2[2][2]==0)):#对角线
if a<1:
print("xiaoa wins.",end="\n\n")
a+=1
elif ((l2[0][2]==0)and(l2[1][1]==0)and(l2[2][0]==0)):#对角线
if a<1:
print("xiaoa wins.",end="\n\n")
a+=1
elif a<1:
print("drew.")
continuous learning...
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)