华为三题AC只用了50min

感觉华为的题目是我做过的最简单的笔试题了。第三题样例答案好像还给错了,输入a11b2bac3bad3abcd2输出应该是abcdabcdbbbacbacbacbadbadbadaaaaaaaaaaa(我感觉是这样的,逃)#华为#
全部评论
华为笔试不刷人,面试玄学,池子超大,捞起来不容易
点赞 回复 分享
发布于 2018-09-05 20:08
我笔试没做都让我去面试了 华为根本就没想笔试刷人的吧,最多把完全不会的剔除掉 第三题感觉是他们理解的字典序不一样,我们是低位填充0,他是高位填充0
点赞 回复 分享
发布于 2018-09-05 20:30
居然需要五十分钟😏,华为作业帮一起打完了。
点赞 回复 分享
发布于 2018-09-05 20:56
是的呀!!刚刚做完!!
点赞 回复 分享
发布于 2018-09-05 19:57
是的呀!!刚刚做完!!
点赞 回复 分享
发布于 2018-09-05 19:58
第二题原来判题系统还有问题。。调了好久。。醉了
点赞 回复 分享
发布于 2018-09-05 19:58
我认识好多人四十分钟全部AC
点赞 回复 分享
发布于 2018-09-05 20:02
貌似这次华为难点不在笔试上……
点赞 回复 分享
发布于 2018-09-05 20:04
求代码
点赞 回复 分享
发布于 2018-09-05 20:04
原来大家题目都一样啊
点赞 回复 分享
发布于 2018-09-05 20:07
三题错了两题 = =
点赞 回复 分享
发布于 2018-09-05 20:09
膜大佬
点赞 回复 分享
发布于 2018-09-05 20:29
路还很长,等到offer排序你会怀疑人生的,懂的都懂
点赞 回复 分享
发布于 2018-09-05 20:33
是啊 简单啊。。。
点赞 回复 分享
发布于 2018-09-05 20:34
第三题,有没有大佬发个代码
点赞 回复 分享
发布于 2018-09-05 20:48
#include<iostream> #include<string> #include <map> #include <vector> #include <sstream> using namespace std; int main() { string input; cin>>input; multimap<int,string> mup; vector<string> vString; vector<int> vCount; string scount = ""; string temp = ""; for(int i=0; i<input.size();i++) { if (input[i] >= '0' && input[i] <= '9') { if(temp != "") { vString.push_back(temp); //vCount.push_back(input[i]-'0'); scount+=input[i]; temp = ""; } else { scount+=input[i]; } } else { if (scount != "") { stringstream ss; ss<<scount; int t; ss>>t; vCount.push_back(t); scount = ""; } temp += input[i]; } } stringstream ss; ss<<scount; int t; ss>>t; vCount.push_back(t); for (int i=0;i<vCount.size();i++) { mup.insert(make_pair(vCount[i],vString[i])); } string result = ""; multimap<int,string>::iterator it; for(it = mup.begin();it != mup.end();++it) { int n = it->first; string s = it->second; for(int i=0; i<n; i++) { result+=s; } } cout << result << endl; return 0; }
点赞 回复 分享
发布于 2018-09-05 20:51
80%
点赞 回复 分享
发布于 2018-09-05 20:51
华为的笔试是不是还有好几批呀,表示昨天才投,不知道后面还有没有笔试了
点赞 回复 分享
发布于 2018-09-05 20:57
我的最后一题输出abcdabcdbbbacbacbacbadbadbadaaaaaaaaaaa不给过啊= =
点赞 回复 分享
发布于 2018-09-05 21:02
#include <stdio.h> #include <string.h> int main() {     char str[100];     char out[100][300];     int lon[100];     int r=0,k=0;     while(~scanf("%s",str)){         for(int i=0,len=strlen(str);i<len;i++)//拆分         {             if(str[i]>='1'&&str[i]<='9'){                 if(str[i+1]<'1'||str[i+1]>'9'){//一位数字                      memcpy(out[k++],&str[r],i-r+1);                      r=i+1;                      i=r;                 }                 else //两位数字                 {                      memcpy(out[k++],&str[r],i+1-r+1);                      r=i+2;                      i=r;                 }             }                          }         int len2;         char tm[50];         for(int i=0;i<k;i++){//lon录值             len2=strlen(out[i]);             for(int j=0;j<len2;j++){                 if(out[i][j]>='1'&& out[i][j]<='9'){                     if(len2-j==1)//一位数字                     {                         lon[i]=(int)out[i][j]-48;                         out[i][j]='\0';                     }                     else                         if(len2-j==2)                     {                         lon[i]=((int)out[i][j]-48)*10+(int)out[i][j+1]-48;                                                 out[i][j+1]='\0';                          out[i][j]='\0';                             break;                     }                 }             }                      }         int q;         char tmp[50];         for(int i=0;i<k;i++)             for(int h=0;h<k-1;h++){                 if(lon[h]>lon[h+1]){                     q=lon[h];                     lon[h]=lon[h+1];                     lon[h+1]=q;                     memcpy(tmp,out[h],strlen(out[h]));                     memset(out[h],0,strlen(out[h]));                     memcpy(out[h],out[h+1],strlen(out[h+1]));                     memset(out[h+1],0,strlen(out[h+1]));                     memcpy(out[h+1],tmp,strlen(tmp));                     memset(tmp,0,strlen(tmp));                 }             }         for(int i=0;i<k;i++){             for(int g=0;g<lon[i];g++)              printf("%s",out[i]);         }             }     return 0; } 我的第三题代码,自测通过,没时间做。。。。忧伤
点赞 回复 分享
发布于 2018-09-05 21:24

相关推荐

10-30 12:55
已编辑
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务