8.25蚂蚁笔试(最暴力的一集)

1.签到,100%
2.暴力枚举,25%
3.暴力dfs,45%
全部评论
第一题为啥一直超时,我也没写循环啊,感觉用例是不是有问题
1 回复 分享
发布于 2024-08-25 20:47 上海
我第三个暴力bfs才25,超时了
点赞 回复 分享
发布于 2024-08-25 20:45 北京
佬,第二个svm咋暴力的
点赞 回复 分享
发布于 2024-08-25 20:48 河南
第三题dp能过60
点赞 回复 分享
发布于 2024-08-25 20:48 北京
第一题咋判断的啊 我只有0.2呢,不就是a必须等于b吗
点赞 回复 分享
发布于 2024-08-25 20:54 浙江
佬,第一题为啥直接判断左右括号是否相等不对呀,服辣,签到失败
点赞 回复 分享
发布于 2024-08-25 20:55 北京
我理解错误了,我还以为()的情况可以在括号里面加内容,改了半天过不了。。。
点赞 回复 分享
发布于 2024-08-25 21:11 四川
你们发的笔试有时间点吗,我的为啥是没有时间点要求,这几天天天给我发,好像打开就能做
点赞 回复 分享
发布于 2024-09-02 10:36 北京
蚂蚁多少分能进面啊,感觉做的不太好
点赞 回复 分享
发布于 2024-09-03 20:45 江苏

相关推荐

【蚂蚁成都】-大安全技术部-Java实习#牛客AI配图神器#希望你:1.酷爱着计算机以及互联网技术,热衷于解决挑战性的问题,追求极致的用户体验;2.痴迷于数据结构和算法,热衷于ACM,常常为看到“accept”而兴奋不已;3.熟悉Unix/Linux/Win32环境下编程,并有相关开发经验;4.熟练使用调试工具,并熟悉Perl,Python,shell等脚本语言;5.你熟悉网络编程和多线程编程,对TCP/IP,HTTP等网络协议有很深的理解;6.热衷于数据库技术,能够熟练编写SQL脚本,有MySql或Oracle应用开发经验;7.或许你熟悉Java,C,C++,PHP,.NET等编程语言中的一种或几种;8.学习能力强,对新事物保有好奇心,并能快速适应新环境;9.良好的沟通能力和团队协同能力,能与他人合作,共同完成目标;10.对所在领域有热情,相信方法总比困难多,善于独立思考并反思总结。【职位要求】1、扎实的Java编程基础,良好的编程素养,研发质量意识好,对系统质量有高要求;2、熟悉主流技术框架和中间件,熟悉SpringBoot、消息/缓存等中间件、分布式系统架构、MySQL等,了解相关原理机制;3、具备良好的识别和设计通用框架及模块的能力;有强烈的稳定性意识,有很强的问题分析和排查定位能力;4、具备很强的自我驱动与结果导向意识,具备创新能力和团队协作能力,具备良好的沟通与表达能力;5、工作认真、严谨、敬业,有强烈的技术热情、工作责任感、目标感,抗压且乐观;对新技术有好奇心,乐于技术学习和钻研。#内推##成都##蚂蚁#作者:别骂了,我菜链接:https://www.nowcoder.com/feed/main/detail/b61f0b54be884957b3f4df6eff71e13c?anchorPoint=comment来源:牛客网
投递蚂蚁集团等公司10个岗位
点赞 评论 收藏
分享
头像
03-09 21:01
已编辑
华中科技大学 Java
1,模拟一下就好,别忘了处理换行和回车,代码略。2,bfs一下,找出每个点的坐标,o1输出就可以了。void bfs(int u) {    queue q;    q.push(u);    pos[u] = {0, 0};    mark[u] = 1;    while (q.size() > 0) {        int v = q.front();        q.pop();        int l = - 1, r = -1;        for (auto x : g[v]) {            if (mark[x]) continue;            mark[x] = 1;            q.push(x);            if (l == -1) l = x;            else {                r = x;                if (l > r) swap(l, r);             }        }        if (l != -1) {            pos[l] = pair(pos[v].x - 1, pos[v].y - 1);        }        if (r != -1) {            pos[r] = pair(pos[v].x + 1, pos[v].y - 1);        }    } }3,可以发现,我们要计算的是每个数整除其他数之后的和。其实可以反过来想,我们要计算每个数作为除数,其他数除他之后的和。对于数i来说,[j * i, j * i + i - 1]这个范围内的数除以i等于j,那我们可以枚举每个i和每个j,维护一个前缀和来快速算出[j * i, j * i + i - 1]这个范围内的贡献,贡献数是i的数量 * 范围内数的个数 * j。时间复杂度是n + n/2 + n /3 +... = nlogn代码如下,cnt[i]是数字i的数量,sum[i]是前cnt[i]的前缀和,N是数的最大范围1e5;    for (int i = 1; i < N; i ++) {        if (cnt[i] == 0) continue;        for (int j = 1; j * i < N; j ++) {            res += 1ll * (sum[min(i * j + i - 1, N - 1)] - sum[i * j - 1]) * cnt[i] * j;        }    }#笔试# #蚂蚁# #蚂蚁笔试#
投递蚂蚁集团等公司10个岗位 笔试
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务