```ts
export function rankOf(score: number, scores: number[]): number {
  let above = 0;
  for (const other of scores) {
    if (other > score) {
      above += 1;
    }
  }
  return above + 1;
}

/** Each score's rank, in the order the scores were given. */
export function rankAll(scores: number[]): number[] {
  const ordered = [...scores].sort((a, b) => b - a);
  const places: Record<number, number> = {};
  let rank = 1;
  for (let i = 0; i < ordered.length; i++) {
    if (!places[ordered[i]]) {
      places[ordered[i]] = rank;
    }
    rank += 1;
  }
  return scores.map((score) => places[score]);
}
```