```ts
export function takeBack(values: number[], target: number): number {
  if (target === 0) return -1;

  let taken = 0;
  for (let i = values.length - 1; i >= 0 && target > 0; i--) {
    target -= values[i];
    taken++;
  }

  return target <= 0 ? taken : -1;
}
```