第一题: int main() {     string s;     cin >> s;     unordered_map<char, int> m;     unordered_map<char, bool> flag;     int sum = 0, cur = 0;     vector<int> res;     for (int i = 0; i < s.size(); i++)         m[s[i]]++;     for (int i = 0; i < s.size(); i++) {         if (flag.find(s[i]) == flag.end()) {             sum += m[s[i]];             flag[s[i]] = true;         }         cur++;         if (cur == sum) {             res.push_back(cur);             cur = 0;             sum = 0;         }     }     for (int i = 0; i < res.size(); i++) {         if (i != res.size() - 1)             cout << res[i] << ',';         else             cout << res[i] << endl;     }     system("pause");     return 0; }
点赞 评论

相关推荐

11-16 01:13
宜春学院 Java
点赞 评论 收藏
分享
11-03 13:18
门头沟学院 Java
包行:平时怎么刷算法题的哇,字节的手撕听说都很难
字节跳动工作体验
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务