diff --git a/solution/1400-1499/1460.Make Two Arrays Equal by Reversing Subarrays/README.md b/solution/1400-1499/1460.Make Two Arrays Equal by Reversing Subarrays/README.md index ddfdbf498330a..7859034c9ab04 100644 --- a/solution/1400-1499/1460.Make Two Arrays Equal by Reversing Subarrays/README.md +++ b/solution/1400-1499/1460.Make Two Arrays Equal by Reversing Subarrays/README.md @@ -128,9 +128,19 @@ func canBeEqual(target []int, arr []int) bool { ```ts function canBeEqual(target: number[], arr: number[]): boolean { - target.sort((a, b) => a - b); - arr.sort((a, b) => a - b); - return target.join() === arr.join(); + target.sort(); + arr.sort(); + return target.every((x, i) => x === arr[i]); +} +``` + +#### JavaScript + +```js +function canBeEqual(target, arr) { + target.sort(); + arr.sort(); + return target.every((x, i) => x === arr[i]); } ``` @@ -273,6 +283,20 @@ function canBeEqual(target: number[], arr: number[]): boolean { } ``` +#### JavaScript + +```js +function canBeEqual(target, arr) { + const n = target.length; + const cnt = Array(1001).fill(0); + for (let i = 0; i < n; i++) { + cnt[target[i]]++; + cnt[arr[i]]--; + } + return cnt.every(v => !v); +} +``` + #### Rust ```rust diff --git a/solution/1400-1499/1460.Make Two Arrays Equal by Reversing Subarrays/README_EN.md b/solution/1400-1499/1460.Make Two Arrays Equal by Reversing Subarrays/README_EN.md index a04b2d8cade64..8e322a868508f 100644 --- a/solution/1400-1499/1460.Make Two Arrays Equal by Reversing Subarrays/README_EN.md +++ b/solution/1400-1499/1460.Make Two Arrays Equal by Reversing Subarrays/README_EN.md @@ -126,9 +126,19 @@ func canBeEqual(target []int, arr []int) bool { ```ts function canBeEqual(target: number[], arr: number[]): boolean { - target.sort((a, b) => a - b); - arr.sort((a, b) => a - b); - return target.join() === arr.join(); + target.sort(); + arr.sort(); + return target.every((x, i) => x === arr[i]); +} +``` + +#### JavaScript + +```js +function canBeEqual(target, arr) { + target.sort(); + arr.sort(); + return target.every((x, i) => x === arr[i]); } ``` @@ -271,6 +281,20 @@ function canBeEqual(target: number[], arr: number[]): boolean { } ``` +#### JavaScript + +```js +function canBeEqual(target, arr) { + const n = target.length; + const cnt = Array(1001).fill(0); + for (let i = 0; i < n; i++) { + cnt[target[i]]++; + cnt[arr[i]]--; + } + return cnt.every(v => !v); +} +``` + #### Rust ```rust diff --git a/solution/1400-1499/1460.Make Two Arrays Equal by Reversing Subarrays/Solution.js b/solution/1400-1499/1460.Make Two Arrays Equal by Reversing Subarrays/Solution.js new file mode 100644 index 0000000000000..341b4f8b171de --- /dev/null +++ b/solution/1400-1499/1460.Make Two Arrays Equal by Reversing Subarrays/Solution.js @@ -0,0 +1,5 @@ +function canBeEqual(target, arr) { + target.sort(); + arr.sort(); + return target.every((x, i) => x === arr[i]); +} diff --git a/solution/1400-1499/1460.Make Two Arrays Equal by Reversing Subarrays/Solution.ts b/solution/1400-1499/1460.Make Two Arrays Equal by Reversing Subarrays/Solution.ts index 00ae9d07efa5b..c1eaa17911766 100644 --- a/solution/1400-1499/1460.Make Two Arrays Equal by Reversing Subarrays/Solution.ts +++ b/solution/1400-1499/1460.Make Two Arrays Equal by Reversing Subarrays/Solution.ts @@ -1,5 +1,5 @@ function canBeEqual(target: number[], arr: number[]): boolean { - target.sort((a, b) => a - b); - arr.sort((a, b) => a - b); - return target.join() === arr.join(); + target.sort(); + arr.sort(); + return target.every((x, i) => x === arr[i]); } diff --git a/solution/1400-1499/1460.Make Two Arrays Equal by Reversing Subarrays/Solution2.js b/solution/1400-1499/1460.Make Two Arrays Equal by Reversing Subarrays/Solution2.js new file mode 100644 index 0000000000000..a4cc826b7b2bf --- /dev/null +++ b/solution/1400-1499/1460.Make Two Arrays Equal by Reversing Subarrays/Solution2.js @@ -0,0 +1,9 @@ +function canBeEqual(target, arr) { + const n = target.length; + const cnt = Array(1001).fill(0); + for (let i = 0; i < n; i++) { + cnt[target[i]]++; + cnt[arr[i]]--; + } + return cnt.every(v => !v); +}