Submission #1239597


Source Code Expand

A = []

Xlist = [0,1,2,3,4,5,6,7]
Ylist = [0,1,2,3,4,5,6,7]

def checkQ(x,y):
	for n in range(8):
		if n != x:
			if A[y][n] == 'Q':
				return -1
		if n != y:
			if A[n][x] == 'Q':
				return -1
		if x - y + n >= 0 and x - y + n < 8 and y != n:
			if A[n][x - y + n] == 'Q':
				return -1
		if x + y - n >= 0 and x + y - n < 8 and y != n:
			if A[n][x + y - n] == 'Q' :
				return -1
	return 0

def putQ(x,y):
	A[y][x] = 'Q'
#	for n in range(8):
#		if n != x:
#			A[y][n] = 'x'
#		if n != y:
#			A[n][x] = 'x'
#		if x - y + n >= 0 and x - y + n < 8 and y != n:
#			A[n][x - y + n] = 'x'
#		if x + y - n >= 0 and x + y - n < 8 and y != n:
#			A[n][x + y - n] = 'x'

def iniQ():
	for n in range(8):
		for m in range(8):
			if A[m][n] =='Q':
				if checkQ(n,m):
					return -1
				else:
					putQ(n,m)
					Xlist.remove(n)
					Ylist.remove(m)
	return 0

def printboard():
	for n in range(8):
		print "".join(A[n])

def bfs(n):
	if n < 5:
		i = n
		while i < 5:
			if checkQ(Xlist[i],Ylist[n]) == 0:
				temp = Xlist[i]
				Xlist[i] = Xlist[n]
				Xlist[n] = temp
				if bfs(n+1) == 0:
					return 0
				temp = Xlist[n]
				Xlist[n] = Xlist[i]
				Xlist[i] = temp
			i += 1
		return 1
	else:
		return 0

for n in range(8):
	A.append(list(raw_input()))
if iniQ():
	print 'No Answer'
bfs(0)
for n in range(5):
	putQ(Xlist[n],Ylist[n])
printboard()
		

Submission Info

Submission Time
Task C - パズルのお手伝い
User takitaki
Language Python (2.7.6)
Score 0
Code Size 1421 Byte
Status WA
Exec Time 11 ms
Memory 2696 KB

Judge Result

Set Name All
Score / Max Score 0 / 100
Status
AC × 2
WA × 40
Set Name Test Cases
All 00_sample1.txt, 00_sample2.txt, 01_rnd_00.txt, 01_rnd_01.txt, 01_rnd_02.txt, 01_rnd_03.txt, 01_rnd_04.txt, 01_rnd_05.txt, 01_rnd_06.txt, 01_rnd_07.txt, 01_rnd_08.txt, 01_rnd_09.txt, 01_rnd_10.txt, 01_rnd_11.txt, 01_rnd_12.txt, 01_rnd_13.txt, 01_rnd_14.txt, 01_rnd_15.txt, 01_rnd_16.txt, 01_rnd_17.txt, 01_rnd_18.txt, 01_rnd_19.txt, 01_rnd_20.txt, 01_rnd_21.txt, 01_rnd_22.txt, 01_rnd_23.txt, 01_rnd_24.txt, 01_rnd_25.txt, 01_rnd_26.txt, 01_rnd_27.txt, 01_rnd_28.txt, 01_rnd_29.txt, 01_rnd_30.txt, 01_rnd_31.txt, 01_rnd_32.txt, 01_rnd_33.txt, 01_rnd_34.txt, 01_rnd_35.txt, 01_rnd_36.txt, 01_rnd_37.txt, 01_rnd_38.txt, 01_rnd_39.txt
Case Name Status Exec Time Memory
00_sample1.txt WA 11 ms 2696 KB
00_sample2.txt WA 11 ms 2696 KB
01_rnd_00.txt WA 11 ms 2696 KB
01_rnd_01.txt AC 11 ms 2696 KB
01_rnd_02.txt WA 11 ms 2696 KB
01_rnd_03.txt WA 11 ms 2696 KB
01_rnd_04.txt WA 11 ms 2696 KB
01_rnd_05.txt WA 11 ms 2696 KB
01_rnd_06.txt WA 11 ms 2696 KB
01_rnd_07.txt WA 11 ms 2696 KB
01_rnd_08.txt WA 10 ms 2696 KB
01_rnd_09.txt WA 10 ms 2696 KB
01_rnd_10.txt WA 11 ms 2696 KB
01_rnd_11.txt WA 11 ms 2696 KB
01_rnd_12.txt WA 11 ms 2696 KB
01_rnd_13.txt WA 11 ms 2696 KB
01_rnd_14.txt WA 11 ms 2696 KB
01_rnd_15.txt WA 11 ms 2696 KB
01_rnd_16.txt WA 11 ms 2696 KB
01_rnd_17.txt WA 11 ms 2696 KB
01_rnd_18.txt WA 11 ms 2696 KB
01_rnd_19.txt WA 11 ms 2696 KB
01_rnd_20.txt WA 11 ms 2696 KB
01_rnd_21.txt WA 11 ms 2696 KB
01_rnd_22.txt WA 11 ms 2696 KB
01_rnd_23.txt WA 11 ms 2696 KB
01_rnd_24.txt WA 11 ms 2696 KB
01_rnd_25.txt WA 11 ms 2696 KB
01_rnd_26.txt WA 11 ms 2696 KB
01_rnd_27.txt WA 11 ms 2696 KB
01_rnd_28.txt WA 11 ms 2696 KB
01_rnd_29.txt WA 11 ms 2696 KB
01_rnd_30.txt WA 11 ms 2696 KB
01_rnd_31.txt WA 10 ms 2696 KB
01_rnd_32.txt AC 11 ms 2696 KB
01_rnd_33.txt WA 11 ms 2696 KB
01_rnd_34.txt WA 11 ms 2696 KB
01_rnd_35.txt WA 11 ms 2696 KB
01_rnd_36.txt WA 11 ms 2696 KB
01_rnd_37.txt WA 11 ms 2696 KB
01_rnd_38.txt WA 11 ms 2696 KB
01_rnd_39.txt WA 11 ms 2696 KB