💳 Fintech: Transaction Pair Reconciliation

20:00

1. Studi Kasus

Di sistem perbankan / payment gateway, rekonsiliasi harian mencocokkan transaksi Debit (pengeluaran) dengan transaksi Kredit (pemasukan) yang memiliki jumlah yang saling melengkapi ke nilai targetSum.

Anda diminta membuat fungsi rekonsiliasi:

function findReconciledPairs(transactions, targetSum)

⏱️ Alokasi Waktu Live Coding (20 Menit):

  • 5 Menit Pertama: Memahami problem $O(N)$ Hash Map lookup vs $O(N^2)$ brute force.
  • 15 Menit Koding: Menuliskan algoritma pencocokan pasangan id transaksi tanpa duplikasi penggunaan.

2. Requirement

  1. Input: array of transaction objects: [{ id: "TX1", amount: 400 }, { id: "TX2", amount: 600 }, ...] dan integer targetSum.
  2. Temukan pasangan transaksi [idA, idB] di mana amountA + amountB === targetSum.
  3. Setiap transaksi hanya boleh dipasangkan 1 kali (tidak boleh double count).
  4. Kembalikan array berisi pasangan transaksi yang berhasil direkonsiliasi.
solution.js
Loading...
Local Test Console