网易互娱第三批 笔试记录

/*-----------------------------
第一题
------------------------------*/
#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
#include <cmath>

using namespace std;
vector<vector<int>> record;
void count(int num, int index) {
string s = to_string(num);
for (int i = 0; i < s.size(); i++) {
if (s[i] == '0')
continue;
else
record[index][s[i] - '0'] ++;
}
}

int main() {
int m;
cin >> m;
record = vector<vector<int>>(m, vector<int>(10, 0));
for (int i = 0; i < m; i++) {
int a, b;
cin >> a >> b;
//cout << a << ',' << b << endl;
int sum = 0;
int seq = 0;
count(a, i);
count(b, i);
while (b != 0) {
int temp = a * (b % 10);
//cout << temp <<endl;
count(temp, i);
temp = temp * pow(10, seq);
seq++;
sum += temp;
b /= 10;
}
count(sum, i);
}

vector<int> res(10, 0);
for (int i = 0; i < m; i++) {
for (int j = 1; j <= 9; j++) {
res[j] += record[i][j];
if (j == 9)
cout << record[i][j] << endl;
else
cout << record[i][j] << ' ';
}
}

int maxIndex = 1;
for (int i = 2; i <= 9; i++) {
if (res[i] > res[maxIndex])
maxIndex = i;
}
cout << maxIndex << endl;
return 0;
}

/*-----------------------------
第二题
------------------------------*/
#include <iostream>
#include <vector>
#include <unordered_map>
#include <string>
#include <algorithm>
#include <climits>

using namespace std;
char ass[6] = { 'A', 'S', 'D', 'F', 'G', 'H' };
vector<string> dic;//用于存放所有的组合
vector<bool> visited(6, false);
void permutation(string s) {
if (s.size() == 6) {
dic.push_back(s);
return;
}
for (int i = 0; i < 6; i++) {
if (visited[i] == false) {
visited[i] = true;
s += ass[i];
permutation(s);
s = s.substr(0, s.size() - 1);
visited[i] = false;
}
}
return;
}

int cal(string s1, string s2) {//计算S2排列下的S1花费
unordered_map<char, int> grip;
for (int i = 0; i < s2.size(); i++) {
grip.insert(make_pair(s2[i], i));
}
int cost = 0;
int index = 0;
for (int i = 0; i < s1.size(); i++) {
int cur = grip[s1[i]];
if (cur > index)
cost += cur - index;
else
cost += index - cur;
index = grip[s1[i]];
}
return cost;
}

int main() {
int m;
cin >> m;
getchar();
permutation("");
for (int i = 0; i < m; i++) {
string s;
getline(cin, s);
int res = INT_MAX;
for (int j = 0; j < dic.size(); j++) {
res = min(res, cal(s, dic[j]));
}
cout << res << endl;
}
return 0;
}


/*-----------------------------
第三题
------------------------------*/
没有理清思路

#笔试题目##网易互娱#
全部评论
#include<iostream> #include<stdio.h> #include<algorithm> #include<string.h> #include<string> #include<vector> #include<queue> using namespace std; typedef long long LL; struct node{ int c; int tn; int tm; int num; node(int a,int b,int dd,int d) { c = a; tn = b; tm = dd; num = d; } node() { } }; struct node2{ int tn; int tm; int c; node2(int a,int b,int d) { tn = a; tm = b; c = d; } node2() { } }; bool cmp(node a,node b) { if(a.num!=b.num) { return a.num>b.num; } else if(a.c!=b.c) { return a.c<b.c; } else if(a.tn!=b.tn) { return a.tn<b.tn; } else { return a.tm<b.tm; } } int t,n,m,dx[]={0,1,-1,0},dy[]={1,0,0,-1}; string s[100]; int main() { cin>>t; while(t--) { cin>>n>>m; for(int i=0;i<=n;i++) for(int j=0;j<=m;j++) s[i][j]='#'; for(int i=0;i<n;i++) cin>>s[i]; while(1) { vector<node>arr; arr.clear(); int book[100][100] = {0}; for(int i=0;i<=50;i++) for(int j=0;j<=50;j++) book[i][j]=0; for(int i=0;i<n;i++) for(int j=0;j<m;j++) { if(!book[i][j]&&s[i][j]!='#') { int tc = 1; char c = s[i][j]; book[i][j] = 1; queue<node2>q; q.push(node2(i,j,s[i][j])); while(!q.empty()) { int sz = q.size(); for(int i=1;i<=sz;i++) { node2 temp = q.front(); q.pop(); int x = temp.tn; int y = temp.tm; for(int k = 0;k<4;k++) { int tempx = x+dx[k]; int tempy = y+dy[k]; if(tempx>=0&&tempx<n&&tempy>=0&&tempy<m&&!book[tempx][tempy]&&s[tempx][tempy]==c) { book[tempx][tempy] = 1; tc++; q.push(node2(tempx,tempy,c)); } } } } if(tc>1) { arr.push_back(node(s[i][j],i,j,tc)); } } } if(arr.size()==0) break; else { int ss; sort(arr.begin(),arr.end(),cmp); int xx = arr[0].tn; int yy = arr[0].tm; int cc = arr[0].c; queue<node2>q; q.push(node2(xx,yy,cc)); while(!q.empty()) { int sz = q.size(); for(int i=1;i<=sz;i++) { node2 temp = q.front(); q.pop(); int x = temp.tn; int y = temp.tm; int c = temp.c; for(int k = 0;k<4;k++) { int tempx = x+dx[k]; int tempy = y+dy[k]; if(tempx>=0&&tempx<n&&tempy>=0&&tempy<m&&s[tempx][tempy]==cc) { s[tempx][tempy]='#'; q.push(node2(tempx,tempy,c)); } } } } for(int i=0;i<m;i++) { int k = 0; for(int j=n-1;j>=0;j--) { if(s[j][i]=='#') { k++; } else s[j+k][i]=s[j][i]; if(k!=0) s[j][i]='#'; } } for(int i=0;i<m;i++) { int k=0; for(int j=0;j<n;j++) if(s[j][i]=='#') k++; if(k==n) { for(int j=0;j<n;j++) s[j][i]=s[j][i+1],s[j][i+1]='#'; } } } } int shu = 0; for(int i=0;i<n;i++) for(int j=0;j<m;j++) { if(s[i][j]=='#') shu++; } cout<<n*m-shu<<endl; } return 0; } 第三题
点赞 回复 分享
发布于 2019-09-27 21:46

