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 17:46olliecrowolliecrowScore: 3,169Success
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 17:423,15060,098,56734,655,00002,404,352
2Mar 30, 2026 17:483,15161,665,37334,659,00002,404,352
3Mar 30, 2026 17:463,15259,411,34234,667,00002,404,352
4Mar 30, 2026 17:493,15361,221,12334,686,00002,396,160
5Mar 30, 2026 17:473,15365,315,39734,678,00002,277,376
6Mar 30, 2026 17:403,15359,334,94234,688,00002,277,376
7Mar 30, 2026 17:443,15459,500,83733,670,0001,020,0002,400,256
8Mar 30, 2026 17:483,15467,098,11934,697,00002,396,160
9Mar 30, 2026 17:483,15466,515,60333,673,0001,020,0002,400,256
10Mar 30, 2026 17:383,15464,870,41133,677,0001,020,0002,277,376
11Mar 30, 2026 17:403,16057,713,20332,769,0001,986,0002,277,376
12Mar 30, 2026 17:383,16361,347,73233,804,000994,0002,277,376
13Mar 30, 2026 17:353,16763,972,19833,838,000995,0002,277,376
14Mar 30, 2026 17:363,16765,690,30734,836,00002,404,352
15Mar 30, 2026 17:473,16759,785,95633,841,000995,0002,400,256
16Mar 30, 2026 17:473,16764,325,71432,851,0001,990,0002,277,376
17Mar 30, 2026 17:383,16765,324,51833,847,000995,0002,400,256
18Mar 30, 2026 17:393,16767,419,01432,842,0001,990,0002,396,160
19Mar 30, 2026 17:423,16759,555,38632,844,0001,990,0002,396,160
20Mar 30, 2026 17:463,16760,616,72433,841,000995,0002,510,848
21Mar 30, 2026 17:353,16862,688,32933,848,000995,0002,277,376
22Mar 30, 2026 17:313,16864,232,50933,856,000995,0002,396,160
23Mar 30, 2026 17:453,16860,656,21734,852,00002,387,968
24Mar 30, 2026 17:433,16864,635,03134,847,00002,277,376
25Mar 30, 2026 17:493,16864,793,51233,857,000995,0002,404,352
26Mar 30, 2026 17:413,16859,688,85734,853,00002,277,376
27Mar 30, 2026 17:333,16860,772,01134,844,00002,400,256
28Mar 30, 2026 17:323,16966,989,81232,863,0001,991,0002,277,376
29Mar 30, 2026 17:463,16955,773,77234,864,00002,277,376
30Mar 30, 2026 17:333,16964,201,44632,863,0001,991,0002,277,376
31Mar 30, 2026 17:343,16963,432,66833,861,000995,0002,277,376
32Mar 30, 2026 17:413,16962,122,18233,867,000996,0002,392,064
33Mar 30, 2026 17:453,16962,290,11433,866,000996,0002,396,160
34Mar 30, 2026 17:393,16957,278,14933,864,000996,0002,392,064
35Mar 30, 2026 17:393,16965,641,09032,863,0001,991,0002,277,376
36Mar 30, 2026 17:453,16966,662,31833,864,000996,0002,277,376
37Mar 30, 2026 17:353,16961,636,03133,861,000995,0002,396,160
38Mar 30, 2026 17:363,17059,388,14833,879,000996,0002,277,376
39Mar 30, 2026 17:313,17157,004,77132,888,0001,993,0002,277,376
40Mar 30, 2026 17:413,17162,170,64032,893,0001,993,0002,273,280
41Mar 30, 2026 17:323,17162,024,12834,880,00002,277,376
42Mar 30, 2026 17:443,17260,445,49332,898,0001,993,0002,277,376
43Mar 30, 2026 17:323,17356,462,29633,873,0001,026,0002,277,376
44Mar 30, 2026 17:423,17458,653,84933,915,000997,0002,387,968
45Mar 30, 2026 17:433,17562,620,51433,924,000997,0002,277,376
46Mar 30, 2026 17:433,17557,495,39332,932,0001,995,0002,277,376
47Mar 30, 2026 17:413,17657,095,44332,939,0001,996,0002,277,376
48Mar 30, 2026 17:313,17657,061,08733,933,000998,0002,277,376
49Mar 30, 2026 17:343,17662,458,84732,936,0001,996,0002,277,376
50Mar 30, 2026 17:443,17858,925,09733,955,000998,0002,404,352
51Mar 30, 2026 17:413,17862,194,46333,958,000998,0002,277,376
52Mar 30, 2026 17:413,17962,952,01932,972,0001,998,0002,277,376
53Mar 30, 2026 17:333,18060,353,03333,978,000999,0002,277,376
54Mar 30, 2026 17:493,18156,766,71032,987,0001,999,0002,400,256
55Mar 30, 2026 17:343,18257,075,58433,999,000999,0002,277,376
56Mar 30, 2026 17:463,18256,771,15734,003,0001,000,0002,486,272
57Mar 30, 2026 17:403,18357,603,82633,015,0002,000,0002,396,160
58Mar 30, 2026 17:463,18462,527,41333,025,0002,001,0002,277,376
59Mar 30, 2026 17:463,18858,155,39133,063,0002,003,0002,400,256
60Mar 30, 2026 17:363,18963,526,00333,070,0002,004,0002,277,376