关注
#include <iostream>
#include <vector>
#include <string>
#include <set>
#include <map>
#include <deque>
#include <algorithm>
using namespace std;
deque<char> str2vec(string s){
deque<char> res;
for (char c : s){
if (c !=','){
res.push_back(c);
}
}
return res;
}
string vec2str(vector<char> s){
string res = "";
for (int i = 0; i < s.size(); i++){
if (i == s.size()-1) res+= s[i];
else res = res + s[i] + ',';
}
return res;
}
vector<char> process(vector<deque<char>> stringarr, int sum, string k){
vector<char> res;
int i = 0; // 用以说明遍历到了第几组数
int cnt = 0;
int num = atoi(k.c_str());
while (cnt < sum) {
int j = 0;
while(j++ < num) {
if (stringarr[i].empty()) break;
res.push_back(stringarr[i].front());
stringarr[i].pop_front();
cnt++;
}
i++;
if (i >= stringarr.size()) i=0;
}
return res;
}
int main(){
while (1){
string k;
string s;
int sum = 0;
bool flag = true;
string ans;
vector<deque<char>> stringarr;
while (getline(cin, s)){
if (flag){
k = s;
flag = false;
continue;
}
if (s.empty()) break;
deque<char> qs = str2vec(s);
stringarr.push_back(qs);
}
for (auto i : stringarr) sum += i.size();
vector<char> res = process(stringarr, sum ,k);
ans = vec2str(res);
cout <<ans<<endl;
}
}这个可以吗?
查看原帖
点赞 评论
相关推荐
10-30 18:20
第一拖拉机制造厂拖拉机学院 C++
牛客41406533...:回答他在课上学,一辈子待在学校的老教授用三十年前的祖传PPT一字一句的讲解,使用谭浩强红皮书作为教材在devc++里面敲出a+++++a的瞬间爆出114514个编译错误来学 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# mt对你说过最有启发的一句话 #
20029次浏览 253人参与
# 工作以后,你父母对你啥态度 #
21802次浏览 160人参与
# 秋招被挂春招仍然能投的公司 #
3205次浏览 49人参与
# 秋招特别不鸣谢 #
8828次浏览 123人参与
# 摸鱼被leader发现了怎么办 #
86381次浏览 577人参与
# 什么是优秀的实习经历 #
4385次浏览 156人参与
# 今年秋招你收到了多少封邮件? #
12881次浏览 168人参与
# 2025,我想...... #
80013次浏览 633人参与
# 选实习,你更看重哪方面? #
7119次浏览 159人参与
# 工作中遇到的歹人 #
17521次浏览 228人参与
# 工作后,你落下了哪些病根 #
7469次浏览 150人参与
# 被上班搭子“传染”了哪些习惯 #
3298次浏览 75人参与
# 找工作有哪些冷知识 #
202189次浏览 2580人参与
# 实习简历求拷打 #
720次浏览 22人参与
# 晒晒你的元宵动态 #
40656次浏览 277人参与
# 打工人的精神状态 #
122081次浏览 1418人参与
# 考研失败就一定是坏事吗? #
166034次浏览 1217人参与
# 听到哪句话就代表面试稳了or挂了? #
236840次浏览 1675人参与
# 工作后明白的那些道理 #
42214次浏览 642人参与
# 一人一个landing小技巧 #
137861次浏览 1491人参与