Skip to main content
Back to problems
#2113
Medium Algorithms

Elements in array after removing and replacing elements

Array
70.5% acceptance
Mar 31, 2026
66
9

No description available.

Solution

Rust
Time O(n)
Space O(1)
LeetCode
solution.rs
impl Solution {
  pub fn element_in_nums(nums: Vec<i32>, queries: Vec<Vec<i32>>) -> Vec<i32> {
    let n = nums.len();
    let cycle = 2 * n;

    queries.iter().map(|q| {
      let t = (q[0] as usize) % cycle;
      let idx = q[1] as usize;

      if t < n {
        // removing phase: elements t..n are present
        let remaining = n - t;
        if idx < remaining {
          nums[t + idx]
        } else {
          -1
        }
      } else {
        // adding phase: elements 0..(t-n) are present
        let present = t - n;
        if idx < present {
          nums[idx]
        } else {
          -1
        }
      }
    }).collect()
  }
}