Parse JSON Sergey Svistunov

Compute the total amount of non-canceled external USD transactions from a stream of JSON records as fast as possible.

Input: 1 000 000 JSON records on STDIN, one per line. Each record has the following structure:

{
    "user_id": 0,
    "currency": "USD",
    "transactions": [
        {
            "amount": 0,
            "to_user_id": 0,
            "canceled": false
        }
    ]
}
Field Constraints
user_id Integer, max 10 000
currency One of "GBP", "USD", "RUB", "JPY", "CHF"
transactions Array, max 10 elements
amount Integer, max 1000
canceled Boolean; may be omitted when false

Field order is not guaranteed within any object.

Output: The total amount of all transactions where:

  • record.currency == "USD"
  • transaction.to_user_id != record.user_id (external)
  • transaction.canceled is false or absent
Back to listMar 30, 2026 09:15olliecrowolliecrowScore: 3,170Success
Source Code

Source code access is restricted. Log in to request access.

Challenge History

No challenges yet.

Run Statistics
#DateScoreWall TimeCPU UserCPU SystemMemoryError
1Mar 30, 2026 09:123,14965,662,86533,623,0001,018,0002,387,968
2Mar 30, 2026 09:093,15162,832,71634,664,00002,277,376
3Mar 30, 2026 09:163,15163,280,96033,641,0001,019,0002,277,376
4Mar 30, 2026 09:113,15259,191,15134,670,00002,277,376
5Mar 30, 2026 09:103,15365,425,49434,686,00002,277,376
6Mar 30, 2026 09:143,15466,950,18033,679,0001,020,0002,277,376
7Mar 30, 2026 09:203,16558,859,45934,817,00002,277,376
8Mar 30, 2026 09:203,16660,537,56034,826,00002,408,448
9Mar 30, 2026 09:163,16771,245,14032,850,0001,990,0002,396,160
10Mar 30, 2026 09:173,16763,189,66434,832,00002,404,352
11Mar 30, 2026 09:193,16763,870,66033,842,000995,0002,277,376
12Mar 30, 2026 09:093,16861,978,31032,858,0001,991,0002,277,376
13Mar 30, 2026 09:163,16861,768,60333,856,000995,0002,277,376
14Mar 30, 2026 09:183,16860,649,49332,852,0001,991,0002,277,376
15Mar 30, 2026 09:133,16865,419,68033,858,000995,0002,281,472
16Mar 30, 2026 09:193,16858,401,30132,859,0001,991,0002,400,256
17Mar 30, 2026 09:213,16859,649,15233,852,000995,0002,404,352
18Mar 30, 2026 09:193,16859,640,60733,849,000995,0002,404,352
19Mar 30, 2026 09:113,16867,528,65334,850,00002,400,256
20Mar 30, 2026 09:203,16860,708,74833,856,000995,0002,396,160
21Mar 30, 2026 09:143,16960,942,89032,863,0001,991,0002,277,376
22Mar 30, 2026 09:143,16963,662,33233,867,000996,0002,400,256
23Mar 30, 2026 09:143,16959,246,83933,861,000995,0002,400,256
24Mar 30, 2026 09:133,16965,600,65132,863,0001,991,0002,277,376
25Mar 30, 2026 09:143,16958,920,41632,871,0001,992,0002,277,376
26Mar 30, 2026 09:193,16962,524,58933,863,000995,0002,387,968
27Mar 30, 2026 09:183,16960,129,52532,867,0001,991,0002,396,160
28Mar 30, 2026 09:133,16962,792,42533,868,000996,0002,277,376
29Mar 30, 2026 09:183,17060,913,98332,875,0001,992,0002,277,376
30Mar 30, 2026 09:183,17159,317,76832,891,0001,993,0002,277,376
31Mar 30, 2026 09:173,17162,821,11233,885,000996,0002,277,376
32Mar 30, 2026 09:183,17160,421,90133,882,000996,0002,277,376
33Mar 30, 2026 09:213,17158,892,76132,891,0001,993,0002,400,256
34Mar 30, 2026 09:213,17159,396,91432,892,0001,993,0002,277,376
35Mar 30, 2026 09:093,17357,909,72032,907,0001,994,0002,277,376
36Mar 30, 2026 09:193,17355,563,31932,906,0001,994,0002,510,848
37Mar 30, 2026 09:123,17361,541,67833,904,000997,0002,400,256
38Mar 30, 2026 09:183,17562,160,80932,929,0001,995,0002,400,256
39Mar 30, 2026 09:133,17662,438,60333,938,000998,0002,277,376
40Mar 30, 2026 09:153,17658,161,50433,933,000998,0002,392,064
41Mar 30, 2026 09:133,17762,433,45733,954,000998,0002,400,256
42Mar 30, 2026 09:133,17757,749,50233,950,000998,0002,277,376
43Mar 30, 2026 09:193,17764,452,78033,948,000998,0002,400,256
44Mar 30, 2026 09:113,17763,483,12733,948,000998,0002,396,160
45Mar 30, 2026 09:113,17863,583,45333,964,000998,0002,277,376
46Mar 30, 2026 09:173,18055,816,87832,981,0001,998,0002,277,376
47Mar 30, 2026 09:163,18157,454,64333,990,000999,0002,277,376
48Mar 30, 2026 09:103,18166,307,81033,993,000999,0002,277,376
49Mar 30, 2026 09:113,18260,272,86834,006,0001,000,0002,400,256
50Mar 30, 2026 09:103,18363,392,40733,017,0002,001,0002,277,376
51Mar 30, 2026 09:143,18455,330,79133,028,0002,001,0002,277,376
52Mar 30, 2026 09:153,18463,039,27734,029,0001,000,0002,387,968
53Mar 30, 2026 09:113,18456,587,72934,026,0001,000,0002,277,376
54Mar 30, 2026 09:153,18758,940,52333,051,0002,003,0002,277,376
55Mar 30, 2026 09:163,18958,035,14034,077,0001,002,0002,396,160
56Mar 30, 2026 09:163,19155,593,72833,093,0002,005,0002,269,184
57Mar 30, 2026 09:123,19659,363,12033,150,0002,009,0002,277,376