Welcome to Subscribe On Youtube
Formatted question description: https://leetcode.ca/all/2485.html
2485. Find the Pivot Integer
- Difficulty: Easy.
- Related Topics: Math, Prefix Sum.
- Similar Questions: Bulb Switcher.
Problem
Given a positive integer n
, find the pivot integer x
such that:
- The sum of all elements between
1
andx
inclusively equals the sum of all elements betweenx
andn
inclusively.
Return **the pivot integer **x
. If no such integer exists, return -1
. It is guaranteed that there will be at most one pivot index for the given input.
Example 1:
Input: n = 8
Output: 6
Explanation: 6 is the pivot integer since: 1 + 2 + 3 + 4 + 5 + 6 = 6 + 7 + 8 = 21.
Example 2:
Input: n = 1
Output: 1
Explanation: 1 is the pivot integer since: 1 = 1.
Example 3:
Input: n = 4
Output: -1
Explanation: It can be proved that no such integer exist.
Constraints:
1 <= n <= 1000
Solution (Java, C++, Python)
-
class Solution { public int pivotInteger(int n) { for (int x = 1; x < 1000; ++x) { if ((1 + x) * x == (x + n) * (n - x + 1)) { return x; } } return -1; } }
-
class Solution { public: int pivotInteger(int n) { for (int x = 1; x < 1000; ++x) { if ((1 + x) * x == (x + n) * (n - x + 1)) { return x; } } return -1; } };
-
class Solution: def pivotInteger(self, n: int) -> int: for x in range(1, 1000): if (1 + x) * x == (x + n) * (n - x + 1): return x return -1
-
func pivotInteger(n int) int { for x := 1; x < 1000; x++ { if (1+x)*x == (x+n)*(n-x+1) { return x } } return -1 }
-
function pivotInteger(n: number): number { const y = Math.floor((n * (n + 1)) / 2); const x = Math.floor(Math.sqrt(y)); return x * x === y ? x : -1; }
-
class Solution { /** * @param Integer $n * @return Integer */ function pivotInteger($n) { $sum = ($n * ($n + 1)) / 2; $pre = 0; for ($i = 1; $i <= $n; $i++) { if ($pre + $i === $sum - $pre) { return $i; } $pre += $i; } return -1; } }
-
impl Solution { pub fn pivot_integer(n: i32) -> i32 { let y = n * (n + 1) / 2; let x = (y as f64).sqrt() as i32; if x * x == y { return x; } -1 } }
Explain:
nope.
Complexity:
- Time complexity : O(n).
- Space complexity : O(n).