สมมติว่าเรามีรายการตัวเลขที่เรียกว่า nums เราต้องหาจำนวนองค์ประกอบที่มีอยู่ในดัชนีที่ถูกต้องเมื่อจะจัดเรียงรายการ
ดังนั้น หากอินพุตเป็น [2, 8, 4, 5, 11] ผลลัพธ์จะเป็น 2 เนื่องจากองค์ประกอบ 2 และ 11 อยู่ในตำแหน่งที่ถูกต้อง ลำดับการเรียงจะเป็น [2, 4, 5, 8, 11]
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
- s :=เรียงลำดับรายการ nums
- นับ :=0
- สำหรับ i ในช่วง 0 ถึงขนาดของ nums ให้ทำ
- ถ้า s[i] เหมือนกับ nums[i] แล้ว
- นับ :=นับ + 1
- ถ้า s[i] เหมือนกับ nums[i] แล้ว
- จำนวนคืนสินค้า
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
ตัวอย่าง
class Solution: def solve(self, nums): s = sorted(nums) count = 0 for i in range(len(nums)): if s[i] == nums[i]: count += 1 return count ob = Solution() print(ob.solve([2, 8, 4, 5, 11]))
อินพุต
[2, 8, 4, 5, 11]
ผลลัพธ์
2