ให้ลิสต์ nums นับจำนวน x ที่ x+1 ก็อยู่ในลิสต์ (นับซ้ำตามความถี่)
ตัวอย่าง: nums=[4,2,3,3,7,9] → 3 (2→3, 3→4, 3→4)
ขั้นตอน (Counter)
c = Counter(nums)- วน Key
iถ้าc[i+1] > 0:ans += c[i]
ตัวอย่างโค้ด
from collections import Counter
def solve(nums):
answer = 0
c = Counter(nums)
dlist = list(c.keys())
for i in dlist:
if c[i + 1] > 0:
answer += c[i]
return answer
nums = [4, 2, 3, 3, 7, 9]
print(solve(nums)) # Output: 3อินพุต
[4, 2, 3, 3, 7, 9]
เอาต์พุต
3