2019年4月3日华为实习生笔试第2题-合法去重移位排序输出

如果笔试成绩不理想,面试的时候会问,为什么没有做出来。还好我笔试后重新做了一遍!
题量很大,但是不是很难,这里需要注意四个输出:
(1)合法字符串去重输出(不是字符串中的字符去重,而是字符串去重)
(2)非法字符串直接输出
(3)合法字符串移位再输出
(4)在(3)的基础上排序输出
在这里插入图片描述
输入实例:(按Ctrl+Z结束输入)

abc
def
==
acd123
44234tjg
aga'-=
ad--s
abd
123
abcdef
12345678901234567890123456789012345678901234567890123
EDFG
SDFG
ABC
DEF
ccc
dd
asdfas
a*b=1
87&&^
==
234abs35
765rgfh4sd
1231

输出实例

abc def acd123 44234tjg abd 123 abcdef 12345678901234567890123456789012345678901
234567890123 EDFG SDFG ABC DEF ccc dd asdfas 234abs35 765rgfh4sd 1231
== aga'-= ad--s a*b=1 87&&^ ==
bca efd 23acd1 234tjg44 bda 231 efabcd 12345678901234567890123456789012345678901
231234567890 FGED FGSD BCA EFD ccc dd asasdf 4abs3523 765rgfh4sd 3112
12345678901234567890123456789012345678901231234567890 231 234tjg44 23acd1 3112 4
abs3523 765rgfh4sd BCA EFD FGED FGSD asasdf bca bda ccc dd efabcd efd

如有错误的地方请指出,谢谢

#include 
#include 
#include 
#include 
#include 
using namespace std;void fun_moveBit(string &str)
{string tempStr;int moveBit = 10 % str.length();tempStr = str.substr(0, moveBit);str = str.erase(0, moveBit);str.append(tempStr);
}int main()
{string str;vector<string> vecStr_OK;vector<string> vecStr_NO;while (cin >> str){int flag = 1;string newStr;for (int i = 0; i < str.size(); i++){//判断是否合法//一旦不合法就将标志位置0if (!(str[i] >= '0' && str[i] <= '9') && !(str[i] >= 'a' && str[i] <= 'z') && !(str[i] >= 'A' && str[i] <= 'Z')){flag = 0;break;}}if (flag == 1)//OK{//去重if (find(vecStr_OK.begin(), vecStr_OK.end(), str) == vecStr_OK.end()){vecStr_OK.push_back(str);}}	else//NovecStr_NO.push_back(str);}//第1个输出for (int i = 0; i < vecStr_OK.size(); i++){string tempStr;tempStr = vecStr_OK[i];cout << tempStr << " ";}cout << endl;//第2个输出for (int i = 0; i < vecStr_NO.size(); i++){cout << vecStr_NO[i] << " ";}cout << endl;//第3个输出for (int i = 0; i < vecStr_OK.size(); i++){fun_moveBit(vecStr_OK[i]);cout << vecStr_OK[i] << " ";}cout << endl;//第4个输出sort(vecStr_OK.begin(), vecStr_OK.end());for (int i = 0; i < vecStr_OK.size(); i++)cout << vecStr_OK[i] << " ";cout << endl;return 0;
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部