這次來分享一位同學的 Visa 2026 New Grad OA 經驗。整體感覺和 TikTok 的題庫幾乎完全重合(確認是同一套 Codesignal 題庫),區別只是時間從 TikTok 的 70 分鐘縮短成了 Visa 的 60 分鐘(有的 batch 甚至是 45 分鐘),但題目內容和邏輯幾乎一樣。
這位同學因為之前練過 TikTok 的版本,這次直接在 30 分鐘內全 AC。對於收到 OA 邀約但沒太大把握的同學,這篇可以算是完整參考。
OA 基本信息
- 平臺:Codesignal
- 題量:4 道程式設計題
- 时限:官方 70 分鐘(實測只用 30 分鐘)
- 難度分佈:兩道 Easy + 兩道 Medium
- 測試語言:Python / Java / C++ 均可,Python 最快
這套題對演算法基礎的考察並不重,但需要良好的程式碼實現速度與邊界意識。
Question 1: Rating Calculation
Problem:
You are given an integer array diffs. Start with an initial rating of 1500. For each element in diffs, update your current rating by adding the difference. Track and return the highest rating you ever reach.
Example:
diffs = [100, -50, 200]
Output: 1650
Idea:
Simple simulation — keep two variables:
curr = 1500best = 1500
Iterate throughdiffs, updatecurr += diff, and keepbest = max(best, curr)
Complexity: O(n)
Question 2: E-Scooter Ride Simulation
Problem:
You are walking along a street with several scooters placed at different positions. Starting from position start, you need to reach end.
At each step:
- Find the nearest scooter to your right that you haven’t used.
- Walk there.
- Ride 10 units forward (or stop at
endif less than 10 units away). - Repeat until you reach the end.
Return the total riding distance.
Idea:
Use a while loop to simulate the movement process.
At each iteration, locate the next scooter, move to it, ride, and update your position.
Complexity: O(n²) (acceptable due to small input size).
Question 3: Distribution Centers
Problem:
You have several distribution centers, each with a limited capacity. You receive a series of package logs — each package is assigned to thefirst available center with remaining capacity.
When all centers are full, reset all non-closed centers to their initial capacity. Some centers may be permanently closed and should never reset.
Idea:
Maintain two arrays:
capacity[i]for remaining capacityclosed[i]as boolean flags
For each log entry, assign the package to the first available center.
If all centers are exhausted, reset non-closed centers.
Implementation-heavy but straightforward.
Question 4: Similar Peaks
Problem:
Given an array heights and an integer viewingGap, find all pairs (i, j) such that |i - j| >= viewingGap, and return the minimum absolute difference |heights[i] - heights[j]|.
Example:
heights = [1, 5, 2, 8], viewingGap = 2
Output: 3
Idea:
Brute-force all valid pairs using double loop, update the minimum absolute difference.
For small inputs, O(n²) is sufficient.
總結與建議
整體來看,這套 Visa OA 的題型與 TikTok 幾乎完全一致,難度中等,考察點集中在:
- 實現速度與程式碼規範:每題都有固定邏輯,不存在複雜演算法。
- 模擬能力:尤其是第 2、3 題,屬於純過程模擬題。
- 邊界控制:例如滑板車題的終點判斷、配送中心的 reset 條件。
如果已經刷過 TikTok OA,可以直接無縫銜接 Visa。
小結
這類 Codesignal 套題最大的問題是題量大、時間緊、容易卡邊界。
不少同學會卡在「模擬類邏輯」題上,例如滑板車那題跑偏或容量沒重置。
所以如果你不想冒險自己摸索邊界、擔心時間不夠,Programhelp 团队 也長期提供:
無痕遠端 OA 輔助服務:
透過安全工具 ToDesk,全程遠端連線協助,系統無偵測痕跡;
車輛 HackerRank、Codesignal、Codility 等平台;
無論是 Visa、TikTok、Amazon、Capital One,我們都有完整題庫與因應策略。