行吟信息科技(上海)有限公司校招算法工程师笔试经验——求职精灵(finsight.work)

收藏 0 浏览 19
2026-10-14 12:28:12

一、面试总体概述

1.1案例背景

一份纯笔试复盘。题型为 AI 题 1 道 + 编程题 2 道 + 选择题 20 道,整体难度偏高。两道编程题都给出了完整解题思路(余数 DP、分层图 + 双源会合),是这份面经最有价值的部分。

1.2基本信息

公司行吟信息科技(上海)有限公司
岗位算法工程师
招聘类型校招
用工形式 / 部门直招
面试形式线上笔试
面试轮次1 轮
题目数量共 2 题,均附参考答案
整体难度★★★★☆ 偏难
是否参加笔试是
笔试形式AI 题 1 道 + 编程题 2 道 + 选择题 20 道
题型构成AI 题 1 + 编程题 2 + 选择题 20

1.3高频考点

考点分类出现轮次次数
余数 DP / 同余背包算法与数据结构笔试1
分层图与多约束最短路算法与数据结构笔试1

1.4备考建议

优先级易失分点准备动作
P0题面细节缺失(是否允许前导零、时间与金钱能否直接相加)补全题面表述,或在下次遇到同类题时先向面试官确认边界
P1余数 DP 是高频模板整理成模板题,扩展到「和能被 k 整除的子数组」「子序列和 mod k」等变体
P1笔试选择题没有记录20 道选择题零记录,是本条最大的信息缺口,后续整理可补上考点分布

二、第 1 轮:笔试

2.1面试形式与时长

轮次名称笔试
面试类型笔试
形式线上
本轮题量2 题

2.2重点考查维度

  • 算法与数据结构 —— 本组 2 道题

2.3面试真题与参考答案

Q1子序列整除 k 计数算法与数据结构 · 动态规划
参考答案

设 dp[r] 表示「扫描到当前位置时,余数为 r 的非空子序列个数」。逐个字符推进,对数字 d 有三条来源:不选(沿用原 dp)、单独成序列(余数 d % k 加 1)、拼在已有子序列后面(余数 (r×10 + d) % k 累加 dp[r])。答案取最终的 dp[0]。

MOD = 10**9 + 7
def count_divisible(s, k):
    dp = [0] * k
    for ch in s:
        d = int(ch)
        ndp = dp[:]                    # 不选:沿用上一轮
        ndp[d % k] = (ndp[d % k] + 1) % MOD    # 单独成序列
        for r in range(k):             # 拼在已有子序列后面
            if dp[r]:
                nr = (r * 10 + d) % k
                ndp[nr] = (ndp[nr] + dp[r]) % MOD
        dp = ndp
    return dp[0]

复杂度:时间 O(nk),空间 O(k)(滚动数组)。
作答要点:①必须用 dp 的副本更新,否则同一个字符会被重复使用;②k = 1 时所有非空子序列都满足,可用来快速自测;③数字含 0 时,前导零是否影响计数需先向面试官确认口径。

题目未给完整约束,作答前建议先确认三件事:是否允许前导零、是否允许空子序列、模数是否固定
余数DP背包同余
Q2双人路径时间金钱联合最优算法与数据结构 · 图论
参考答案

关键洞察是:时间与金钱两个目标相互耦合,不能拆成两次独立最短路,必须做联合建模。
做法分四步:

  1. 因为每条边耗时都是 1,先按步数做 BFS,求出 s、t 到每个点的最短步数
  2. 枚举会合点 m,两人到达 m 的时间取 max,记为 L
  3. 在「不超过 L 步」的约束下,求 s→m、t→m 的最小金钱(分层图上的 DP)
  4. 从 m 到终点跑一次 Dijkstra,边权用「时间 + 金钱」的联合代价,对所有 m 取最小值

核心:分层图 + 双源会合 + 联合代价。
作答要点:①说清为什么不能分开算——分开会把两条互不兼容的路径拼在一起,得到不可行的解;②联合代价的权重如何确定,要先和面试官确认时间与金钱的换算关系;③先到的同学能否等待、等待是否计入时间成本,会直接改变答案。

题面约束不完整,作答时建议先确认:两人是否必须同时到达、先到能否等待、时间与金钱如何换算权重
分层图Dijkstra多目标最短路
备考提示
备考阶段,我发现很多同学容易陷入「不知道从哪准备」的困境。后来我向学员推荐了一款叫求职精灵的 AI 工具,上面收录了大量真实面经,还能直接搜到目标岗位的面试官常问什么、评分标准是什么。用它做 AI 模拟面试也特别方便,输入公司和岗位,系统自动生成仿真题目并给出反馈,练完之后心里更有底。感兴趣的同学可以直接访问 https://finsight.work/ 体验。

总结收尾

最后真心建议大家在备考阶段用一下求职精灵,网址是 https://finsight.work/ 。它能查岗位JD、一键修改简历、刷15万+道真题题库,还有AI模拟面试功能,整个备考流程基本都能覆盖,已经有超过6万学员用过,效果有口皆碑。别等到面试前一天才开始准备,现在就去用起来。机会永远留给有准备的人,希望读到这篇文章的每一位同学都能拿到心仪的offer。

以上内容整理自学员和应届同学反馈的真实笔试经验,结合行吟信息科技(上海)有限公司的最新考情整理,仅供参考学习。祝各位求职者顺利拿到心仪offer! 本文由求职精灵内容团队整理发布 | 官网:https://finsight.work/