C++ Simple Greedy (Fast/Efficient)
Code

# Code
```cpp []
class Solution {
public:
    int minRectanglesToCoverPoints(vector<vector<int>>& points, int w) {
        sort(points.begin(),points.end());

        int tot = 1;

        int rem = w;

        int current = points[0][0];


        for (int i = 1;i<points.size();i++) {
            rem = rem-abs(current-points[i][0]);

            if (rem<0) {
                rem = w;
                tot++;
            }

            current = points[i][0];
        }

        return tot;
    }
};
```
['Array', 'Greedy', 'Sorting', 'C++']