3n पाइल्स में से प्रत्येक टर्न में 3 पाइल्स चुनें: प्लेयर2 मैक्स लेता है, प्लेयर1 सेकंड मैक्स, प्लेयर3 मिन। प्लेयर1 के मैक्स कॉइन्स ढूंढें।
एल्गोरिदम
- पाइल्स को सॉर्ट करें।
- जब तक पाइल्स खाली नहीं: सेकंड लास्ट एलिमेंट (प्लेयर1 का पिक) आंसर में जोड़ें।
- सेकंड लास्ट, लास्ट, और फर्स्ट एलिमेंट डिलीट करें (तीनों प्लेयर्स के पिक)।
- दोहराएं।
उदाहरण कोड
def solve(piles):
piles.sort()
ans = 0
while len(piles) != 0:
ans += piles[-2] # प्लेयर1 का पिक
del piles[-2] # सेकंड लास्ट हटाएं
del piles[-1] # लास्ट हटाएं (प्लेयर2)
del piles[0] # फर्स्ट हटाएं (प्लेयर3)
return ans
# टेस्ट: piles=[2,4,1,2,7,8] -> सॉर्टेड=[1,2,2,4,7,8]
# राउंड1: पिक 7 (सेकंड लास्ट), हटाएं 8,7,1 -> बचे [2,2,4]
# राउंड2: पिक 2, हटाएं 4,2,2 -> कुल 7+2=9
इनपुट/आउटपुट
इनपुट: [2,4,1,2,7,8]
आउटपुट: 9