题解 | #参数解析#

参数解析

http://www.nowcoder.com/practice/668603dc307e4ef4bb07bcd0615ea677

#include <bits/stdc++.h>

using namespace::std;

int main() {

string str;

while (getline(cin, str)) {
    vector<string> vec;
    int j = 0; //记录起始索引
    for (int i = 0; i < str.size(); i++) {
        if (' ' == str[i]) {
            if (i != j) { //避免空串
                vec.push_back(str.substr(j, i - j));
            }
            j = i + 1;
        } else if ('"' == str[i]) {
            j = i + 1;
            i++;
            while (str[i] != '"') {
                i++;
            }
            if (i != j) {
                vec.push_back(str.substr(j, i - j));
            }
            j = i + 1;
        }
    }
    if (j < str.size()) { // 最后如果还剩一串字符
        vec.push_back(str.substr(j, str.size() - j));
    }
    cout << vec.size() << endl;
    for (auto const &v : vec) {
        cout << v << endl;
    }
}

return 0;

}

全部评论

相关推荐

05-12 17:00
门头沟学院 Java
king122:你的项目描述至少要分点呀,要实习的话,你的描述可以使用什么技术,实现了什么难点,达成了哪些数字指标,这个数字指标尽量是真实的,这样面试应该会多很多,就这样自己包装一下,包装不好可以找我,我有几个大厂最近做过的实习项目也可以包装一下
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-01 17:00
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务