From dd9588b220c02b2a5a27baa8724f571acfbf1d6f Mon Sep 17 00:00:00 2001 From: thinkasany <480968828@qq.com> Date: Wed, 2 Aug 2023 00:46:06 +0800 Subject: [PATCH] feat: add ts solution to lc problem: No.0822 --- .../0822.Card Flipping Game/README.md | 30 +++++++++++++++++-- .../0822.Card Flipping Game/README_EN.md | 26 ++++++++++++++++ .../0822.Card Flipping Game/Solution.ts | 21 +++++++++++++ solution/config.py | 1 + 4 files changed, 76 insertions(+), 2 deletions(-) create mode 100644 solution/0800-0899/0822.Card Flipping Game/Solution.ts diff --git a/solution/0800-0899/0822.Card Flipping Game/README.md b/solution/0800-0899/0822.Card Flipping Game/README.md index 9035cb4abbf84..6d35b037cb570 100644 --- a/solution/0800-0899/0822.Card Flipping Game/README.md +++ b/solution/0800-0899/0822.Card Flipping Game/README.md @@ -22,8 +22,8 @@
 输入:fronts = [1,2,4,4,7], backs = [1,3,4,1,3]
-输出:2
-解释:假设我们翻转第二张卡片,那么在正面的数变成了 [1,3,4,4,7] , 背面的数变成了 [1,2,4,1,3]。
+输出:2
+解释:假设我们翻转第二张卡片,那么在正面的数变成了 [1,3,4,4,7] , 背面的数变成了 [1,2,4,1,3]。
 接着我们选择第二张卡片,因为现在该卡片的背面的数是 2,2 与任意卡片上正面的数都不同,所以 2 就是我们想要的数字。

 

@@ -146,6 +146,32 @@ func min(a, b int) int { } ``` +### **TypeScript** + +```ts +function flipgame(fronts: number[], backs: number[]): number { + const s: Set = new Set(); + const n = fronts.length; + for (let i = 0; i < n; ++i) { + if (fronts[i] === backs[i]) { + s.add(fronts[i]); + } + } + let ans = 9999; + for (const v of fronts) { + if (!s.has(v)) { + ans = Math.min(ans, v); + } + } + for (const v of backs) { + if (!s.has(v)) { + ans = Math.min(ans, v); + } + } + return ans % 9999; +}; +``` + ### **...** ``` diff --git a/solution/0800-0899/0822.Card Flipping Game/README_EN.md b/solution/0800-0899/0822.Card Flipping Game/README_EN.md index 6b175c56f1ea7..bd3e0629d5aac 100644 --- a/solution/0800-0899/0822.Card Flipping Game/README_EN.md +++ b/solution/0800-0899/0822.Card Flipping Game/README_EN.md @@ -140,6 +140,32 @@ func min(a, b int) int { } ``` +### **TypeScript** + +```ts +function flipgame(fronts: number[], backs: number[]): number { + const s: Set = new Set(); + const n = fronts.length; + for (let i = 0; i < n; ++i) { + if (fronts[i] === backs[i]) { + s.add(fronts[i]); + } + } + let ans = 9999; + for (const v of fronts) { + if (!s.has(v)) { + ans = Math.min(ans, v); + } + } + for (const v of backs) { + if (!s.has(v)) { + ans = Math.min(ans, v); + } + } + return ans % 9999; +}; +``` + ### **...** ``` diff --git a/solution/0800-0899/0822.Card Flipping Game/Solution.ts b/solution/0800-0899/0822.Card Flipping Game/Solution.ts new file mode 100644 index 0000000000000..d5a6b11539500 --- /dev/null +++ b/solution/0800-0899/0822.Card Flipping Game/Solution.ts @@ -0,0 +1,21 @@ +function flipgame(fronts: number[], backs: number[]): number { + const s: Set = new Set(); + const n = fronts.length; + for (let i = 0; i < n; ++i) { + if (fronts[i] === backs[i]) { + s.add(fronts[i]); + } + } + let ans = 9999; + for (const v of fronts) { + if (!s.has(v)) { + ans = Math.min(ans, v); + } + } + for (const v of backs) { + if (!s.has(v)) { + ans = Math.min(ans, v); + } + } + return ans % 9999; +}; \ No newline at end of file diff --git a/solution/config.py b/solution/config.py index 91cbf29c6f9db..48d2787f56d0c 100644 --- a/solution/config.py +++ b/solution/config.py @@ -21,6 +21,7 @@ 682, 753, 818, + 822, 824, 830, 860,