相关推荐

04-20 22:20
已编辑
门头沟学院 golang
27届,bg为四非本211硕,如题,导师不放实习,且每周至少一次线下组会(工作日),从研一上开始实习,然后我组在研一下引入了打卡机五段大厂分别是:美团到店、美团服务零售、快手电商、字节TikTok、字节CapCut。目前要结束我的第五段实习了(不会再刷第六段,好好搞学校的事,还有秋招)本来一直告诉自己的是“所有委屈到了终点再说”,过去告诉自己的终点自然还没到,但我觉得自己仿佛已经到了另一个终点,有感而发,写了这篇文章也许你会觉得为啥不尝试问问导师能不能实习,或者用其他让自己舒服的手段,我只能说,这很复杂,有导师的人自然会懂,这种一开始就把“利益冲突”摆明面上的招几乎就是不可能成功———————————————————我到底是怎么实习的?骗hr自己满勤,然后没有捷径,就是每周往返,第一段去的是北京美团,而学校在江苏,因此需要一周一次北京江苏往返,因为实习钱少,所以坐的基本是绿皮,难以入睡,下车后就是长达2小时的地铁去公司,地铁站上靠着人睡觉周末做什么?基本在做导师的科研or横向,学习的话很多时候就是尽力在晚上回到出租屋的时候学,这很难维持,但只能不断push自己如何破解打卡机?直接把打卡机偷了,或者使用指纹膜(当然我很早就做好了无法破解的准备,那就是找个长三角实习,每天早起去打卡完坐高铁去实习,从每周高铁往返变成每天)导师会压力吗?非常压力,实习的时候非常害怕微信弹出他的消息,PTSD了,有时候一周要往返两次学校,每次都跟要死了一样,之前真是情绪崩溃好几次,哈哈哈哈平时往返怎么平衡工作?我本来很晕车,为了不耽误公司和导师的进度,从车上一看电脑就头晕、吐,到后面可以随意在高铁、地铁、出租车上Coding,甚至不会再因为往返感到心累了,哈哈哈哈这一路已经淬炼出比较坚强的内心了,已经数不清多少次坐末班高铁从学校回公司,多少次凌晨6点爬起来赶车过去我会把这些当作是我人生的弯路,但现在,这些已经成为我宝贵的经验了。往后,我想我也能真正允许各种不好的情况出现了,因为我会真正把它当作我要解决的问题,而非抱怨,这又何尝不是终点呢?要照顾好身体,我不管怎么往返,一直非常在乎身体,会让自己睡够8小时,最近几星期培养早睡早起到公司健身后去工作的习惯,我觉得好身体很关键
gtgt..:很佩服,但是很恐怖,感觉已经从人类异化到高度运转的机器了
美团工作强度 2455人发布
点赞 评论 收藏
分享
刚刷到字节跳动官方发的消息,确实被这波阵仗吓了一跳。在大家还在纠结今年行情是不是又“寒冬”的时候,字节直接甩出了史上规模最大的转正实习计划——ByteIntern。咱们直接看几个最硬的数,别被花里胡哨的宣传词绕晕了。首先是“量大”。全球招7000多人是什么概念?这几乎是把很多中型互联网公司的总人数都给招进来了。最关键的是,这次的资源分配非常精准:研发岗给了4800多个Offer,占比直接超过六成。说白了,字节今年还是要死磕技术,尤其是产品和AI领域,这对于咱们写代码的同学来说,绝对是今年最厚的一块肥肉。其次是大家最关心的“转正率”。官方直接白纸黑字写了:整体转正率超过50%。这意味着只要你进去了,不划水、正常干,每两个人里就有一个能直接拿校招Offer。对于2027届(2026年9月到2027年8月毕业)的同学来说,这不仅是实习,这简直就是通往大厂的快捷通道。不过,我也得泼盆冷水。坑位多,不代表门槛低。字节的实习面试出了名的爱考算法和工程实操,尤其是今年重点倾斜AI方向,如果你简历里有和AI相关的项目,优势还是有的。而且,转正率50%也意味着剩下那50%的人是陪跑的,进去之后的考核压力肯定不小。一句话总结:&nbsp;27届的兄弟们,别犹豫了。今年字节这是铁了心要抢提前批的人才,现在投递就是占坑。与其等到明年秋招去千军万马挤独木桥,不如现在进去先占个工位,把转正名额攥在手里。
喵_coding:别逗了 50%转正率 仔细想想 就是转正与不转正
字节7000实习来了,你...
点赞 评论 收藏
分享
评论
点赞
8
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务