文章
10
粉丝
224
获赞
12
访问
50.6k
思路:从前到后依次查询,使用变量state(初始-1)记录串的类型(1数字 2小写 3大写)。如果新的字符与已有子串状态不符,则将该串放入对应的容器中。循环结束,还要将最后一个串放入容器中。最后,分别将三种类型的串输出即可。
#include <bits/stdc++.h>
using namespace std;
int main()
{
string s;
while (getline(cin, s))
{
vector<string> lower, upper, nums;
string t = "";
int state = -1;
// 1 数字 2 小写 3 大写
for (int i = 0; i < s.length(); i++)
{
if (s[i] >= '0' && s[i] <= '9')
{
if (state == -1)
state = 1;
else if (state != 1)
{
if (t.size() > 0)
{
if (t[0] >= 'A' && t[0] <= 'Z')
{
upper.push_back(t);
}
else if (t[0] >= 'a' && t[0] <= 'z')
{
...
登录后发布评论
暂无评论,来抢沙发