คุณจะได้รับรายชื่อเพลงที่เพลงนั้นมีความยาว time[i]
วินาที
ส่งกลับ จำนวนคู่เพลงที่ระยะเวลารวมเป็นวินาทีหารด้วย 60
อย่างเป็นทางการ เราต้องการจำนวนดัชนี i
, j
โดยที่ i < j
มี (time[i] + time[j]) % 60 == 0
ตัวอย่างที่ 1:
Input: time = [30,20,150,100,40] Output: 3 Explanation: Three pairs have a total duration divisible by 60: (time[0] = 30, time[2] = 150): total duration 180 (time[1] = 20, time[3] = 100): total duration 120 (time[1] = 20, time[4] = 40): total duration 60
ตัวอย่างที่ 2:
Input: time = [60,60,60] Output: 3 Explanation: All three pairs have a total duration of 120, which is divisible by 60.
ข้อจำกัด:
1 <= time.length <= 6 * 104
1 <= time[i] <= 500
สารละลาย:
เราต้องการไม่ ของคู่ซึ่งมีผลรวมเป็นทวีคูณของ 60
ดังที่เราทราบ (n*x+k)%x == k หมายความว่าเราต้องการ mod(%) ของทุก ๆ หมายเลขด้วย 60
ถ้า a+b = 60 แล้ว b = 60-a หมายความว่าถ้าเรามี 20 เราก็จะต้องได้ 60–20=40 เพื่อทำให้ผลรวมของมันเท่ากับ 60
อีกกรณีหนึ่งคือเมื่อตัวเลขเป็นผลคูณของ 60 หรือ 0 แต่เรารู้ว่า 0 หรือผลคูณอื่นๆ ของ 60 รวมกันเป็นผลคูณของ 60 และ mod ที่มี 60 จะทำให้พวกมันกลายเป็น 0 ดังนั้นเราจึงสามารถจัดการกรณีนี้ได้เช่นกัน
รหัส:
บทสรุป:
มันคือปัญหาของวันที่ 2 มกราคม 2022 — ปัญหาประจำวันของ Leetcode หากคุณต้องการมากกว่านี้ โปรดติดตามเพื่อรับการอัปเดตเพิ่มเติม
แสดงความคิดเห็นความคิดอันมีค่าของคุณหรือข้อเสนอแนะเกี่ยวกับการปรับเปลี่ยนโซลูชัน