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,