Welcome Adyen AMs GradAssessment 2025 Start-05-23 No(Generic)-OA writing-面试代面- VO support

这次Adyen的OA真的不是开玩笑的难,考前我还在怀疑人生,考完我直接想投身佛门🧘‍♀️。
这场笔试是2025 AMs Grad项目的第一轮,题量不多但难度在线,尤其是逻辑设计题非常考验代码思维+业务理解力,完全不是LeetCode背模板能解决的那种!

我提前准备了几轮模拟,发现这类OA越来越偏向真实场景模拟,不仅要写出逻辑通顺的代码,还要能快速理解金融、风控、银行等背景。别说,写题的时候真的有种「我现在就能入职Adyen」的错觉哈哈哈~

这篇我整理了两道核心算法题:
📍Fraudster Cache欺诈者缓存设计题
📍Cheapest Bank Route最便宜转账路径查找
这两道题一个考你数据结构+缓存策略优化,另一个偏向图的遍历+路径剪枝控制,通通实打实是面试原题级别的干货!

1.Fraudster cache

Adyen's fraud team has identified that fraudsters often try multiple card numbers in short periods of time. Therefore - it's useful to keep a small list of shoppers in memory - the ones that most recently attempted fraud or were marked as fraudulent. Given that fraud detection happens before payment authorizations - the cache is expected to perform very well.

Given a maximum capacity - return an implementation of a fraudster cache.

Sample test case:

On a fraudster cache with a capacity of 2, we do the following 6 operations:

  1. Mark the shopper with attributes (shopper1, 205.13.50.50, fraud@gmail.com) as fraudulent
    The cache now contains shopper1
  2. Mark the shopper with attributes (shopper2, 201.16.13.55, fraud@yahoo.com) as fraudulent
    The cache now contains shopper1 and shopper2
  3. Shopper shopper1 attempts to pay, we get them from the cache and return their details.
    The fraud attempt for shopper1 is reflected in the cache
Get shopper shopper1
  1. Mark the shopper with attributes (shopper3, 202.56.0.17, fraud@example.com) as fraudulent
    shopper3 should be added to the cache, but we're at capacity, so we need to remove 1 of the 2 shoppers from the cache.
    We remove shopper2 - even though shopper1 was marked as fraud first - they recently attempted fraud.
    The cache now contains shopper1 and shopper3
  2. Get shopper
Get shopper shopper1

Return the shopper attributes (shopper1, 205.13.50.50, fraud@gmail.com)

  1. Get shopper
Get shopper shopper2

This shopper was removed from the cache to make room for shopper3, we no longer have their details in memory so we return null


2.Cheapest bank route

International bank transfers can sometimes be very complicated with Adyen's money going through multiple intermediary banks (each taking a cut) before they reach their destination. Since Adyen executes a lot of transfers - it's worthwhile to find the cheapest routes. At the same time - we don't want the transfer to go through too many intermediaries as that may cause delays.

Given a destination bank, list of routes including costs and a maximum number of intermediary banks - return the cost of the cheapest route between Adyen and the destination bank or -1 if no such route exists.

Example test case:

We want to find a route to Chase, with at most 1 intermediary bank. The available routes are as follows:

  • Adyen to BoA with a cost of 10
  • BoA to Wells with a cost of 10
  • Wells to Adyen with a cost of 10
  • BoA to Chase with a cost of 60
  • Wells to Chase with a cost of 20

There’s 2 routes to Chase:

  • Adyen to BoA to Wells to Chase (10 + 10 + 20 = 40)
  • Adyen to BoA to Chase (10 + 60 = 70)

The first route is cheaper, but goes through 2 intermediary banks; the cheapest route going through no more than 1 intermediary is therefore the second one, with a cost of 70.

我们长期稳定承接各大科技公司如TikTok、Google、Amazon等的OA笔试代写服务,确保满分通过。如有需求,请随时联系我们。

We consistently provide professional online assessment services for major tech companies like TikTok, Google, and Amazon, guaranteeing perfect scores. Feel free to contact us if you're interested.

Leave a Reply

Your email address will not be published. Required fields are marked *