less than 1 minute read

1 min read 339 words

Problem Statement

leetcode problem link

Solution [accepted]

class Solution:
    def buttonWithLongestTime(self, events: List[List[int]]) -> int:
        res = events[0][0]
        longestTime = events[0][1]
        for i in range(1, len(events)):
            time = events[i][1] - events[i - 1][1]
            if time > longestTime:
                res = events[i][0]
                longestTime = time
            if time == longestTime:
                res = min(res, events[i][0])
        return res
public class Solution {
    public int ButtonWithLongestTime(int[][] events) {
        int result = events[0][0];
        int longest = events[0][1];
        for (var i = 1; i < events.Length; i++) {
            var time = events[i][1] - events[i - 1][1];
            if (time == longest) {
                result = Math.Min(result, events[i][0]);
            }
            if (time > longest) {
                result = events[i][0];
                longest = time;
            }
        }
        return result;
    }
}

Leave a comment