首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
课程
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
牛客553534314号
华中科技大学 计算机类
发布于湖北
关注
已关注
取消关注
@林小白zii:
2023 蚂蚁笔试题 0404
笔试时间:2023年4月4日 春招实习 第一题 题目:正直者与欺诈者 有n个人,其中一些人是正直者,另外—些人是欺诈者。已知正直者永远说真话,欺诈者永远说假话。现在你已经知道了每个人是正直者还是欺诈者。有q次询问,每次询问你需要回答x指证y是正直者还是欺诈者。 输入描述 第一行输入一个正整数n,代表人数。 第二行输入一个长度为n的字符串,第i个字符为'H'代表第i个人是正直者,'L'代表欺诈者。 第三行输出一个正整数q,代表询问的次数。 接下来的行,每行输入两个正整数a和y,代表一次询问。 1 ≤n,q≤ 104 1 ≤x, y ≤n x≠y 输出描述 输出q行,分别代表每次指证的结果。 若x指证y是正直者,则输出"honester"。如果是欺诈者,则输出"liar" 。 样例输入 5 HLHHL 3 1 2 2 3 3 4 样例输出 liar liar honester 第一个人是正直者,他会说真话,因此他指证第二个人是欺诈者。 第二个人是欺诈者,他会说假话,因此他指证第三个人是欺诈者。 第三个人是正直者,他会说真话,因此他指证第四个人是正直者。 参考题解 C++:[此代码未进行大量数据的测试,仅供参考] #include <iostream>#include <vector>using namespace std;int main() { int n; cin >> n; string people; cin >> people; int q; cin >> q; for (int i = 0; i < q; ++i) { int x, y; cin >> x >> y; if (people[x - 1] == 'H') { if (people[y - 1] == 'H') { cout << "honester" << endl; } else { cout << "liar" << endl; } } else { if (people[y - 1] == 'H') { cout << "liar" << endl; } else { cout << "honester" << endl; } } } return 0;} Java:[此代码未进行大量数据的测试,仅供参考] import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); String people = scanner.next(); int q = scanner.nextInt(); for (int i = 0; i < q; ++i) { int x = scanner.nextInt(); int y = scanner.nextInt(); if (people.charAt(x - 1) == 'H') { if (people.charAt(y - 1) == 'H') { System.out.println("honester"); } else { System.out.println("liar"); } } else { if (people.charAt(y - 1) == 'H') { System.out.println("liar"); } else { System.out.println("honester"); } } } }} Python:[此代码未进行大量数据的测试,仅供参考] n = int(input())people = [c for c in input()]q = int(input())for _ in range(q): x, y = map(int, input().split(" ")) if people[x - 1] == 'H': if people[y - 1] == 'H': print("honester") else: print("liar") else: if people[y - 1] == 'H': print("liar") else: print("honester") 第二题 题目:小红的红子树 小红拿到了—棵有根树,树的根节点为1号节点。小红将一些节点染成了红色。她想知道有多少子树满足子树所有节点均为红色? 输入描述 第一行输入一个正整数n,代表节点的数量; 第二行输入一个长度为n的字符串,第i个字符为'R'代表第i个节点被染成红色,为'w'代表未被染色; 接下来的n ― 1行,每行输入两个正整数x和y,代表x和y有一条边连接; 1<n≤10^5 1 ≤x, y ≤n 输出描述 输出一个整数,代表节点均为红色的子树数量。 样例输入 3 WRR 1 2 1 3 样例输出 2 节点2和节点3均合法 参考题解 dfs遍历树,向上返回的是以当前节点为根的子树是否满足全部节点为红色即可。 C++:[此代码未进行大量数据的测试,仅供参考] #include <iostream>#include <vector>#include <unordered_map>using namespace std;int n;unordered_map<int, vector<int>> nxs;vector<char> colors;int cnt = 0;bool dfs(int node, int pre) { bool cur = (colors[node] == 'R'); if (nxs.count(node)) { for (int nx : nxs[node]) { if (nx != pre) { cur = dfs(nx, node) && cur; } } } if (cur) cnt++; return cur;}int main() { cin >> n; colors.resize(n + 1); for (int i = 1; i <= n; i++) cin >> colors[i]; for (int i = 0; i < n - 1; i++) { int u, v; cin >> u >> v; nxs[u].push_back(v); nxs[v].push_back(u); } dfs(1, -1); cout << cnt << endl; return 0;} Python:[此代码未进行大量数据的测试,仅供参考] n = int(input())nxs = {}colors = [0] + [c for c in input()]for _ in range(n-1): u,v = map(int, input().split(" ")) if u not in nxs: nxs[u] = [] if v not in nxs: nxs[v] = [] nxs[u].append(v
点赞 1
评论 0
全部评论
推荐
最新
楼层
蔚来
校招火热招聘中
官网直投
相关推荐
要双休的长颈鹿很不想上网课
昨天 21:30
同济大学 计算机类
电话漏接了,回拨说呼叫的号码无法使用此服务
会是hr电话吗,害怕是最近面的网易
投递网易等公司8个岗位 >
点赞
评论
收藏
分享
在记录秋招的外卷侠很有气魄
06-03 22:24
已编辑
门头沟学院 计算机类
建信金科背调体检
建信金科 校招,投的是厦门BDC。目前流程走到了背调和体检的阶段,背调链接和体检报告已经提交一周了。我咨询过HR但是他说目前总部的审批还没下来,但是网上有的同学已经拿到offer了,所以现在很慌。我想问问:建信金科后续的流程还有可能刷人吗?
投递建信金科等公司7个岗位 >
点赞
评论
收藏
分享
在debug的芹菜很机智
06-03 22:41
四川工业科技学院 计算机类
大二这样能找到实习吗?听劝
最近一直都是已读不回
点赞
评论
收藏
分享
天下一人
04-29 21:27
武汉科技大学 电子信息类
嵌入式实习岗位求助
#实习工作,你找得还顺利吗?# 本人目前研一,想着暑期找嵌入式相关的实习,但是现在比较迷茫,所以希望得到大佬的帮助,本人不玻璃心,大佬们对我可以大胆批评和指导!本人目前方向是深度学习,目标检测相关,现在觉得深度学习死路一条,所以想着尝试转行本科有些比赛经历但主要是数学建模相关,用Matlab多,学了一些相关算法吧。嵌入式相关比赛经历比较少,只有本科毕设玩过51,蓝桥杯学了一下32。现在我对自己未来的方向比较迷茫,因为自己是本硕双非,不知道以后是走mcu+rots还是Linux arm方向呢,希望大佬们能给些意见暑期实习的话自知自己技术和项目都不过硬,所以没指望去啥大公司,十几个人的小公司能学些技术我觉得就不错了,现在主要还是方向迷茫,不知道该向哪个方向去努力?求大佬们不吝指点
实习工作,你找得还顺利吗?
点赞
评论
收藏
分享
小镇做题家5
06-04 00:52
西安电子科技大学 电子信息类
英语六级
牛油们,研究生六级还没有过,Java后端去互联网或者证券会有影响吗?
牛客在线求职答疑中心
互联网没坑了,还能去哪里?
点赞
评论
收藏
分享
点赞
收藏
评论
分享
回复帖子
提到的真题
返回内容
全站热榜
1
...
计算机专业可以去哪些央国企(总论篇)?
3.9W
2
...
小公司要求真高
6579
3
...
秋招在即,刷题备战很重要
6434
4
...
计算机去央国企(银行软开篇)
6290
5
...
网易互娱40min(感觉是G了)
5338
6
...
暑假0offer教训
5184
7
...
华黑子的暑期实习总结
4978
8
...
大二终于拿下大厂(附 timeline)
4899
9
...
一个大学毕业生在河边哭,他哭的如此伤心,连河神都动容了。河神拿着一份月薪两万但996的工作offer,和一份月薪2000但朝九暮五、双休的工作offer,问:“这两个哪个是你的?”毕业生哭着说:“都不
4536
10
...
六月初被无良央企毁三方 现在很迷茫
4423
正在热议
#
和牛牛一起刷题打卡
#
21279次浏览
1740人参与
#
0offer是寒冬太冷还是我太菜
#
458082次浏览
5151人参与
#
OPPO开奖
#
24653次浏览
338人参与
#
牛客帮帮团来啦!有问必答
#
1173012次浏览
17388人参与
#
学历对求职的影响
#
162993次浏览
1826人参与
#
机械只有转码才有出路吗?
#
3273次浏览
81人参与
#
不去互联网可以去金融科技
#
27057次浏览
339人参与
#
市场营销面经
#
8483次浏览
171人参与
#
小厂实习有必要去吗
#
4657次浏览
64人参与
#
听劝,我这个简历该怎么改?
#
63904次浏览
636人参与
#
机械人与华为的爱恨情仇
#
12902次浏览
104人参与
#
你觉得通信/硬件有必要实习吗?
#
26288次浏览
454人参与
#
没有实习经历,还有机会进大厂吗
#
423870次浏览
8604人参与
#
许愿池
#
90611次浏览
1651人参与
#
在国企工作的人,躺平了吗?
#
113004次浏览
1492人参与
#
研究所VS国企,该如何选
#
49305次浏览
554人参与
#
产运销实习日记
#
1759次浏览
65人参与
#
通信和硬件还有转码的必要吗
#
11578次浏览
101人参与
#
大厂无回复,继续等待还是奔赴小厂
#
6789次浏览
43人参与
#
硬件人的简历怎么写
#
82678次浏览
856人参与
#
简历无回复,你会继续海投还是优化再投?
#
25255次浏览
355人参与
#
重来一次,我还会选择这个专业吗
#
114334次浏览
1750人参与
牛客网
牛客企业服务