Next greater circular
Your task
Given a circular integer array nums, return an array answer where answer[i] is the next greater element for nums[i]. The next greater element of a position is the first value strictly greater than nums[i] when traversing forward and wrapping around the array; if none exists, use -1. Here 1 <= len(nums) <= 10^4 and values may be negative.
Examples
next_greater_circular(nums: list[int]) -> list[int]Example 1
Input
next_greater_circular([1, 2, 1])Output
[2, -1, 2]