Type Challenges Judge

Construct Tuple

提出詳細

type A = { '0': []; '1': [unknown]; '2': [unknown, unknown]; '3': [unknown, unknown, unknown]; '4': [unknown, unknown, unknown, unknown]; '5': [unknown, unknown, unknown, unknown, unknown]; '6': [unknown, unknown, unknown, unknown, unknown, unknown]; '7': [unknown, unknown, unknown, unknown, unknown, unknown, unknown]; '8': [unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown]; '9': [unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown]; }; type Times10<B extends readonly unknown[]> = [ ...B, ...B, ...B, ...B, ...B, ...B, ...B, ...B, ...B, ...B ] type Build<S extends string, C extends readonly unknown[] = []> = S extends `${infer Head extends keyof A}${infer Rest}` ? Build<Rest, [...Times10<C>, ...A[Head]]> : C type ConstructTuple<L extends number> = Build<`${L}`>
提出日時2025-09-15 12:20:45
問題Construct Tuple
ユーザーbalckowl
ステータスWrong Answer
テストケース
import type { Equal, Expect } from '@type-challenges/utils' type cases = [ Expect<Equal<ConstructTuple<0>, []>>, Expect<Equal<ConstructTuple<2>, [unknown, unknown]>>, Expect<Equal<ConstructTuple<999>['length'], 999>>, // @ts-expect-error Expect<Equal<ConstructTuple<1000>['length'], 1000>>, ]