pwner/漏洞大牛看过来,阿里控股集团安全部安全研究团队26届春招内推中

我们是阿里巴巴2026届春季校招现已开启!面向25年11月到26年10月的应届毕业生。工作地包括北京和杭州。我们是阿里巴巴控股集团的安全研究团队,研究内容涵盖漏洞挖掘、系统安全、移动安全、攻防对抗等多个方向,成果曾发表在CCS、Usenix、BlackHat、DEFCON等安全顶会,受到包括苹果、华为等国内外知名厂商的多次致谢。如果你想跟我们一样做出耀眼的创新成果,欢迎加入我们!可用下面的内推码投递简历:https://talent-holding.alibaba.com/campus/qrcode/home?code=qCvKgJrEUgRm6wWq0KgoHC3sUJ9k7bSXKcjRCrFfYRKh6S2bOhigZCSJUPG7FaAB!!!!

职位要求:
1. 熟悉C/C++/Objective-C/Swift并至少精通其中一种语言;
2. 有程序逆向经验,对常见的静态分析与动态分析技术手段有所了解,有自动化程序分析经验者优先;
3. 熟悉常见的二进制漏洞(逻辑类或内存破坏类)产生原理;
4. 本科以上学历,具备扎实的计算机学科知识基础,包括但不限于计算机体系结构、操作系统原理、常见网络协议、加密算法等;
5. 有较强的学习能力、沟通能力,以及文字和语言表达能力,有良好的上进心、责任心与团队协作能力。

#阿里##安全工程师#
全部评论

相关推荐

头像
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
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务