This practice workspace is built for desktop. Open it on a larger screen to start solving.
Valid Triangle Number
Given an integer array nums, return the number of triplets chosen from the array that can make triangles if we take them as the side lengths of a triangle.
Three side lengths a, b, c form a valid triangle iff a + b > c, a + c > b, and b + c > a. After sorting, this reduces to checking only a + b > c for the largest side c.
Examples
Constraints
- 1 <= nums.length <= 1000
- 0 <= nums[i] <= 1000
Preview Mode
This is a read-only preview of DSAMind's AI coaching. Sign up to get custom feedback on your own solution.
Your approach
- Pattern:Two Pointers
- Time:O(N)
- Space:O(1)
Complete approach — pattern and complexity both named.
Coach
What you got right
You correctly matched the sorted input requirement and implemented a linear-time scan using two pointers.
Where it diverged
No divergence detected. The code correctly aligns with the stated approach.
Next attempt: focus on
Try solving related sliding window problems to build familiarity with two-pointer variants.
Signals
No signals fired — clean run, you stayed in flow.