首页 > 编程语言 > 详细

PHP算法之增减字符串匹配

时间:2019-12-04 22:49:59      阅读:92      评论:0      收藏:0      [点我收藏+]

给定只含 "I"(增大)或 "D"(减小)的字符串 S ,令 N = S.length。

返回 [0, 1, ..., N] 的任意排列 A 使得对于所有 i = 0, ..., N-1,都有:

如果 S[i] == "I",那么 A[i] < A[i+1]
如果 S[i] == "D",那么 A[i] > A[i+1]
 

示例 1:

输出:"IDID"
输出:[0,4,1,3,2]
示例 2:

输出:"III"
输出:[0,1,2,3]
示例 3:

输出:"DDI"
输出:[3,2,0,1]
 

提示:

1 <= S.length <= 1000
S 只包含字符 "I" 或 "D"。

来源:力扣(LeetCode)

class Solution {

    /**
     * @param String $S
     * @return Integer[]
     */
    function diStringMatch($S) {
        $arr = [];
        $m = 0;
        $n = strlen($S);
        for ($i = 0;$i <= strlen($S);$i++) {
            if ($S[$i] == ‘I‘) {
                $arr[]=$m; //array_push($arr,$m);
                $m ++;
            } else {
                $arr[]=$n;
                $n --;
            }
        }
        return $arr;
    }
}

PHP算法之增减字符串匹配

原文:https://www.cnblogs.com/corvus/p/11985973.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!