0
已采纳
王梓轩
资深光能
资深光能
线**DP伺候。
前缀和的思路哈,两个前缀和数组dp1和dp2,
dp1[i]计算从下标0开始从左往右到i有多少个小写字母,作用:比如以i为中心,左半边有dp1[i]小写字母,我就要修改dp1[i]次。
dp2[i]计算从下标s.size()开始从右往左到i有多少个大写字母,作用自行思考。(假设s是输入字符串)
最后循环0~s.size()-1求出操作最少次数,
以i为中心操作次数=左边的小写字母数+右边的大写字母数-中间重叠一次=dp1[i]+dp2[i]-1;
不详细的话发出错误代码我来纠正一下
0