首页 > 其他分享 >[Typescript] 80. Medium - Construct Tuple

[Typescript] 80. Medium - Construct Tuple

时间:2022-10-30 16:44:21浏览次数:56  
标签:Typescript ConstructTuple _____________ Construct length Medium Expect 80 type

Construct a tuple with a given length.

For example

type result = ConstructTuple<2> // expect to be [unknown, unkonwn]

 

/* _____________ Your Code Here _____________ */

type ConstructTuple<L extends number, ACC extends unknown[] = []> = L extends 0
  ? []
  : ACC['length'] extends L 
    ? ACC
    : ConstructTuple<L, [...ACC, unknown]>;


/* _____________ Test Cases _____________ */
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>>,
]

 

标签:Typescript,ConstructTuple,_____________,Construct,length,Medium,Expect,80,type
From: https://www.cnblogs.com/Answer1215/p/16841593.html

相关文章

  • typescript文件导入svelte文件报错处理办法
    在typescripts文件中引入svelte文件时报错Cannotfindmodule'../components/HelloWorld.svelte'oritscorrespondingtypedeclarations.ts(2307)并且svelte已安装......
  • ARC080 VP 记录
    更好的阅读体验CSP前和grass8woc和black_trees一起VP了一场ARC,进行了一个思路的打开。发现远古场的ARC竟然是和ABC一起开始的,就跟Div.1+Div.2差不多。......
  • 【XSY3804】QQ数(莫比乌斯函数,容斥)
    题面题解明显地,这个QQ数可以用\(\mu\)表示,于是询问就变成了这样:\[\begin{aligned}&\sum_{i=1}^n\sum_{d|i}\left(1-\mu(d)^2\right)\\=&\sum_{d=1}^n\left\lfloo......
  • 0080-Go-数组
    环境Time2022-08-23Go1.19前言说明参考:https://gobyexample.com/arrays目标使用Go语言的数组。申明数组packagemainimport"fmt"funcmain(){v......
  • TypeScript第一天学习记录
    2022年10月29日19点17分1.TypeScript是什么1.1TypeScript是什么?TypeScript(简称:TS)是JavaScript的超集(JS有的TS都有)TypeScript=Type+Javascript(在JS基础之上,为J......
  • 8086存储器结构与IO组织
    8086支持一次性读写一个字节或字,8086有16条数据线,但是每个存储器里只能存储8个字节,所以8086不能一次性拿出存储器里的东西,所以,需要两个存储器,分为奇偶存储器。其中,D0-D7取......
  • 8086总线周期
    8086总线周期是由4个时钟周期组成(T1-T4,Tw不包括)分时复用理解:我们知道8086有20位地址总线和16位数据总线和一些控制总线,看图片,金色的就是引脚,CPU的功能就是从存储器内取出......
  • 803. 区间合并Acwing
    #include<iostream>#include<algorithm>#include<vector>usingnamespacestd;intn;intl,r;typedefpair<int,int>PII;vector<PII>ses;voidm(vector<PII>&segs......
  • 801. 二进制中1的个数Acwing
    #include<iostream>usingnamespacestd;constintN=1e5+10;intq[N];intlow(intx){returnx&(-x);}intmain(){intn;cin>>n;for(inti=0;......
  • 802. 区间和Acwing
    #include<iostream>#include<vector>#include<algorithm>usingnamespacestd;typedefpair<int,int>PII2;vector<int>q;vector<PII2>PII,PII1;constintN=3e5+10......