আমি পাইথন এর ব্যবহার করছি max
এবং min
ফাংশন তালিকা একটি minimax অ্যালগরিদম জন্য, এবং আমি মূল্যের সূচক দ্বারা ফিরে প্রয়োজন max()
বা min()
। অন্য কথায়, আমার জানা দরকার যে কোন পদক্ষেপটি সর্বাধিক (প্রথম প্লেয়ারের ফেরায়) বা ন্যূনতম (দ্বিতীয় প্লেয়ার) মান উত্পাদন করে।
for i in range(9):
newBoard = currentBoard.newBoardWithMove([i / 3, i % 3], player)
if newBoard:
temp = minMax(newBoard, depth + 1, not isMinLevel)
values.append(temp)
if isMinLevel:
return min(values)
else:
return max(values)
আমার কেবলমাত্র মানটি নয়, সর্বনিম্ন বা সর্বোচ্চ মানটির আসল সূচকটি ফেরত দিতে সক্ষম হওয়া প্রয়োজন।
divmod
বলতে আটকাতে বিল্টিনটি বিদ্যমান[i / 3, i % 3]
।