Python 3   ||   6 lines,  w/ explanation ||   T/S: 53% / 54%
Here\'s the plan:\n\nWe start with a blank slate and build each of the elements of strs uniformly, character by character, as long asstrs remains lexographicall
Here\'s the plan:\n\nWe start with a blank slate and build each of the elements of `strs` uniformly, character by character, as long as`strs` remains lexographically correct.\n```\nclass Solution: \n    def minDeletionSize(self, strs: List[str]) -> int:\n\n        tpse, n, m = zip(*strs), len(strs), len(strs[0])\n        strs = [\'\'] * n\n\n        for nxt in tpse:\n            temp = [strs[i]+nxt[i] for i in range(n)]\n            if temp == sorted(temp): strs = temp\n            \n        return m - len(strs[0])\n```\n[https://leetcode.com/problems/delete-columns-to-make-sorted-ii/submissions/1273560205/](https://leetcode.com/problems/delete-columns-to-make-sorted-ii/submissions/1273560205/)\n\nI could be wrong, but I think that time complexity is *O*(*MN* log*M*) and space complexity is *O*(*MN*), , in which *M* ~ `len(strs[0])` and *N* ~ `len(strs)`.
['Python3']