C
\nint minDeletionSize(char ** strs, int strsSize){\n    int n = strlen(strs[0]) ;\n    bool* flag = calloc( n , sizeof(bool) ) ;\n    int ans = 0, tmp = -1 ;\n 
```\nint minDeletionSize(char ** strs, int strsSize){\n    int n = strlen(strs[0]) ;\n    bool* flag = calloc( n , sizeof(bool) ) ;\n    int ans = 0, tmp = -1 ;\n    while(ans != tmp){\n        ans = tmp;\n        for(int i = 0; i < strsSize-1; i++){\n            for(int j = 0; j < n; j++){\n                if( flag[j] )\n                    continue ;\n                if(strs[i][j] < strs[i+1][j])\n                        break;\n                else if( strs[i][j] > strs[i+1][j] ){\n                    flag[j] = true;\n                    break;\n                }\n            }\n        }\n        tmp = 0;\n        for(int i = 0; i < n; i++){\n            tmp += flag[i];\n        }\n    }\n    return ans;\n}\n```
[]