LeetCode Summary Ranges

时间:2015-07-12 09:39:12   收藏:0   阅读:109

Summary Ranges

题目

技术分享

思路

直接做

代码

class Solution {
public:
    vector<string> summaryRanges(vector<int>& nums) {
        vector<string> ans;
        if (nums.size() == 0) return ans;
        int startPosition = 0, nowPosition = 1;
        for (; nowPosition <= nums.size(); nowPosition++) {
            if (nowPosition == nums.size() || nums[nowPosition] > nums[nowPosition - 1] + 1) {
                if (startPosition != nowPosition - 1) {
                    ans.push_back(toS(nums[startPosition]) + "->" + toS(nums[nowPosition - 1]));
                }
                else {
                    ans.push_back(toS(nums[startPosition]));
                }
                startPosition = nowPosition;
            }
        }
        return ans;
    }
    string toS(int i) {
        char t[20];
        string s;
        sprintf(t, "%d", i);
        s = t;
        return s;
    }
};

版权声明:本文为博主原创文章,未经博主允许不得转载。

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!