目录
牛客_收件人列表(简单模拟)
解析代码
基础的字符串处理问题,题干非常清晰。
- 先接收到一个数字,代表接下来是多少组数据。
- 逐个接收每个名字,如果名字中没有','或者' '则直接输出,否则在改名字前后拼接"\""再输出。
- 除过最后一个名字外,每个名字之后都有一个", "。
- 该组用例处理完成后换行。
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int n = 0;
while (cin >> n)
{
getchar(); // 接收下该行之后的空格,否则无法获取下一行
vector<string> arr(n);
string str;
for(int i = 0; i < n; ++i)
{
getline(cin, str);
arr[i] = str;
bool flag = true;
for(auto& e : arr[i])
{
if(e == ',' || e == ' ')
flag = false;
}
if(flag)
cout << arr[i];
else
cout << "\"" << arr[i] << "\"";
if(i != n - 1)
cout << ", ";
}
cout << endl;
}
return 0;
}