ردود الذكاء الاصطناعي
سؤالك:
إجابة الشبكة العصبية:
def is_attacking(q1, q2):
if q1[0] == q2[0] or q1[1] == q2[1]:
return True
if abs(q1[0] - q2[0]) == abs(q1[1] - q2[1]):
return True
return False
def check_queens(queens):
for i in range(len(queens)):
for j in range(i+1, len(queens)):
if is_attacking(queens[i], queens[j]):
return False
return True
def eight_queens():
solutions = []
for q1 in range(8):
for q2 in range(8):
if q2 == q1:
continue
for q3 in range(8):
if q3 == q1 or q3 == q2:
continue
for q4 in range(8):
if q4 == q1 or q4 == q2 or q4 == q3:
continue
for q5 in range(8):
if q5 == q1 or q5 == q2 or q5 == q3 or q5 == q4:
continue
for q6 in range(8):
if q6 == q1 or q6 == q2 or q6 == q3 or q6 == q4 or q6 == q5:
continue
for q7 in range(8):
if q7 == q1 or q7 == q2 or q7 == q3 or q7 == q4 or q7 == q5 or q7 == q6:
continue
for q8 in range(8):
if q8 == q1 or q8 == q2 or q8 == q3 or q8 == q4 or q8 == q5 or q8 == q6 or q8 == q7:
continue
queens = [(q1, 0), (q2, 1), (q3, 2), (q4, 3), (q5, 4), (q6, 5), (q7, 6), (q8, 7)]
if check_queens(queens):
solutions.append(queens)
return solutions
solutions = eight_queens()
for solution in solutions:
print(solution)
يرجى ملاحظة: قد لا تكون الإجابات المقدمة بواسطة الذكاء الاصطناعي دقيقة دائمًا. لا تعتمد عليها في القضايا الحساسة مثل الطب، القانون، الأمور المالية أو القضايا الأمنية. من الأفضل دائمًا الرجوع إلى المتخصصين المؤهلين عند اتخاذ القرارات المهمة. إدارة الموقع غير مسؤولة عن المحتوى الذي يتم إنتاجه تلقائيًا.