Google 2026 New Grad OA 面经分享 | Programhelp独家整理

15 Views
No Comment

Google 这个名字本身就有点吓人,每年都有人在这一关悄悄折戟,简历再好看也没用。对很多应届生来说,OA 是整个流程里第一道真正的门槛,大量优质简历都在这步被过滤掉。结果发现,其实没有想象中那么玄。

2026 届 Google OA 的整体风格延续了以往:不是考你刷了多少题,而是考你面对问题时的工程思维——代码是否清晰,边界有没有处理好,解题思路是否 structured。说白了,Google 想要的不是背题机器,是真正能写出靠谱代码的人。下面是我的完整经历,附题目思路和备考建议,希望对正在准备的同学有参考价值。

Google 2026 New Grad OA Interview Experience Sharing

Google 2026 New Grad OA 基本信息

Project Content
Evaluation Platform 部分批次 Codility,部分批次 HackerRank
Number of questions Two programming questions
Time limit 60–90 分钟
前置流程 照片验证 → 直接开始编码
Overall difficulty Medium,不难但容易往错方向想

Google NG OA真题回忆(2026 新题)

第一题:收集硬币(Token 移动问题)

题目描述

StringboardT(令牌)、C(硬币)、.(空格)组成。

  • 令牌只能向左移动,每次一步,仅能移到空格;
  • 移动到C位置时收集硬币,硬币消失,位置变为.;
  • 令牌不能重叠,无法移动到有其他令牌的位置。求最多能收集的硬币数量。

Example

  • board = "TT.T.CCCCC" → output3
  • board = "T...CCCC" → output1
  • board = "C..TT.CT.C" → output2

Approach to Solving the Problem

  • 贪心核心:从右往左处理令牌,优先让最右侧令牌收集左侧最近硬币,避免抢占左侧令牌资源;
  • 模拟逻辑:循环遍历,找到可移动令牌→向左匹配硬币→检查路径无阻挡→移动并计数,直到无新移动发生。

Code implementation (Python)

def solution(board):
    arr = list(board)
    coins = 0
    n = len(arr)
    while True:
        moved = False
        for i in range(n-1, -1, -1):
            if arr[i] == 'T':
                j = i - 1
                while j >= 0 and arr[j] == '.': j -= 1
                if j >= 0 and arr[j] == 'C':
                    # 检查路径是否全为空格
                    if all(arr[k] == '.' for k in range(j+1, i)):
                        arr[j] = '.'
                        arr[i] = '.'
                        arr[j+1] = 'T'
                        coins += 1
                        moved = True
                        break
        if not moved: break
    return coins

第二题:最大无共享数字子集

题目描述

给定两位数数组Numbers,选最大子集,要求任意两数无相同数字(如 52 和 25 共享 5、2,不可同选;90 和 90 可同选)。

Example

  • numbers = [52,25,11,52,34,55] → output4
  • numbers = [71,23,57,15] → output2
  • numbers = [11,33,55] → output1

Approach to Solving the Problem

  • 位掩码转化:每个数字转10 位二进制掩码(0-9 数字对应位标记),如 52→1<<5 | 1<<2;
  • 统计频次:用字典统计每种掩码的出现次数;
  • 回溯枚举:遍历所有掩码组合,筛选 ** 无交集(掩码 &=0)** 的组合,计算最大元素和。

Code implementation (Python)

from collections import defaultdict

def solution(numbers):
    def get_mask(num):
        s = str(num)
        mask = 0
        for c in s: mask |= 1 << int(c)
        return mask
    
    count = defaultdict(int)
    for num in numbers: count[get_mask(num)] += 1
    masks = list(count.keys())
    max_size = 0
    
    def backtrack(idx, used, size):
        nonlocal max_size
        if idx == len(masks):
            max_size = max(max_size, size)
            return
        # 不选当前掩码
        backtrack(idx+1, used, size)
        # 选当前掩码(无冲突)
        if (used & masks[idx]) == 0:
            backtrack(idx+1, used | masks[idx], size + count[masks[idx]])
    
    backtrack(0, 0, 0)
    return max_size

Google online assessment 流程说明

OA 链接有效期大概 5–7 天,建议挑个状态好、网络稳的时间段做。进去先照片验证,验证完直接开始写题,没有热身题。

平台支持 Python、Java、C++ 等主流语言,有基础 test case 可以跑,但不支持本地 IDE 那种逐行 debug,所以动手前一定把逻辑想清楚。提交之后系统还会追加几个隐藏 case 做压测,边界没处理好的话这里很容易挂。

资源推荐

如果你也像我一样,在准备 Google、Meta、Microsoft 等大厂 New Grad OA 时,感觉一个人刷题效率不高,或者想针对 Google 高频题型做系统性提升,我强烈推荐 Program assistance.

他们的学长有丰富的大厂 OA助攻经验 ,尤其擅长帮助同学梳理 Google OA 高频题、优化代码风格和提升时间管理能力,能提供针对性的模拟练习和实时的思路指导。

有需要的同学可以去了解一下 Programhelp 的服务,学长会根据你的具体背景给出非常实用的建议。

author avatar
Jory Wang Senior Software Engineer at Amazon
Senior Engineer at Amazon, specializing in the development of core systems within infrastructure, with extensive practical experience in system scalability, reliability, and cost optimization. Currently focused on FAANG SDE interview preparation, assisting over 30 candidates in securing L5/L6 offers within a year.
END
 0