Intuit OA 面经分享|Backend & Fullstack 双岗通关经验总结

789閱讀
沒有評論

最近刚刚结束了一场 Intuit 的 Online Assessment ,趁着记忆还很新鲜,来和大家第一时间分享一下。这次学生比较拼,一次性投了 Backend 和 Fullstack 两个岗位,结果是两份 OA 全部顺利完成并通过。对于准备 Intuit 或者其他大厂 OA 的同学来说,这份经验应该能带来不少参考价值。

Intuit OA 面经分享|Backend & Fullstack 双岗通关经验总结

整体体验

先聊聊 Intuit OA 的整体感受:

  • 每份 OA 一共 4 道题
    • 2 coding(需要补全 solve 函数)
    • 2 multiple choice(偏向计算机基础/逻辑,难度不高)
  • 编程题思路直白,不存在特别复杂的数据结构考点。
  • 时间给得比较充裕,平均 20–25 分钟做一道题就绰绰有余。

所以总体氛围比一些大厂 OA 轻松很多,只要基础功夫扎实,发挥稳定就能顺利通过。

Coding 部分

Question 1: Three-Value Sorting

Problem Statement:
You are given an array consisting of only three distinct integers (for example, -1, 0, 1). Write a program to sort the array in ascending order with a time complexity of O(n).

Input:

  • The first line contains an integer N, the size of the array.
  • The second line contains N space-separated integers, the array elements.

Output:

  • Print the sorted array.

Constraints:

1 ≤ N ≤ 200
Array elements ∈ {-1, 0, 1}

思路解析

这题就是经典的 Dutch National Flag Problem 简化版。因为数组里只有三种元素,最简单的办法就是:

  1. 遍历数组,统计 -1, 0, 1 的出现次数。
  2. 按照顺序把它们重新拼回结果数组。

这样写起来很直观,时间复杂度 O(n),空间复杂度 O(1),完全符合要求。

Python 示例

def solve():
    n = int(input().strip())
    arr = list(map(int, input().split()))
    
    count = {-1: 0, 0: 0, 1: 0}
    for num in arr:
        count[num] += 1
    
    result = []
    for val in [-1, 0, 1]:
        result.extend([val] * count[val])
    
    print(" ".join(map(str, result)))

Question 2: Triple Occurrence Check

Problem Statement:
You are given an array of positive integers. Determine whether there exists a number in the array that appears exactly three times.

Input:

  • The first line contains an integer N, the size of the array.
  • The second line contains N space-separated integers, the array elements.

Output:

  • Print true if such a number exists, otherwise print false.

Constraints:

1 ≤ N ≤ 200
1 ≤ arr[i] ≤ 500
At most one number satisfies the condition

思路解析

这道题考察的就是哈希表:

  1. 遍历数组,用 map / dict 统计频次。
  2. 如果某个元素的频次等于 3,就输出 true。
  3. 如果遍历结束都没找到,就输出 false。

注意关键点是 exactly three times,不要写成 “≥3 次”。

C++ 示例

#include <bits/stdc++.h>
using namespace std;

void solve() {
    int n;
    cin >> n;
    vector<int> arr(n);
    for (int i = 0; i < n; i++) cin >> arr[i];

    unordered_map<int,int> freq;
    for (int num : arr) {
        freq[num]++;
    }
    bool found = false;
    for (auto &p : freq) {
        if (p.second == 3) {
            found = true;
            break;
        }
    }
    cout << (found ? "true" : "false") << endl;
}

Multiple Choice 部分

除了两道编程题,还有两道选择题,偏向基础知识。印象中题型包括:

  • 算法复杂度的判断
  • 简单逻辑推理
  • 数组/字符串基础操作

难度非常友好,不会出现什么刁钻的陷阱。

Programhelp 助攻优势

很多同学其实刷题量足够,但一到真实 OA 环境还是会出错:时间没分配好、边界条件漏掉、最后几个 hidden test case 没通过。像这次 Intuit 的 OA,虽然题目不算难,但机会只有一次,容不得失误。

我们 Programhelp 长期提供 OA 辅助 服务:

  • 远程无痕联机:在不影响你操作的情况下,实时提供后台支持。
  • 100% 过测保障:确保所有 test case 都能顺利通过,不通过不收费。
  • 语音助攻提醒:遇到卡点时给出思路提示,避免慌乱浪费时间。

对很多同学来说,这些助攻往往能在关键时刻救场,确保不浪费宝贵的 OA 机会。毕竟一次 OA 通过,就可能是一个 offer 的开始。

如果你也即将迎来 OA 或 VO,不想孤军奋战,可以随时找我们交流。祝大家都能顺利通关,拿下理想的 offer!

author avatar
jor jor
正文完
 0
评论(沒有評論)