void scanInward(int[] values) {
int left = 0;
int right = values.length - 1;
while (left < right) {
use(values[left], values[right]);
if (moveLeft(values[left], values[right])) left++;
else right--;
}
}
def scan_inward(values: list[int]) -> None:
left, right = 0, len(values) - 1
while left < right:
use(values[left], values[right])
if move_left(values[left], values[right]):
left += 1
else:
right -= 1
def scanInward(values: Array[Int]): Unit =
var left = 0
var right = values.length - 1
while left < right do
use(values(left), values(right))
if moveLeft(values(left), values(right)) then left += 1
else right -= 1
void scanInward(const std::vector<int>& values) {
int left = 0, right = static_cast<int>(values.size()) - 1;
while (left < right) {
use(values[left], values[right]);
if (moveLeft(values[left], values[right])) left++;
else right--;
}
}