2022-03-27 20:46:41 +08:00
{
"data" : {
"question" : {
"questionId" : "954" ,
"questionFrontendId" : "918" ,
"categoryTitle" : "Algorithms" ,
"boundTopicId" : 1969 ,
"title" : "Maximum Sum Circular Subarray" ,
"titleSlug" : "maximum-sum-circular-subarray" ,
"content" : "<p>Given a <strong>circular integer array</strong> <code>nums</code> of length <code>n</code>, return <em>the maximum possible sum of a non-empty <strong>subarray</strong> of </em><code>nums</code>.</p>\n\n<p>A <strong>circular array</strong> means the end of the array connects to the beginning of the array. Formally, the next element of <code>nums[i]</code> is <code>nums[(i + 1) % n]</code> and the previous element of <code>nums[i]</code> is <code>nums[(i - 1 + n) % n]</code>.</p>\n\n<p>A <strong>subarray</strong> may only include each element of the fixed buffer <code>nums</code> at most once. Formally, for a subarray <code>nums[i], nums[i + 1], ..., nums[j]</code>, there does not exist <code>i <= k1</code>, <code>k2 <= j</code> with <code>k1 % n == k2 % n</code>.</p>\n\n<p> </p>\n<p><strong>Example 1:</strong></p>\n\n<pre>\n<strong>Input:</strong> nums = [1,-2,3,-2]\n<strong>Output:</strong> 3\n<strong>Explanation:</strong> Subarray [3] has maximum sum 3.\n</pre>\n\n<p><strong>Example 2:</strong></p>\n\n<pre>\n<strong>Input:</strong> nums = [5,-3,5]\n<strong>Output:</strong> 10\n<strong>Explanation:</strong> Subarray [5,5] has maximum sum 5 + 5 = 10.\n</pre>\n\n<p><strong>Example 3:</strong></p>\n\n<pre>\n<strong>Input:</strong> nums = [-3,-2,-3]\n<strong>Output:</strong> -2\n<strong>Explanation:</strong> Subarray [-2] has maximum sum -2.\n</pre>\n\n<p> </p>\n<p><strong>Constraints:</strong></p>\n\n<ul>\n\t<li><code>n == nums.length</code></li>\n\t<li><code>1 <= n <= 3 * 10<sup>4</sup></code></li>\n\t<li><code>-3 * 10<sup>4</sup> <= nums[i] <= 3 * 10<sup>4</sup></code></li>\n</ul>\n" ,
"translatedTitle" : "环形子数组的最大和" ,
"translatedContent" : "<p>给定一个长度为 <code>n</code> 的<strong>环形整数数组</strong> <code>nums</code> ,返回<em> <code>nums</code> 的非空 <strong>子数组</strong> 的最大可能和 </em>。</p>\n\n<p><strong>环形数组</strong><em> </em>意味着数组的末端将会与开头相连呈环状。形式上, <code>nums[i]</code> 的下一个元素是 <code>nums[(i + 1) % n]</code> , <code>nums[i]</code> 的前一个元素是 <code>nums[(i - 1 + n) % n]</code> 。</p>\n\n<p><strong>子数组</strong> 最多只能包含固定缓冲区 <code>nums</code> 中的每个元素一次。形式上,对于子数组 <code>nums[i], nums[i + 1], ..., nums[j]</code> ,不存在 <code>i <= k1, k2 <= j</code> 其中 <code>k1 % n == k2 % n</code> 。</p>\n\n<p> </p>\n\n<p><strong>示例 1: </strong></p>\n\n<pre>\n<strong>输入:</strong>nums = [1,-2,3,-2]\n<strong>输出:</strong>3\n<strong>解释:</strong>从子数组 [3] 得到最大和 3\n</pre>\n\n<p><strong>示例 2: </strong></p>\n\n<pre>\n<strong>输入:</strong>nums = [5,-3,5]\n<strong>输出:</strong>10\n<strong>解释:</strong>从子数组 [5,5] 得到最大和 5 + 5 = 10\n</pre>\n\n<p><strong>示例 3: </strong></p>\n\n<pre>\n<strong>输入:</strong>nums = [3,-2,2,-3]\n<strong>输出:</strong>3\n<strong>解释:</strong>从子数组 [3] 和 [3,-2,2] 都可以得到最大和 3\n</pre>\n\n<p> </p>\n\n<p><strong>提示:</strong></p>\n\n<ul>\n\t<li><code>n == nums.length</code></li>\n\t<li><code>1 <= n <= 3 * 10<sup>4</sup></code></li>\n\t<li><code>-3 * 10<sup>4</sup> <= nums[i] <= 3 * 10<sup>4</sup></code> </li>\n</ul>\n" ,
"isPaidOnly" : false ,
"difficulty" : "Medium" ,
2022-05-02 23:44:12 +08:00
"likes" : 361 ,
2022-03-27 20:46:41 +08:00
"dislikes" : 0 ,
"isLiked" : null ,
"similarQuestions" : "[]" ,
"contributors" : [ ] ,
"langToValidPlayground" : "{\"cpp\": true, \"java\": true, \"python\": true, \"python3\": true, \"mysql\": false, \"mssql\": false, \"oraclesql\": false, \"c\": false, \"csharp\": false, \"javascript\": false, \"ruby\": false, \"bash\": false, \"swift\": false, \"golang\": false, \"scala\": false, \"html\": false, \"pythonml\": false, \"kotlin\": false, \"rust\": false, \"php\": false, \"typescript\": false, \"racket\": false, \"erlang\": false, \"elixir\": false}" ,
"topicTags" : [
{
"name" : "Queue" ,
"slug" : "queue" ,
"translatedName" : "队列" ,
"__typename" : "TopicTagNode"
} ,
{
"name" : "Array" ,
"slug" : "array" ,
"translatedName" : "数组" ,
"__typename" : "TopicTagNode"
} ,
{
"name" : "Divide and Conquer" ,
"slug" : "divide-and-conquer" ,
"translatedName" : "分治" ,
"__typename" : "TopicTagNode"
} ,
{
"name" : "Dynamic Programming" ,
"slug" : "dynamic-programming" ,
"translatedName" : "动态规划" ,
"__typename" : "TopicTagNode"
} ,
{
"name" : "Monotonic Queue" ,
"slug" : "monotonic-queue" ,
"translatedName" : "单调队列" ,
"__typename" : "TopicTagNode"
}
] ,
"companyTagStats" : null ,
"codeSnippets" : [
{
"lang" : "C++" ,
"langSlug" : "cpp" ,
"code" : "class Solution {\npublic:\n int maxSubarraySumCircular(vector<int>& nums) {\n\n }\n};" ,
"__typename" : "CodeSnippetNode"
} ,
{
"lang" : "Java" ,
"langSlug" : "java" ,
"code" : "class Solution {\n public int maxSubarraySumCircular(int[] nums) {\n\n }\n}" ,
"__typename" : "CodeSnippetNode"
} ,
{
"lang" : "Python" ,
"langSlug" : "python" ,
"code" : "class Solution(object):\n def maxSubarraySumCircular(self, nums):\n \"\"\"\n :type nums: List[int]\n :rtype: int\n \"\"\"" ,
"__typename" : "CodeSnippetNode"
} ,
{
"lang" : "Python3" ,
"langSlug" : "python3" ,
"code" : "class Solution:\n def maxSubarraySumCircular(self, nums: List[int]) -> int:" ,
"__typename" : "CodeSnippetNode"
} ,
{
"lang" : "C" ,
"langSlug" : "c" ,
"code" : "\n\nint maxSubarraySumCircular(int* nums, int numsSize){\n\n}" ,
"__typename" : "CodeSnippetNode"
} ,
{
"lang" : "C#" ,
"langSlug" : "csharp" ,
"code" : "public class Solution {\n public int MaxSubarraySumCircular(int[] nums) {\n\n }\n}" ,
"__typename" : "CodeSnippetNode"
} ,
{
"lang" : "JavaScript" ,
"langSlug" : "javascript" ,
"code" : "/**\n * @param {number[]} nums\n * @return {number}\n */\nvar maxSubarraySumCircular = function(nums) {\n\n};" ,
"__typename" : "CodeSnippetNode"
} ,
{
"lang" : "Ruby" ,
"langSlug" : "ruby" ,
"code" : "# @param {Integer[]} nums\n# @return {Integer}\ndef max_subarray_sum_circular(nums)\n\nend" ,
"__typename" : "CodeSnippetNode"
} ,
{
"lang" : "Swift" ,
"langSlug" : "swift" ,
"code" : "class Solution {\n func maxSubarraySumCircular(_ nums: [Int]) -> Int {\n\n }\n}" ,
"__typename" : "CodeSnippetNode"
} ,
{
"lang" : "Go" ,
"langSlug" : "golang" ,
"code" : "func maxSubarraySumCircular(nums []int) int {\n\n}" ,
"__typename" : "CodeSnippetNode"
} ,
{
"lang" : "Scala" ,
"langSlug" : "scala" ,
"code" : "object Solution {\n def maxSubarraySumCircular(nums: Array[Int]): Int = {\n\n }\n}" ,
"__typename" : "CodeSnippetNode"
} ,
{
"lang" : "Kotlin" ,
"langSlug" : "kotlin" ,
"code" : "class Solution {\n fun maxSubarraySumCircular(nums: IntArray): Int {\n\n }\n}" ,
"__typename" : "CodeSnippetNode"
} ,
{
"lang" : "Rust" ,
"langSlug" : "rust" ,
"code" : "impl Solution {\n pub fn max_subarray_sum_circular(nums: Vec<i32>) -> i32 {\n\n }\n}" ,
"__typename" : "CodeSnippetNode"
} ,
{
"lang" : "PHP" ,
"langSlug" : "php" ,
"code" : "class Solution {\n\n /**\n * @param Integer[] $nums\n * @return Integer\n */\n function maxSubarraySumCircular($nums) {\n\n }\n}" ,
"__typename" : "CodeSnippetNode"
} ,
{
"lang" : "TypeScript" ,
"langSlug" : "typescript" ,
"code" : "function maxSubarraySumCircular(nums: number[]): number {\n\n};" ,
"__typename" : "CodeSnippetNode"
} ,
{
"lang" : "Racket" ,
"langSlug" : "racket" ,
"code" : "(define/contract (max-subarray-sum-circular nums)\n (-> (listof exact-integer?) exact-integer?)\n\n )" ,
"__typename" : "CodeSnippetNode"
} ,
{
"lang" : "Erlang" ,
"langSlug" : "erlang" ,
"code" : "-spec max_subarray_sum_circular(Nums :: [integer()]) -> integer().\nmax_subarray_sum_circular(Nums) ->\n ." ,
"__typename" : "CodeSnippetNode"
} ,
{
"lang" : "Elixir" ,
"langSlug" : "elixir" ,
"code" : "defmodule Solution do\n @spec max_subarray_sum_circular(nums :: [integer]) :: integer\n def max_subarray_sum_circular(nums) do\n\n end\nend" ,
"__typename" : "CodeSnippetNode"
}
] ,
2022-05-02 23:44:12 +08:00
"stats" : "{\"totalAccepted\": \"39.2K\", \"totalSubmission\": \"106.5K\", \"totalAcceptedRaw\": 39249, \"totalSubmissionRaw\": 106512, \"acRate\": \"36.8%\"}" ,
2022-03-27 20:46:41 +08:00
"hints" : [
"For those of you who are familiar with the <b>Kadane's algorithm</b>, think in terms of that. For the newbies, Kadane's algorithm is used to finding the maximum sum subarray from a given array. This problem is a twist on that idea and it is advisable to read up on that algorithm first before starting this problem. Unless you already have a great algorithm brewing up in your mind in which case, go right ahead!" ,
"What is an alternate way of representing a circular array so that it appears to be a straight array?\r\nEssentially, there are two cases of this problem that we need to take care of. Let's look at the figure below to understand those two cases:\r\n\r\n<br>\r\n<img src=\"https://assets.leetcode.com/uploads/2019/10/20/circular_subarray_hint_1.png\" width=\"700\"/>" ,
"The first case can be handled by the good old Kadane's algorithm. However, is there a smarter way of going about handling the second case as well?"
] ,
"solution" : null ,
"status" : null ,
"sampleTestCase" : "[1,-2,3,-2]" ,
"metaData" : "{\n \"name\": \"maxSubarraySumCircular\",\n \"params\": [\n {\n \"name\": \"nums\",\n \"type\": \"integer[]\"\n }\n ],\n \"return\": {\n \"type\": \"integer\"\n }\n}" ,
"judgerAvailable" : true ,
"judgeType" : "large" ,
"mysqlSchemas" : [ ] ,
"enableRunCode" : true ,
"envInfo" : " { \ " c p p \ " : [ \ " C + + \ " , \ " < p > \ \ u 7 2 4 8 \ \ u 6 7 2 c \ \ u f f 1 a < c o d e > c l a n g 1 1 < \ \ / c o d e > \ \ u 9 1 c 7 \ \ u 7 5 2 8 \ \ u 6 7 0 0 \ \ u 6 5 b 0 C + + 1 7 \ \ u 6 8 0 7 \ \ u 5 1 c 6 \ \ u 3 0 0 2 < \ \ / p > \ \ r \ \ n \ \ r \ \ n < p > \ \ u 7 f 1 6 \ \ u 8 b d 1 \ \ u 6 5 f 6 \ \ u f f 0 c \ \ u 5 c 0 6 \ \ u 4 f 1 a \ \ u 9 1 c 7 \ \ u 7 5 2 8 < c o d e > - O 2 < \ \ / c o d e > \ \ u 7 e a 7 \ \ u 4 f 1 8 \ \ u 5 3 1 6 \ \ u 3 0 0 2 < a h r e f = \ \ \ " h t t p s : \ \ / \ \ / g i t h u b . c o m \ \ / g o o g l e \ \ / s a n i t i z e r s \ \ / w i k i \ \ / A d d r e s s S a n i t i z e r \ \ \ " t a r g e t = \ \ \ " _ b l a n k \ \ \ " > A d d r e s s S a n i t i z e r < \ \ / a > \ \ u 4 e 5 f \ \ u 8 8 a b \ \ u 5 f 0 0 \ \ u 5 4 2 f \ \ u 6 7 6 5 \ \ u 6 8 c 0 \ \ u 6 d 4 b < c o d e > o u t - o f - b o u n d s < \ \ / c o d e > \ \ u 5 4 8 c < c o d e > u s e - a f t e r - f r e e < \ \ / c o d e > \ \ u 9 5 1 9 \ \ u 8 b e f \ \ u 3 0 0 2 < \ \ / p > \ \ r \ \ n \ \ r \ \ n < p > \ \ u 4 e 3 a \ \ u 4 e 8 6 \ \ u 4 f 7 f \ \ u 7 5 2 8 \ \ u 6 5 b 9 \ \ u 4 f b f \ \ u f f 0 c \ \ u 5 9 2 7 \ \ u 9 0 e 8 \ \ u 5 2 0 6 \ \ u 6 8 0 7 \ \ u 5 1 c 6 \ \ u 5 e 9 3 \ \ u 7 6 8 4 \ \ u 5 9 3 4 \ \ u 6 5 8 7 \ \ u 4 e f 6 \ \ u 5 d f 2 \ \ u 7 e c f \ \ u 8 8 a b \ \ u 8 1 e a \ \ u 5 2 a 8 \ \ u 5 b f c \ \ u 5 1 6 5 \ \ u 3 0 0 2 < \ \ / p > \ " ] , \ " j a v a \ " : [ \ " J a v a \ " , \ " < p > \ \ u 7 2 4 8 \ \ u 6 7 2 c \ \ u f f 1 a < c o d e > O p e n J D K 1 7 < \ \ / c o d e > \ \ u 3 0 0 2 \ \ u 5 3 e f \ \ u 4 e e 5 \ \ u 4 f 7 f \ \ u 7 5 2 8 J a v a 8 \ \ u 7 6 8 4 \ \ u 7 2 7 9 \ \ u 6 0 2 7 \ \ u 4 f 8 b \ \ u 5 9 8 2 \ \ u f f 0 c l a m b d a e x p r e s s i o n s \ \ u 5 4 8 c s t r e a m A P I \ \ u 3 0 0 2 < \ \ / p > \ \ r \ \ n \ \ r \ \ n < p > \ \ u 4 e 3 a \ \ u 4 e 8 6 \ \ u 6 5 b 9 \ \ u 4 f b f \ \ u 8 d 7 7 \ \ u 8 9 c 1 \ \ u f f 0 c \ \ u 5 9 2 7 \ \ u 9 0 e 8 \ \ u 5 2 0 6 \ \ u 6 8 0 7 \ \ u 5 1 c 6 \ \ u 5 e 9 3 \ \ u 7 6 8 4 \ \ u 5 9 3 4 \ \ u 6 5 8 7 \ \ u 4 e f 6 \ \ u 5 d f 2 \ \ u 8 8 a b \ \ u 5 b f c \ \ u 5 1 6 5 \ \ u 3 0 0 2 < \ \ / p > \ \ r \ \ n \ \ r \ \ n < p > \ \ u 5 3 0 5 \ \ u 5 4 2 b P a i r \ \ u 7 c 7 b : h t t p s : \ \ / \ \ / d o c s . o r a c l e . c o m \ \ / j a v a s e \ \ / 8 \ \ / j a v a f x \ \ / a p i \ \ / j a v a f x \ \ / u t i l \ \ / P a i r . h t m l < \ \ / p > \ " ] , \ " p y t h o n \ " : [ \ " P y t h o n \ " , \ " < p > \ \ u 7 2 4 8 \ \ u 6 7 2 c \ \ u f f 1 a < c o d e > P y t h o n 2 . 7 . 1 2 < \ \ / c o d e > < \ \ / p > \ \ r \ \ n \ \ r \ \ n < p > \ \ u 4 e 3 a \ \ u 4 e 8 6 \ \ u 6 5 b 9 \ \ u 4 f b f \ \ u 8 d 7 7 \ \ u 8 9 c 1 \ \ u f f 0 c \ \ u 5 9 2 7 \ \ u 9 0 e 8 \ \ u 5 2 0 6 \ \ u 5 e 3 8 \ \ u 7 5 2 8 \ \ u 5 e 9 3 \ \ u 5 d f 2 \ \ u 7 e c f \ \ u 8 8 a b \ \ u 8 1 e a \ \ u 5 2 a 8 \ \ u 5 b f c \ \ u 5 1 6 5 \ \ u f f 0 c \ \ u 5 9 8 2 \ \ u f f 1 a < a h r e f = \ \ \ " h t t p s : \ \ / \ \ / d o c s . p y t h o n . o r g \ \ / 2 \ \ / l i b r a r y \ \ / a r r a y . h t m l \ \ \ " t a r g e t = \ \ \ " _ b l a n k \ \ \ " > a r r a y < \ \ / a > , < a h r e f = \ \ \ " h t t p s : \ \ / \ \ / d o c s . p y t h o n . o r g \ \ / 2 \ \ / l i b r a r y \ \ / b i s e c t . h t m l \ \ \ " t a r g e t = \ \ \ " _ b l a n k \ \ \ " > b i s e c t < \ \ / a > , < a h r e f = \ \ \ " h t t p s : \ \ / \ \ / d o c s . p y t h o n . o r g \ \ / 2 \ \ / l i b r a r y \ \ / c o l l e c t i o n s . h t m l \ \ \ " t a r g e t = \ \ \ " _ b l a n k \ \ \ " > c o l l e c t i o n s < \ \ / a > \ \ u 3 0 0 2 \ \ u 5 9 8 2 \ \ u 6 7 9 c \ \ u 6 0 a 8 \ \ u 9 7 0 0 \ \ u 8 9 8 1 \ \ u 4 f 7 f \ \ u 7 5 2 8 \ \ u 5 1 7 6 \ \ u 4 e d 6 \ \ u 5 e 9 3 \ \ u 5 1 f d \ \ u 6 5 7 0 \ \ u f f 0 c \ \ u 8 b f 7 \ \ u 8 1 e a \ \ u 8 8 4 c \ \ u 5 b f c \ \ u 5 1 6 5 \ \ u 3 0 0 2 < \ \ / p > \ \ r \ \ n \ \ r \ \ n < p > \ \ u 6 c e 8 \ \ u 6 1 0 f P y t h o n 2 . 7 < a h r e f = \ \ \ " h t t p s : \ \ / \ \ / w w w . p y t h o n . o r g \ \ / d e v \ \ / p e p s \ \ / p e p - 0 3 7 3 \ \ / \ \ \ " t a r g e t = \ \ \ " _ b l a n k \ \ \ " > \ \ u 5 c 0 6 \ \ u 5 7 2 8 2 0 2 0 \ \ u 5 e 7 4 \ \ u 5 4 0 e \ \ u 4 e 0 d \ \ u 5 1 8 d \ \ u 7 e f 4 \ \ u 6 2 a 4 < \ \ / a > \ \ u 3 0 0 2 \ \ u 5 9 8 2 \ \ u 6 0 f 3 \ \ u 4 f 7 f \ \ u 7 5 2 8 \ \ u 6 7 0 0 \ \ u 6 5 b 0 \ \ u 7 2 4 8 \ \ u 7 6 8 4 P y t h o n \ \ u f f 0 c \ \ u 8 b f 7 \ \ u 9 0 0 9 \ \ u 6 2 e 9 P y t h o n 3 \ \ u 3 0 0 2 < \ \ / p > \ " ] , \ " c \ " : [ \ " C \ " , \ " < p > \ \ u 7 2 4 8 \ \ u 6 7 2 c \ \ u f f 1 a < c o d e > G C C 8 . 2 < \ \ / c o d e > \ \ u f f 0 c \ \ u 9 1 c 7 \ \ u 7 5 2 8 G N U 9 9 \ \ u 6 8 0 7 \ \ u 5 1 c 6 \ \ u 3 0 0 2 < \ \ / p > \ \ r \ \ n \ \ r \ \ n < p > \ \ u 7 f 1 6 \ \ u 8 b d 1 \ \ u 6 5 f 6 \ \ u f f 0 c \ \ u 5 c 0 6 \ \ u 4 f 1 a \ \ u 9 1 c 7 \ \ u 7 5 2 8 < c o d e > - O 1 < \ \ / c o d e > \ \ u 7 e a 7 \ \ u 4 f 1 8 \ \ u 5 3 1 6 \ \ u 3 0 0 2 < a h r e f = \ \ \ " h t t p s : \ \ / \ \ / g i t h u b . c o m \ \ / g o o g l e \ \ / s a n i t i z e r s \ \ / w i k i \ \ / A d d r e s s S a n i t i z e r \ \ \ " t a r g e t = \ \ \ " _ b l a n k \ \ \ " > A d d r e s s S a n i t i z e r < \ \ / a > \ \ u 4 e 5 f \ \ u 8 8 a b \ \ u 5 f 0 0 \ \ u 5 4 2 f \ \ u 6 7 6 5 \ \ u 6 8 c 0 \ \ u 6 d 4 b < c o d e > o u t - o f - b o u n d s < \ \ / c o d e > \ \ u 5 4 8 c < c o d e > u s e - a f t e r - f r e e < \ \ / c o d e > \ \ u 9 5 1 9 \ \ u 8 b e f \ \ u 3 0 0 2 < \ \ / p > \ \ r \ \ n \ \ r \ \ n < p > \ \ u 4 e 3 a \ \ u 4 e 8 6 \ \ u 4 f 7 f \ \ u 7 5 2 8 \ \ u 6 5 b 9 \ \ u 4 f b f \ \ u f f 0 c \ \ u 5 9 2 7 \ \ u 9 0 e 8 \ \ u 5 2 0 6 \ \ u 6 8 0 7 \ \ u 5 1 c 6 \ \ u 5 e 9 3 \ \ u 7 6 8 4 \ \ u 5 9 3 4 \ \ u 6 5 8 7 \ \ u 4 e f 6 \ \ u 5 d f 2 \ \ u 7 e c f \ \ u 8 8 a b \ \ u 8 1 e a \ \ u 5 2 a 8 \ \ u 5 b f c \ \ u 5 1 6 5 \ \ u 3 0 0 2 < \ \ / p > \ \ r \ \ n \ \ r \ \ n < p > \ \ u 5 9 8 2 \ \ u 6 0 f 3 \ \ u 4 f 7 f \ \ u 7 5 2 8 \ \ u 5 4 c 8 \ \ u 5 e 0 c \ \ u 8 8 6 8 \ \ u 8 f d 0 \ \ u 7 b 9 7 , \ \ u 6 0 a 8 \ \ u 5 3 e f \ \ u 4 e e 5 \ \ u 4 f 7 f \ \ u 7 5 2 8 < a h r e f = \ \ \ " h t t p s : \ \ / \ \ / t r o y d h a n s o n . g i t h u b . i o \ \ / u t h a s h \ \ / \ \ \ " t a r g e t = \ \ \ " _ b l a n k \ \ \ " > u t h a s h < \ \ / a > \ \ u 3 0 0 2 \ \ \ " u t h a s h . h \ \ \ " \ \ u 5 d f 2 \ \ u 7 e c f \ \ u 9 e d 8 \ \ u 8 b a 4 \ \ u 8 8 a b \ \ u 5 b f c \ \ u 5 1 6 5 \ \ u 3 0 0 2 \ \ u 8 b f 7 \ \ u 7 7 0 b \ \ u 5 9 8 2 \ \ u 4 e 0 b \ \ u 7 9 3 a \ \ u 4 f 8 b : < \ \ / p > \ \ r \ \ n \ \ r \ \ n < p > < b > 1 . \ \ u 5 f 8 0 \ \ u 5 4 c 8 \ \ u 5 e 0 c \ \ u 8 8 6 8 \ \ u 4 e 2 d \ \ u 6 d f b \ \ u 5 2 a 0 \ \ u 4 e 0 0 \ \ u 4 e 2 a \ \ u 5 b f 9 \ \ u 8 c 6 1 \ \ u f f 1 a < \ \ / b > \ \ r \ \ n < p r e > \ \ r \ \ n s t r u c t h a s h _ e n t r y { \ \ r \ \ n i n t i d ; \ \ / * w e ' l l u s e t h i s f i e l d a s t h e k e y * \ \ / \ \ r \ \ n c h a r n a m e [ 1 0 ] ; \ \ r \ \ n U T _ h a s h _ h a n d l e h h ; \ \ / * m a k e s t h i s s t r u c t u r e h a s h a b l e * \ \ / \ \ r \ \ n } ; \ \ r \ \ n \ \ r \ \ n s t r u c t h a s h _ e n t r y * u s e r s = N U L L ; \ \ r \ \ n \ \ r \ \ n v o i d a d d _ u s e r ( s t r u c t h a s h _ e n t r y * s ) { \ \ r \ \ n H A S H _ A D D _ I N T ( u s e r s , i d , s ) ; \ \ r \ \ n } \ \ r \ \ n < \ \ / p r e > \ \ r \ \ n < \ \ / p > \ \ r \ \ n \ \ r \ \ n < p > < b > 2 . \ \ u 5728 \ \ u 54 c 8 \ \ u 5e0 c \ \ u 8868 \ \ u 4e2 d \ \ u 67e5 \ \ u 627 e \ \ u 4e00 \ \ u 4e2 a \ \ u 5 b f 9 \ \ u 8 c 61 \ \ u f f 1 a < \ \ / b > \ \ r \ \ n < p r e > \ \ r \ \ n s t r u c t h a s h _ e n t r y * f i n d _ u s e r ( i n t u s e r _ i d ) { \ \ r \ \ n s t r u c t h a s h _ e n t r y * s ; \ \ r \ \ n H A S H _ F I N D _ I N T ( u s e r s , & u s e r _ i d , s ) ; \ \ r \ \ n r e
"book" : null ,
"isSubscribed" : false ,
"isDailyQuestion" : false ,
"dailyRecordStatus" : null ,
"editorType" : "CKEDITOR" ,
"ugcQuestionId" : null ,
"style" : "LEETCODE" ,
"exampleTestcases" : "[1,-2,3,-2]\n[5,-3,5]\n[-3,-2,-3]" ,
"__typename" : "QuestionNode"
}
}
}