Search⌘ K
AI Features

Feature #7: Process Transactions

Understand how to parse and extract integer profit or loss values from stock transaction log lines. Learn to handle leading whitespaces, signs, non-digit characters, and integer boundaries in Kotlin. This lesson prepares you to solve common interview problems involving data parsing and integer overflow constraints.

Description

In a stock trading company, several transactions are performed every day. All these transactions are recorded in a log file. The lines in the log file may start with a positive or negative integer that will represent the profit or loss on the transaction, followed by textual details about the transaction. There may be leading whitespace in the line.

Our task is to process one line of the log file and return the integer at the beginning of the line, while ignoring the whitespace until the first non-whitespace character is found. After this, we should check for an optional initial + or - sign followed by as many numerical digits as possible. If the first token on the line is not an integer, we will return 0.

Note: Assume that we can only store integers within the 32-bit signed integer range: [−2312^{31}, 2312^{31} − 1]. If the integer is out of this range, either 2312^{31} − 1 or − ...