diff --git a/.gitignore b/.gitignore index 0947dac..317fc2f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,8 @@ +prod/ .DS_Store + + # Logs logs *.log diff --git a/README.md b/README.md index 0060a5f..0a936b9 100644 --- a/README.md +++ b/README.md @@ -1,68 +1,97 @@ -# Leetcode Explained +# Leetcode Explained -![Downloads](https://img.shields.io/chrome-web-store/users/cofoinjfjcpgcjiinjhcpomcjoalijbe) -![version](https://img.shields.io/badge/version-2.0.2-blue) +![Downloads](https://img.shields.io/chrome-web-store/users/cofoinjfjcpgcjiinjhcpomcjoalijbe) +![Rating](https://img.shields.io/chrome-web-store/rating/cofoinjfjcpgcjiinjhcpomcjoalijbe) +![Version](https://img.shields.io/chrome-web-store/v/cofoinjfjcpgcjiinjhcpomcjoalijbe) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) -[![Badge](src/assets/images/badge.png)](https://chrome.google.com/webstore/detail/leetcode-explained/cofoinjfjcpgcjiinjhcpomcjoalijbe) +**Enhance Leetcode with AI-generated solutions, video explanations, and smart features.** +100% free and open source. -Adds video solutions, company tags, and GPT code analysis into each Leetcode problem +[Chrome](https://chrome.google.com/webstore/detail/leetcode-explained/cofoinjfjcpgcjiinjhcpomcjoalijbe) +[Firefox](https://addons.mozilla.org/en-US/firefox/addon/leetcode-explained/) -### 4 🔥 Features +--- -1️⃣ Adds the top 5 youtube solution videos into each problem +## 🚀 Key Features -2️⃣ Adds the top 5 companies that ask each problem +- **Code Solutions** + Ready-to-use solutions in Python, Java, C++, and JavaScript. -3️⃣ Reads your code and tells you the time and space complexity +- **Video Explanations** + Top 5 YouTube videos from popular coding channels. -4️⃣ Reads your code, fixes any bugs, and returns the corrected solution +- **Company Tags** + See which companies frequently ask each question. -### Installation +- **AI Assistant** + - Generate optimized solutions using problem description and examples + - Get time & space complexity analysis of your code + - Powered by Amazon's Nova Micro v1 (better model coming soon!) + - No API key required -1. Clone this repository -2. ``` npm install ``` -3. Open Google Chrome and navigate to chrome://extensions in the search bar. -4. Enable "Developer mode" (top right corner). -5. Click on "Load unpacked" and navigate to the extension directory, then click "Select". -6. Pin the extension. You should now see the extension icon next to the address bar. +- **Interview Mode** + Hide examples and difficulty to simulate real interviews. -Now you can test the latest dev version and contribute new features! +- **Problem Ratings** + - Numerical difficulty scores (1000–3000) for ~25% of problems + - Auto theme matching with Leetcode's light/dark mode -### Screenshots +--- -![Add Video](src/assets/images/screenshots/add-video.png) -![Code Complexity](src/assets/images/screenshots/get-complexity.png) -![Fix Code](src/assets/images/screenshots/fix-code.png) +## ⚙️ Installation (Developer Mode) -### Tutorial +1. Clone the repo + ```bash + git clone https://github.com/zubyj/leetcode-explained.git + cd leetcode-explained + npm install && tsc + ``` +2. Open Chrome and go to `chrome://extensions` +3. Enable "Developer mode" +4. Click "Load unpacked" and select the extension folder +5. Pin the extension to your toolbar -After enabling the extension, each question will automatically have the [top 5 solution videos](https://leetcode.com/problems/two-sum/solutions/) and [top 5 companies](https://leetcode.com/problems/two-sum/description/). If you pin the extension in the toolbar & login into ChatGPT in your browser, you can use the following 2 GPT buttons: +Now you're ready to test features and contribute! -- Get your code complexity using ChatGPT -- Fix bugs in your code and return the optimal solution +## 🧠 How to Use -Please ensure your Leetcode solution is open so the extension can read your code from the page. +1. Open any Leetcode problem +2. Go to the Description or Solutions tab to see: -### Contributing + - Code solutions + videos + - Company tags + - Problem ratings -We welcome contributions! Please see the [CONTRIBUTING.md](docs/CONTRIBUTING.md) for details on how to contribute to the project. +3. For AI features (requires pinned extension): + - Click "Analyze Code" for time/space complexity + - Click "Fix Code" for AI-generated solutions -### Code of Conduct +## 🤝 Contributing -We aim to foster an inclusive and respectful environment. Please read the [CODE_OF_CONDUCT.md](docs/CODE_OF_CONDUCT.md) for more information. +We welcome contributions! See [CONTRIBUTING.md](docs/CONTRIBUTING.md) for guidelines. -### License +## 🔐 Privacy -Leetcode Explained is [MIT licensed](docs/LICENSE). +- All data stored locally in your browser +- No personal data collection -### Support +## 📬 Support -If you encounter any issues or have any questions, please open an issue on this repository. +- Email: zubydevelops@gmail.com +- GitHub: github.com/zubyj/leetcode-explained -### Privacy +## 📄 License -This extension doesn't collect any personal data. All the code analysis and generation happens on your local machine. +Licensed under the MIT License. -If you like the extension, please leave a review in the Reviews tab. For questions or bugs, feel free to open an issue on Github. +## 📚 References + +[Problem Elo Ratings](https://github.com/zerotrac/leetcode_problem_rating) + +## 📸 Screenshots + +Video Explanations +Code Complexity +Fix Code diff --git a/build/PUBLISHING.md b/build/PUBLISHING.md deleted file mode 100644 index 923cc59..0000000 --- a/build/PUBLISHING.md +++ /dev/null @@ -1,24 +0,0 @@ -# Publishing the extension - -1. Make sure the version number is updated in manifest.json - -2. Remove dev files not used in production -``` -rm -r .git .gitignore docs build src/background src/content-script src/popup.ts src/settings.ts images/ -``` - -The only files that remain should be - -1. dist folder (Compiled TS files) -2. node modules (only the referenced node modules in GPT folder) -3. HTML/CSS/JS files in src directory -4. Icons for logos and buttons - -Everything else should be removed -- Hidden Git files (.git and .gitignore) -- All typescript files -- Screenshots from images folder -- package, tsconfig, webpack files - -Then zip the file into leetcode-explained.zip and submit. I like to use [Keka](https://www.keka.io/en/). - diff --git a/build/leetcode-explained-2.0.2.zip b/build/leetcode-explained-2.0.2.zip deleted file mode 100644 index e21c05c..0000000 Binary files a/build/leetcode-explained-2.0.2.zip and /dev/null differ diff --git a/build/leetcode-explained-2.0.3.zip b/build/leetcode-explained-2.0.3.zip deleted file mode 100644 index f3cfd9a..0000000 Binary files a/build/leetcode-explained-2.0.3.zip and /dev/null differ diff --git a/docs/CONTRIBUTING.md b/docs/CONTRIBUTING.md index 2e77acd..cf55bb7 100644 --- a/docs/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -29,6 +29,6 @@ If you encounter any issues or bugs in the project, please report them using the ## Contact -If you have any questions or need help with your contributions, please email me at zjdev@gmail.com. +If you have any questions or need help with your contributions, please email me at zubydevelops@gmail.com. Thank you for your contributions! diff --git a/manifest.json b/manifest.json index 19bec77..5d04f6c 100644 --- a/manifest.json +++ b/manifest.json @@ -1,8 +1,8 @@ { "manifest_version": 3, "name": "Leetcode Explained", - "version": "2.0.4", - "description": "Adds video solutions, company tags, GPT code analysis and more.", + "version": "2.2.4", + "description": "Enhances Leetcode problems with solution code, video explanations, and GPT code analysis.", "icons": { "16": "src/assets/images/logo/icon-16.png", "32": "src/assets/images/logo/icon-32.png", @@ -17,7 +17,7 @@ "tabs" ], "host_permissions": [ - "https://chat.openai.com/api/auth/session" + "https://api.leetcodeapp.com/*" ], "background": { "service_worker": "dist/background/background.js", @@ -26,13 +26,28 @@ "content_scripts": [ { "js": [ - "dist/content-script/get-gpt-access-token.js", "dist/content-script/get-user-code.js", "dist/content-script/update-solutions-tab.js", - "dist/content-script/update-description-tab.js" + "dist/content-script/update-description-tab.js", + "dist/content-script/common.js" ], "matches": [ "https://leetcode.com/problems/*" + ], + "run_at": "document_end" + } + ], + "web_accessible_resources": [ + { + "resources": [ + "src/assets/images/copy-icon.png", + "src/assets/images/check-icon.png", + "src/assets/images/languages/*", + "src/popup/theme-handler.js", + "src/popup/transition-handler.js" + ], + "matches": [ + "" ] } ] diff --git a/package-lock.json b/package-lock.json index 5523c5f..2380b10 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,3574 +1,652 @@ { "name": "leetcode-explained", - "version": "2.0.4", + "version": "2.0.5", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "leetcode-explained", - "version": "2.0.4", + "version": "2.0.5", "license": "ISC", "dependencies": { - "eventsource-parser": "^1.0.0", - "lodash-es": "^4.17.21" + "@types/chrome": "^0.0.313", + "typescript": "^5.8.2" }, "devDependencies": { - "@babel/core": "^7.21.8", - "@babel/preset-env": "^7.21.5", - "@types/chrome": "^0.0.234", - "@types/lodash": "^4.14.194", "@typescript-eslint/eslint-plugin": "^5.59.6", "@typescript-eslint/parser": "^5.59.6", - "babel-loader": "^9.1.2", "eslint": "^8.41.0", - "eslint-config-google": "^0.14.0", - "eslint-config-standard-with-typescript": "^34.0.1", - "eslint-plugin-import": "^2.27.5", - "eslint-plugin-n": "^15.7.0", - "eslint-plugin-promise": "^6.1.1", - "typescript": "^5.0.4", - "webpack": "^5.83.1", - "webpack-cli": "^5.1.1" + "eslint-config-google": "^0.14.0" } }, - "node_modules/@ampproject/remapping": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", - "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "node_modules/@eslint-community/eslint-utils": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.5.1.tgz", + "integrity": "sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w==", "dev": true, "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" + "eslint-visitor-keys": "^3.4.3" }, "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", - "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.18.6" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, - "engines": { - "node": ">=6.9.0" + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" } }, - "node_modules/@babel/compat-data": { - "version": "7.21.7", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.7.tgz", - "integrity": "sha512-KYMqFYTaenzMK4yUtf4EW9wc4N9ef80FsbMtkwool5zpwl4YrT1SdWYSTRcT94KO4hannogdS+LxY7L+arP3gA==", + "node_modules/@eslint-community/regexpp": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", "dev": true, "engines": { - "node": ">=6.9.0" + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, - "node_modules/@babel/core": { - "version": "7.21.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.8.tgz", - "integrity": "sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==", + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "dev": true, "dependencies": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.5", - "@babel/helper-compilation-targets": "^7.21.5", - "@babel/helper-module-transforms": "^7.21.5", - "@babel/helpers": "^7.21.5", - "@babel/parser": "^7.21.8", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.0" + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" }, "engines": { - "node": ">=6.9.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" + "url": "https://opencollective.com/eslint" } }, - "node_modules/@babel/core/node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, - "bin": { - "json5": "lib/cli.js" + "dependencies": { + "type-fest": "^0.20.2" }, "engines": { - "node": ">=6" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/core/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "node_modules/@eslint/js": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", + "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "node_modules/@babel/generator": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.5.tgz", - "integrity": "sha512-SrKK/sRv8GesIW1bDagf9cCG38IOMYZusoe1dfg0D8aiUe3Amvoj1QtjTPAWcfrZFvIwlleLb0gxzQidL9w14w==", + "node_modules/@humanwhocodes/config-array": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", + "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", + "deprecated": "Use @eslint/config-array instead", "dev": true, "dependencies": { - "@babel/types": "^7.21.5", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" + "@humanwhocodes/object-schema": "^2.0.3", + "debug": "^4.3.1", + "minimatch": "^3.0.5" }, "engines": { - "node": ">=6.9.0" + "node": ">=10.10.0" } }, - "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" - }, "engines": { - "node": ">=6.9.0" + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" } }, - "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.21.5.tgz", - "integrity": "sha512-uNrjKztPLkUk7bpCNC0jEKDJzzkvel/W+HguzbN8krA+LPfC1CEobJEvAvGka2A/M+ViOqXdcRL0GqPUJSjx9g==", + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", + "dev": true + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", "dev": true, "dependencies": { - "@babel/types": "^7.21.5" + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" }, "engines": { - "node": ">=6.9.0" + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" } }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.5.tgz", - "integrity": "sha512-1RkbFGUKex4lvsB9yhIfWltJM5cZKUftB2eNajaDv3dCMEp49iBG0K14uH8NnX9IPux2+mK7JGEOB0jn48/J6w==", + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.21.5", - "@babel/helper-validator-option": "^7.21.0", - "browserslist": "^4.21.3", - "lru-cache": "^5.1.1", - "semver": "^6.3.0" + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "node": ">= 8" } }, - "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, + "node_modules/@types/chrome": { + "version": "0.0.313", + "resolved": "https://registry.npmjs.org/@types/chrome/-/chrome-0.0.313.tgz", + "integrity": "sha512-9R5T7gTaYZhkxlu+Ho4wk9FL+y/werWQY2yjGWSqCuiTsqS7nL/BE5UMTP6rU7J+oIG2FRKqrEycHhJATeltVA==", "dependencies": { - "yallist": "^3.0.2" + "@types/filesystem": "*", + "@types/har-format": "*" } }, - "node_modules/@babel/helper-compilation-targets/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" + "node_modules/@types/filesystem": { + "version": "0.0.36", + "resolved": "https://registry.npmjs.org/@types/filesystem/-/filesystem-0.0.36.tgz", + "integrity": "sha512-vPDXOZuannb9FZdxgHnqSwAG/jvdGM8Wq+6N4D/d80z+D4HWH+bItqsZaVRQykAn6WEVeEkLm2oQigyHtgb0RA==", + "dependencies": { + "@types/filewriter": "*" } }, - "node_modules/@babel/helper-compilation-targets/node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "node_modules/@types/filewriter": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/@types/filewriter/-/filewriter-0.0.33.tgz", + "integrity": "sha512-xFU8ZXTw4gd358lb2jw25nxY9QAgqn2+bKKjKOYfNCzN4DKCFetK7sPtrlpg66Ywe3vWY9FNxprZawAh9wfJ3g==" + }, + "node_modules/@types/har-format": { + "version": "1.2.16", + "resolved": "https://registry.npmjs.org/@types/har-format/-/har-format-1.2.16.tgz", + "integrity": "sha512-fluxdy7ryD3MV6h8pTfTYpy/xQzCFC7m89nOH9y94cNqJ1mDIDPut7MnRHI3F6qRmh/cT2fUjG1MLdCNb4hE9A==" + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "node_modules/@types/semver": { + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.7.0.tgz", + "integrity": "sha512-k107IF4+Xr7UHjwDc7Cfd6PRQfbdkiRabXGRjo07b4WyPahFBZCZ1sE+BNxYIJPPg73UkfOsVOLwqVc/6ETrIA==", "dev": true }, - "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.21.8", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.8.tgz", - "integrity": "sha512-+THiN8MqiH2AczyuZrnrKL6cAxFRRQDKW9h1YkBvbgKmAm6mwiacig1qT73DHIWMGo40GRnsEfN3LA+E6NtmSw==", + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz", + "integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==", "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.21.5", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-member-expression-to-functions": "^7.21.5", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.21.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/helper-split-export-declaration": "^7.18.6", - "semver": "^6.3.0" + "@eslint-community/regexpp": "^4.4.0", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/type-utils": "5.62.0", + "@typescript-eslint/utils": "5.62.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" }, "engines": { - "node": ">=6.9.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@babel/core": "^7.0.0" + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, "bin": { "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.21.8", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.8.tgz", - "integrity": "sha512-zGuSdedkFtsFHGbexAvNuipg1hbtitDLo2XE8/uf6Y9sOQV1xsYX/2pNbtedp/X0eU1pIt+kGvaqHCowkRbS5g==", + "node_modules/@typescript-eslint/parser": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz", + "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==", "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.3.1", - "semver": "^6.3.0" + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "debug": "^4.3.4" }, "engines": { - "node": ">=6.9.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", - "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", - "dev": true, - "dependencies": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@babel/core": "^7.4.0-0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.21.5.tgz", - "integrity": "sha512-IYl4gZ3ETsWocUWgsFZLM5i1BYx9SoemminVEXadgLBa9TdeorzgLKm8wWLA6J1N/kT3Kch8XIk1laNzYoHKvQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", - "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", - "dev": true, - "dependencies": { - "@babel/template": "^7.20.7", - "@babel/types": "^7.21.0" + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" }, - "engines": { - "node": ">=6.9.0" + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", + "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", "dev": true, "dependencies": { - "@babel/types": "^7.18.6" + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0" }, "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.5.tgz", - "integrity": "sha512-nIcGfgwpH2u4n9GG1HpStW5Ogx7x7ekiFHbjjFRKXbn5zUvqO9ZgotCO4x1aNbKn/x/xOUaXEhyNHCwtFCpxWg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.21.5" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, - "engines": { - "node": ">=6.9.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@babel/helper-module-imports": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz", - "integrity": "sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==", + "node_modules/@typescript-eslint/type-utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz", + "integrity": "sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==", "dev": true, "dependencies": { - "@babel/types": "^7.21.4" + "@typescript-eslint/typescript-estree": "5.62.0", + "@typescript-eslint/utils": "5.62.0", + "debug": "^4.3.4", + "tsutils": "^3.21.0" }, "engines": { - "node": ">=6.9.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.5.tgz", - "integrity": "sha512-bI2Z9zBGY2q5yMHoBvJ2a9iX3ZOAzJPm7Q8Yz6YeoUjU/Cvhmi2G4QyTNyPBqqXSgTjUxRg3L0xV45HvkNWWBw==", + "node_modules/@typescript-eslint/types": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", + "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.21.5", - "@babel/helper-module-imports": "^7.21.4", - "@babel/helper-simple-access": "^7.21.5", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5" - }, "engines": { - "node": ">=6.9.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", - "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", + "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", "dev": true, "dependencies": { - "@babel/types": "^7.18.6" + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" }, "engines": { - "node": ">=6.9.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.21.5.tgz", - "integrity": "sha512-0WDaIlXKOX/3KfBK/dwP1oQGiPh6rjMkT7HIRv7i5RR2VUMwrx5ZL0dwBkKx7+SW1zwNdgjHd34IMk5ZjTeHVg==", + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, + "bin": { + "semver": "bin/semver.js" + }, "engines": { - "node": ">=6.9.0" + "node": ">=10" } }, - "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", - "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", + "node_modules/@typescript-eslint/utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", + "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" + "@eslint-community/eslint-utils": "^4.2.0", + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "eslint-scope": "^5.1.1", + "semver": "^7.3.7" }, "engines": { - "node": ">=6.9.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@babel/core": "^7.0.0" + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.21.5.tgz", - "integrity": "sha512-/y7vBgsr9Idu4M6MprbOVUfH3vs7tsIfnVWv/Ml2xgwvyH6LTngdfbf5AdsKwkJy4zgy1X/kuNrEKvhhK28Yrg==", + "node_modules/@typescript-eslint/utils/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.21.5", - "@babel/helper-member-expression-to-functions": "^7.21.5", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5" + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=6.9.0" + "node": ">=10" } }, - "node_modules/@babel/helper-simple-access": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz", - "integrity": "sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==", + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", + "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", "dev": true, "dependencies": { - "@babel/types": "^7.21.5" + "@typescript-eslint/types": "5.62.0", + "eslint-visitor-keys": "^3.3.0" }, "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", - "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.20.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, - "engines": { - "node": ">=6.9.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "node_modules/@ungap/structured-clone": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", + "dev": true + }, + "node_modules/acorn": { + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", + "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", "dev": true, - "dependencies": { - "@babel/types": "^7.18.6" + "bin": { + "acorn": "bin/acorn" }, "engines": { - "node": ">=6.9.0" + "node": ">=0.4.0" } }, - "node_modules/@babel/helper-string-parser": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz", - "integrity": "sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==", + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", - "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-wrap-function": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz", - "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==", - "dev": true, - "dependencies": { - "@babel/helper-function-name": "^7.19.0", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.5.tgz", - "integrity": "sha512-BSY+JSlHxOmGsPTydUkPf1MdMQ3M81x5xGCOVgWM3G8XH77sJ292Y2oqcp0CbbgxhqBuI46iUz1tT7hqP7EfgA==", - "dev": true, - "dependencies": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.21.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.8.tgz", - "integrity": "sha512-6zavDGdzG3gUqAdWvlLFfk+36RilI+Pwyuuh7HItyeScCWP3k6i8vKclAQ0bM/0y/Kz/xiwvxhMv9MgTJP5gmA==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", - "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.20.7.tgz", - "integrity": "sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-proposal-optional-chaining": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.13.0" - } - }, - "node_modules/@babel/plugin-proposal-async-generator-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", - "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9", - "@babel/plugin-syntax-async-generators": "^7.8.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", - "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-static-block": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz", - "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.12.0" - } - }, - "node_modules/@babel/plugin-proposal-dynamic-import": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", - "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-export-namespace-from": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", - "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/@babel/plugin-proposal-json-strings": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", - "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", - "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=8" } }, - "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", - "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=6.9.0" + "node": ">=8" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@babel/plugin-proposal-numeric-separator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", - "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true }, - "node_modules/@babel/plugin-proposal-object-rest-spread": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", - "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", "dev": true, - "dependencies": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.20.7" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=8" } }, - "node_modules/@babel/plugin-proposal-optional-catch-binding": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", - "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true }, - "node_modules/@babel/plugin-proposal-optional-chaining": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz", - "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/@babel/plugin-proposal-private-methods": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", - "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "fill-range": "^7.1.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=8" } }, - "node_modules/@babel/plugin-proposal-private-property-in-object": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz", - "integrity": "sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==", + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-create-class-features-plugin": "^7.21.0", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=6" } }, - "node_modules/@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" + "node": ">=10" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "color-name": "~1.1.4" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=7.0.0" } }, - "node_modules/@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true }, - "node_modules/@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true }, - "node_modules/@babel/plugin-syntax-import-assertions": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", - "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.19.0" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.21.5.tgz", - "integrity": "sha512-wb1mhwGOCaXHDTcsRYMKF9e5bbMgqwxtqa2Y1ifH96dXJPwbuLX9qHy3clhrxVqgMz7nyNXs8VkxdH8UBcjKqA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.21.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz", - "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", - "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz", - "integrity": "sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-classes": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz", - "integrity": "sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-replace-supers": "^7.20.7", - "@babel/helper-split-export-declaration": "^7.18.6", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-classes/node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.21.5.tgz", - "integrity": "sha512-TR653Ki3pAwxBxUe8srfF3e4Pe3FTA46uaNHYyQwIoM4oWKSoOZiDNyHJ0oIoDIUPSRQbQG7jzgVBX3FPVne1Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.21.5", - "@babel/template": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.21.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.21.3.tgz", - "integrity": "sha512-bp6hwMFzuiE4HqYEyoGJ/V2LeIWn+hLVKc4pnj++E5XQptwhtcGmSayM029d/j2X1bPKGTlsyPwAubuU22KhMA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", - "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", - "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", - "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", - "dev": true, - "dependencies": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-for-of": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.5.tgz", - "integrity": "sha512-nYWpjKW/7j/I/mZkGVgHJXh4bA1sfdFnJoOXwJuj4m3Q2EraO/8ZyrkCau9P5tbHQk01RMSt6KYLCsW7730SXQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.21.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", - "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", - "dev": true, - "dependencies": { - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", - "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-amd": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz", - "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.5.tgz", - "integrity": "sha512-OVryBEgKUbtqMoB7eG2rs6UFexJi6Zj6FDXx+esBLPTCxCNxAY9o+8Di7IsUGJ+AVhp5ncK0fxWUBd0/1gPhrQ==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.21.5", - "@babel/helper-plugin-utils": "^7.21.5", - "@babel/helper-simple-access": "^7.21.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz", - "integrity": "sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==", - "dev": true, - "dependencies": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-identifier": "^7.19.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", - "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz", - "integrity": "sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.20.5", - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-transform-new-target": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", - "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-object-super": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", - "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-parameters": { - "version": "7.21.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.21.3.tgz", - "integrity": "sha512-Wxc+TvppQG9xWFYatvCGPvZ6+SIUxQ2ZdiBP+PHYMIjnPXD+uThCshaz4NZOnODAtBjjcVQQ/3OKs9LW28purQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", - "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.21.5.tgz", - "integrity": "sha512-ZoYBKDb6LyMi5yCsByQ5jmXsHAQDDYeexT1Szvlmui+lADvfSecr5Dxd/PkrTC3pAD182Fcju1VQkB4oCp9M+w==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.21.5", - "regenerator-transform": "^0.15.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-reserved-words": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", - "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", - "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-spread": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz", - "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", - "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-template-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", - "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", - "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.18.9" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-unicode-escapes": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.21.5.tgz", - "integrity": "sha512-LYm/gTOwZqsYohlvFUe/8Tujz75LqqVC2w+2qPHLR+WyWHGCZPN1KBpJCJn+4Bk4gOkQy/IXKIge6az5MqwlOg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.21.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-unicode-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", - "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-env": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.21.5.tgz", - "integrity": "sha512-wH00QnTTldTbf/IefEVyChtRdw5RJvODT/Vb4Vcxq1AZvtXj6T0YeX0cAcXhI6/BdGuiP3GcNIL4OQbI2DVNxg==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.21.5", - "@babel/helper-compilation-targets": "^7.21.5", - "@babel/helper-plugin-utils": "^7.21.5", - "@babel/helper-validator-option": "^7.21.0", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.20.7", - "@babel/plugin-proposal-async-generator-functions": "^7.20.7", - "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.21.0", - "@babel/plugin-proposal-dynamic-import": "^7.18.6", - "@babel/plugin-proposal-export-namespace-from": "^7.18.9", - "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.20.7", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", - "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.20.7", - "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.21.0", - "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.21.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.20.0", - "@babel/plugin-syntax-import-meta": "^7.10.4", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.21.5", - "@babel/plugin-transform-async-to-generator": "^7.20.7", - "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.21.0", - "@babel/plugin-transform-classes": "^7.21.0", - "@babel/plugin-transform-computed-properties": "^7.21.5", - "@babel/plugin-transform-destructuring": "^7.21.3", - "@babel/plugin-transform-dotall-regex": "^7.18.6", - "@babel/plugin-transform-duplicate-keys": "^7.18.9", - "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.21.5", - "@babel/plugin-transform-function-name": "^7.18.9", - "@babel/plugin-transform-literals": "^7.18.9", - "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.20.11", - "@babel/plugin-transform-modules-commonjs": "^7.21.5", - "@babel/plugin-transform-modules-systemjs": "^7.20.11", - "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.20.5", - "@babel/plugin-transform-new-target": "^7.18.6", - "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.21.3", - "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.21.5", - "@babel/plugin-transform-reserved-words": "^7.18.6", - "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.20.7", - "@babel/plugin-transform-sticky-regex": "^7.18.6", - "@babel/plugin-transform-template-literals": "^7.18.9", - "@babel/plugin-transform-typeof-symbol": "^7.18.9", - "@babel/plugin-transform-unicode-escapes": "^7.21.5", - "@babel/plugin-transform-unicode-regex": "^7.18.6", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.21.5", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "core-js-compat": "^3.25.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-env/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/regjsgen": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", - "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", - "dev": true - }, - "node_modules/@babel/runtime": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.5.tgz", - "integrity": "sha512-8jI69toZqqcsnqGGqwGS4Qb1VwLOEp4hz+CXPywcvjs60u3B4Pom/U/7rm4W8tMOYEB+E9wgD0mW1l3r8qlI9Q==", - "dev": true, - "dependencies": { - "regenerator-runtime": "^0.13.11" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.5.tgz", - "integrity": "sha512-AhQoI3YjWi6u/y/ntv7k48mcrCXmus0t79J9qPNlk/lAsFlCiJ047RmbfMOawySTHtywXhbXgpx/8nXMYd+oFw==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.5", - "@babel/helper-environment-visitor": "^7.21.5", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.21.5", - "@babel/types": "^7.21.5", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse/node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/types": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.5.tgz", - "integrity": "sha512-m4AfNvVF2mVC/F7fDEdH2El3HzUg9It/XsCxZiOTTA3m3qYfcSVSbTfM6Q9xG+hYDniZssYhlXKKUMD5m8tF4Q==", - "dev": true, - "dependencies": { - "@babel/helper-string-parser": "^7.21.5", - "@babel/helper-validator-identifier": "^7.19.1", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", - "dev": true, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" - } - }, - "node_modules/@eslint-community/regexpp": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.0.tgz", - "integrity": "sha512-vITaYzIcNmjn5tF5uxcZ/ft7/RXGrMUIS9HalWckEOF6ESiwXKoMzAQf2UW0aVd6rnOeExTJVd5hmWXucBKGXQ==", - "dev": true, - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.3.tgz", - "integrity": "sha512-+5gy6OQfk+xx3q0d6jGZZC3f3KzAkXc/IanVxd1is/VIIziRqqt3ongQz0FiTUXqTk0c7aDB3OaFuKnuSoJicQ==", - "dev": true, - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.5.2", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/js": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.41.0.tgz", - "integrity": "sha512-LxcyMGxwmTh2lY9FwHPGWOHmYFCZvbrFCBZL4FzSSsxsRPuhrYUg/49/0KDfW8tnIEaEHtfmn6+NPN+1DqaNmA==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", - "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", - "dev": true, - "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true, - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "dev": true - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/source-map": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.3.tgz", - "integrity": "sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.18", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", - "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@types/chrome": { - "version": "0.0.234", - "resolved": "https://registry.npmjs.org/@types/chrome/-/chrome-0.0.234.tgz", - "integrity": "sha512-4JofeJBUPFf8Qy9ZiOif5jp5V4tG/WaFVPyb11E6Zmvx1q5j+X7LR/zWmj3lhbliaFxTMY/51GjMdpZOiUWjqQ==", - "dev": true, - "dependencies": { - "@types/filesystem": "*", - "@types/har-format": "*" - } - }, - "node_modules/@types/eslint": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.37.0.tgz", - "integrity": "sha512-Piet7dG2JBuDIfohBngQ3rCt7MgO9xCO4xIMKxBThCq5PNRB91IjlJ10eJVwfoNtvTErmxLzwBZ7rHZtbOMmFQ==", - "dev": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "dev": true, - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "node_modules/@types/estree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.1.tgz", - "integrity": "sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==", - "dev": true - }, - "node_modules/@types/filesystem": { - "version": "0.0.32", - "resolved": "https://registry.npmjs.org/@types/filesystem/-/filesystem-0.0.32.tgz", - "integrity": "sha512-Yuf4jR5YYMR2DVgwuCiP11s0xuVRyPKmz8vo6HBY3CGdeMj8af93CFZX+T82+VD1+UqHOxTq31lO7MI7lepBtQ==", - "dev": true, - "dependencies": { - "@types/filewriter": "*" - } - }, - "node_modules/@types/filewriter": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/filewriter/-/filewriter-0.0.29.tgz", - "integrity": "sha512-BsPXH/irW0ht0Ji6iw/jJaK8Lj3FJemon2gvEqHKpCdDCeemHa+rI3WBGq5z7cDMZgoLjY40oninGxqk+8NzNQ==", - "dev": true - }, - "node_modules/@types/har-format": { - "version": "1.2.10", - "resolved": "https://registry.npmjs.org/@types/har-format/-/har-format-1.2.10.tgz", - "integrity": "sha512-o0J30wqycjF5miWDKYKKzzOU1ZTLuA42HZ4HE7/zqTOc/jTLdQ5NhYWvsRQo45Nfi1KHoRdNhteSI4BAxTF1Pg==", - "dev": true - }, - "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true - }, - "node_modules/@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", - "dev": true - }, - "node_modules/@types/lodash": { - "version": "4.14.194", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.194.tgz", - "integrity": "sha512-r22s9tAS7imvBt2lyHC9B8AGwWnXaYb1tY09oyLkXDs4vArpYJzw09nj8MLx5VfciBPGIb+ZwG0ssYnEPJxn/g==", - "dev": true - }, - "node_modules/@types/node": { - "version": "20.2.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.2.1.tgz", - "integrity": "sha512-DqJociPbZP1lbZ5SQPk4oag6W7AyaGMO6gSfRwq3PWl4PXTwJpRQJhDq4W0kzrg3w6tJ1SwlvGZ5uKFHY13LIg==", - "dev": true - }, - "node_modules/@types/semver": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.0.tgz", - "integrity": "sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==", - "dev": true - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.59.6", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.6.tgz", - "integrity": "sha512-sXtOgJNEuRU5RLwPUb1jxtToZbgvq3M6FPpY4QENxoOggK+UpTxUBpj6tD8+Qh2g46Pi9We87E+eHnUw8YcGsw==", - "dev": true, - "dependencies": { - "@eslint-community/regexpp": "^4.4.0", - "@typescript-eslint/scope-manager": "5.59.6", - "@typescript-eslint/type-utils": "5.59.6", - "@typescript-eslint/utils": "5.59.6", - "debug": "^4.3.4", - "grapheme-splitter": "^1.0.4", - "ignore": "^5.2.0", - "natural-compare-lite": "^1.4.0", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^5.0.0", - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/parser": { - "version": "5.59.6", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.59.6.tgz", - "integrity": "sha512-7pCa6al03Pv1yf/dUg/s1pXz/yGMUBAw5EeWqNTFiSueKvRNonze3hma3lhdsOrQcaOXhbk5gKu2Fludiho9VA==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "5.59.6", - "@typescript-eslint/types": "5.59.6", - "@typescript-eslint/typescript-estree": "5.59.6", - "debug": "^4.3.4" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "5.59.6", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.6.tgz", - "integrity": "sha512-gLbY3Le9Dxcb8KdpF0+SJr6EQ+hFGYFl6tVY8VxLPFDfUZC7BHFw+Vq7bM5lE9DwWPfx4vMWWTLGXgpc0mAYyQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.59.6", - "@typescript-eslint/visitor-keys": "5.59.6" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "5.59.6", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.59.6.tgz", - "integrity": "sha512-A4tms2Mp5yNvLDlySF+kAThV9VTBPCvGf0Rp8nl/eoDX9Okun8byTKoj3fJ52IJitjWOk0fKPNQhXEB++eNozQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/typescript-estree": "5.59.6", - "@typescript-eslint/utils": "5.59.6", - "debug": "^4.3.4", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/types": { - "version": "5.59.6", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.6.tgz", - "integrity": "sha512-tH5lBXZI7T2MOUgOWFdVNUILsI02shyQvfzG9EJkoONWugCG77NDDa1EeDGw7oJ5IvsTAAGVV8I3Tk2PNu9QfA==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.59.6", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.6.tgz", - "integrity": "sha512-vW6JP3lMAs/Tq4KjdI/RiHaaJSO7IUsbkz17it/Rl9Q+WkQ77EOuOnlbaU8kKfVIOJxMhnRiBG+olE7f3M16DA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.59.6", - "@typescript-eslint/visitor-keys": "5.59.6", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/utils": { - "version": "5.59.6", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.59.6.tgz", - "integrity": "sha512-vzaaD6EXbTS29cVH0JjXBdzMt6VBlv+hE31XktDRMX1j3462wZCJa7VzO2AxXEXcIl8GQqZPcOPuW/Z1tZVogg==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.59.6", - "@typescript-eslint/types": "5.59.6", - "@typescript-eslint/typescript-estree": "5.59.6", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.59.6", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.6.tgz", - "integrity": "sha512-zEfbFLzB9ETcEJ4HZEEsCR9HHeNku5/Qw1jSS5McYJv5BR+ftYXwFFAH5Al+xkGaZEqowMwl7uoJjQb1YSPF8Q==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.59.6", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@webassemblyjs/ast": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.6.tgz", - "integrity": "sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==", - "dev": true, - "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6" - } - }, - "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", - "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", - "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz", - "integrity": "sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", - "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", - "dev": true, - "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", - "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz", - "integrity": "sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6" - } - }, - "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", - "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", - "dev": true, - "dependencies": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "node_modules/@webassemblyjs/leb128": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", - "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", - "dev": true, - "dependencies": { - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/utf8": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", - "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", - "dev": true - }, - "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz", - "integrity": "sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-opt": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6", - "@webassemblyjs/wast-printer": "1.11.6" - } - }, - "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz", - "integrity": "sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" - } - }, - "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz", - "integrity": "sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6" - } - }, - "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz", - "integrity": "sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" - } - }, - "node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz", - "integrity": "sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webpack-cli/configtest": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.1.0.tgz", - "integrity": "sha512-K/vuv72vpfSEZoo5KIU0a2FsEoYdW0DUMtMpB5X3LlUwshetMZRZRxB7sCsVji/lFaSxtQQ3aM9O4eMolXkU9w==", - "dev": true, - "engines": { - "node": ">=14.15.0" - }, - "peerDependencies": { - "webpack": "5.x.x", - "webpack-cli": "5.x.x" - } - }, - "node_modules/@webpack-cli/info": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.1.tgz", - "integrity": "sha512-fE1UEWTwsAxRhrJNikE7v4EotYflkEhBL7EbajfkPlf6E37/2QshOy/D48Mw8G5XMFlQtS6YV42vtbG9zBpIQA==", - "dev": true, - "engines": { - "node": ">=14.15.0" - }, - "peerDependencies": { - "webpack": "5.x.x", - "webpack-cli": "5.x.x" - } - }, - "node_modules/@webpack-cli/serve": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.4.tgz", - "integrity": "sha512-0xRgjgDLdz6G7+vvDLlaRpFatJaJ69uTalZLRSMX5B3VUrDmXcrVA3+6fXXQgmYz7bY9AAgs348XQdmtLsK41A==", - "dev": true, - "engines": { - "node": ">=14.15.0" - }, - "peerDependencies": { - "webpack": "5.x.x", - "webpack-cli": "5.x.x" - }, - "peerDependenciesMeta": { - "webpack-dev-server": { - "optional": true - } - } - }, - "node_modules/@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "node_modules/@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true - }, - "node_modules/acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-import-assertions": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", - "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", - "dev": true, - "peerDependencies": { - "acorn": "^8" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dev": true, - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, - "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-formats/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", - "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-includes": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz", - "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "get-intrinsic": "^1.1.3", - "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/array.prototype.flat": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", - "integrity": "sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", - "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/babel-loader": { - "version": "9.1.2", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.1.2.tgz", - "integrity": "sha512-mN14niXW43tddohGl8HPu5yfQq70iUThvFL/4QzESA7GcZoC0eVOhvWdQ8+3UlSjaDE9MVtsW9mxDY07W7VpVA==", - "dev": true, - "dependencies": { - "find-cache-dir": "^3.3.2", - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 14.15.0" - }, - "peerDependencies": { - "@babel/core": "^7.12.0", - "webpack": ">=5" - } - }, - "node_modules/babel-loader/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/babel-loader/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/babel-loader/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/babel-loader/node_modules/schema-utils": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.1.tgz", - "integrity": "sha512-lELhBAAly9NowEsX0yZBlw9ahZG+sK/1RJ21EpzdYHKEs13Vku3LJ+MIPhh4sMs0oCCeufZQEQbMekiA4vuVIQ==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", - "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.3", - "semver": "^6.1.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", - "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", - "dev": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.3", - "core-js-compat": "^3.25.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", - "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", - "dev": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.21.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", - "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "node_modules/builtins": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", - "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", - "dev": true, - "dependencies": { - "semver": "^7.0.0" - } - }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001488", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001488.tgz", - "integrity": "sha512-NORIQuuL4xGpIy6iCCQGN4iFjlBXtfKWIenlUuyZJumLRIindLb7wXM+GO8erEhb7vXfcnf4BAg2PrSDN5TNLQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ] - }, - "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chalk/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/chalk/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "dev": true, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/colorette": { - "version": "2.0.20", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", - "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "dev": true - }, - "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "node_modules/convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", - "dev": true - }, - "node_modules/core-js-compat": { - "version": "3.30.2", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.30.2.tgz", - "integrity": "sha512-nriW1nuJjUgvkEjIot1Spwakz52V9YkYHZAQG6A1eCgC8AA1p0zngrQEP9R0+V6hji5XilWKG1Bd0YRppmGimA==", - "dev": true, - "dependencies": { - "browserslist": "^4.21.5" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "node_modules/define-properties": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", - "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", - "dev": true, - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/electron-to-chromium": { - "version": "1.4.402", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.402.tgz", - "integrity": "sha512-gWYvJSkohOiBE6ecVYXkrDgNaUjo47QEKK0kQzmWyhkH+yoYiG44bwuicTGNSIQRG3WDMsWVZJLRnJnLNkbWvA==", - "dev": true - }, - "node_modules/enhanced-resolve": { - "version": "5.14.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.14.0.tgz", - "integrity": "sha512-+DCows0XNwLDcUhbFJPdlQEVnT2zXlCv7hPxemTz86/O+B/hCQ+mb7ydkPKiflpVraqLPCAfu7lDy+hBXueojw==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/envinfo": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz", - "integrity": "sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==", - "dev": true, - "bin": { - "envinfo": "dist/cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/es-abstract": { - "version": "1.21.2", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.2.tgz", - "integrity": "sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==", - "dev": true, - "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.2.0", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.3", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.7", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.9" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-module-lexer": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.2.1.tgz", - "integrity": "sha512-9978wrXM50Y4rTMmW5kXIC09ZdXQZqkE4mxhwkd8VbzsGkXGPgV4zWuqQJgCEzYngdo2dYDa0l8xhX4fkSwJSg==", - "dev": true - }, - "node_modules/es-set-tostringtag": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", - "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-shim-unscopables": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", - "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - } - }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/eslint": { - "version": "8.41.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.41.0.tgz", - "integrity": "sha512-WQDQpzGBOP5IrXPo4Hc0814r4/v2rrIsB0rhT7jtunIalgg6gYXWhRMOejVO8yH21T/FGaxjmFjBMNqcIlmH1Q==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.0.3", - "@eslint/js": "8.41.0", - "@humanwhocodes/config-array": "^0.11.8", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.5.2", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", - "text-table": "^0.2.0" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-config-google": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.14.0.tgz", - "integrity": "sha512-WsbX4WbjuMvTdeVL6+J3rK1RGhCTqjsFjX7UMSMgZiyxxaNLkoJENbrGExzERFeoTpGw3F3FypTiWAP9ZXzkEw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - }, - "peerDependencies": { - "eslint": ">=5.16.0" - } - }, - "node_modules/eslint-config-standard": { - "version": "17.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-17.0.0.tgz", - "integrity": "sha512-/2ks1GKyqSOkH7JFvXJicu0iMpoojkwB+f5Du/1SC0PtBL+s8v30k9njRZ21pm2drKYm2342jFnGWzttxPmZVg==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "peerDependencies": { - "eslint": "^8.0.1", - "eslint-plugin-import": "^2.25.2", - "eslint-plugin-n": "^15.0.0", - "eslint-plugin-promise": "^6.0.0" - } - }, - "node_modules/eslint-config-standard-with-typescript": { - "version": "34.0.1", - "resolved": "https://registry.npmjs.org/eslint-config-standard-with-typescript/-/eslint-config-standard-with-typescript-34.0.1.tgz", - "integrity": "sha512-J7WvZeLtd0Vr9F+v4dZbqJCLD16cbIy4U+alJMq4MiXdpipdBM3U5NkXaGUjePc4sb1ZE01U9g6VuTBpHHz1fg==", - "dev": true, - "dependencies": { - "@typescript-eslint/parser": "^5.43.0", - "eslint-config-standard": "17.0.0" - }, - "peerDependencies": { - "@typescript-eslint/eslint-plugin": "^5.43.0", - "eslint": "^8.0.1", - "eslint-plugin-import": "^2.25.2", - "eslint-plugin-n": "^15.0.0", - "eslint-plugin-promise": "^6.0.0", - "typescript": "*" - } - }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.7.tgz", - "integrity": "sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA==", - "dev": true, - "dependencies": { - "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" - } - }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-module-utils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", - "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", - "dev": true, - "dependencies": { - "debug": "^3.2.7" - }, - "engines": { - "node": ">=4" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - } - } - }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-es": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-4.1.0.tgz", - "integrity": "sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ==", - "dev": true, - "dependencies": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" - }, - "engines": { - "node": ">=8.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=4.19.1" - } - }, - "node_modules/eslint-plugin-es/node_modules/eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^1.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, - "node_modules/eslint-plugin-es/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-import": { - "version": "2.27.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.27.5.tgz", - "integrity": "sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flat": "^1.3.1", - "array.prototype.flatmap": "^1.3.1", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.7", - "eslint-module-utils": "^2.7.4", - "has": "^1.0.3", - "is-core-module": "^2.11.0", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.values": "^1.1.6", - "resolve": "^1.22.1", - "semver": "^6.3.0", - "tsconfig-paths": "^3.14.1" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" - } - }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-import/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/eslint-plugin-n": { - "version": "15.7.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.7.0.tgz", - "integrity": "sha512-jDex9s7D/Qial8AGVIHq4W7NswpUD5DPDL2RH8Lzd9EloWUuvUkHfv4FRLMipH5q2UtyurorBkPeNi1wVWNh3Q==", - "dev": true, - "dependencies": { - "builtins": "^5.0.1", - "eslint-plugin-es": "^4.1.0", - "eslint-utils": "^3.0.0", - "ignore": "^5.1.1", - "is-core-module": "^2.11.0", - "minimatch": "^3.1.2", - "resolve": "^1.22.1", - "semver": "^7.3.8" - }, - "engines": { - "node": ">=12.22.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=7.0.0" - } - }, - "node_modules/eslint-plugin-promise": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-6.1.1.tgz", - "integrity": "sha512-tjqWDwVZQo7UIPMeDReOpUgHCmCiH+ePnVT+5zVapL0uuHnegBUs2smM13CzOs2Xb5+MHMRFTs9v24yjba4Oig==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - } - }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^2.0.0" - }, - "engines": { - "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=5" - } - }, - "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", - "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node": ">= 8" + } + }, + "node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "ms": "^2.1.3" }, "engines": { - "node": ">=8" + "node": ">=6.0" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "node_modules/eslint/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "path-type": "^4.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=8" } }, - "node_modules/eslint/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "esutils": "^2.0.2" }, "engines": { - "node": ">=7.0.0" + "node": ">=6.0.0" } }, - "node_modules/eslint/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/eslint/node_modules/escape-string-regexp": { + "node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", @@ -3580,14 +658,54 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.0.tgz", - "integrity": "sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==", + "node_modules/eslint": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", + "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", "dev": true, "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.1", + "@humanwhocodes/config-array": "^0.13.0", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -3596,95 +714,90 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "node_modules/eslint-config-google": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/eslint-config-google/-/eslint-config-google-0.14.0.tgz", + "integrity": "sha512-WsbX4WbjuMvTdeVL6+J3rK1RGhCTqjsFjX7UMSMgZiyxxaNLkoJENbrGExzERFeoTpGw3F3FypTiWAP9ZXzkEw==", "dev": true, "engines": { - "node": ">=4.0" + "node": ">=0.10.0" + }, + "peerDependencies": { + "eslint": ">=5.16.0" } }, - "node_modules/eslint/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8.0.0" } }, - "node_modules/eslint/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, - "dependencies": { - "p-locate": "^5.0.0" - }, "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, "dependencies": { - "yocto-queue": "^0.1.0" + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "node_modules/eslint/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, - "dependencies": { - "p-limit": "^3.0.2" - }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4.0" } }, - "node_modules/eslint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/eslint/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "type-fest": "^0.20.2" }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/espree": { - "version": "9.5.2", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.2.tgz", - "integrity": "sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==", + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dev": true, "dependencies": { - "acorn": "^8.8.0", + "acorn": "^8.9.0", "acorn-jsx": "^5.3.2", "eslint-visitor-keys": "^3.4.1" }, @@ -3696,9 +809,9 @@ } }, "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", "dev": true, "dependencies": { "estraverse": "^5.1.0" @@ -3755,23 +868,6 @@ "node": ">=0.10.0" } }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/eventsource-parser": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-1.0.0.tgz", - "integrity": "sha512-9jgfSCa3dmEme2ES3mPByGXfgZ87VbP97tng1G2nWwWx6bV2nYxm2AWCrbQjXToSe+yYlqaZNtxffR9IeQr95g==", - "engines": { - "node": ">=14.18" - } - }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -3779,16 +875,16 @@ "dev": true }, "node_modules/fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", "dev": true, "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", "glob-parent": "^5.1.2", "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "micromatch": "^4.0.8" }, "engines": { "node": ">=8.6.0" @@ -3818,19 +914,10 @@ "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true }, - "node_modules/fastest-levenshtein": { - "version": "1.0.16", - "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", - "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", - "dev": true, - "engines": { - "node": ">= 4.9.1" - } - }, "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", "dev": true, "dependencies": { "reusify": "^1.0.4" @@ -3849,9 +936,9 @@ } }, "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, "dependencies": { "to-regex-range": "^5.0.1" @@ -3860,43 +947,30 @@ "node": ">=8" } }, - "node_modules/find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "dev": true, - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" - } - }, "node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, "dependencies": { - "locate-path": "^5.0.0", + "locate-path": "^6.0.0", "path-exists": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", "dev": true, "dependencies": { - "flatted": "^3.1.0", + "flatted": "^3.2.9", + "keyv": "^4.5.3", "rimraf": "^3.0.2" }, "engines": { @@ -3904,103 +978,22 @@ } }, "node_modules/flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", "dev": true }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dev": true, - "dependencies": { - "is-callable": "^1.1.3" - } - }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", "dev": true }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "node_modules/function.prototype.name": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", - "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-intrinsic": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", - "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, "dependencies": { "fs.realpath": "^1.0.0", @@ -4026,43 +1019,7 @@ "is-glob": "^4.0.3" }, "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true - }, - "node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=10.13.0" } }, "node_modules/globby": { @@ -4085,57 +1042,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true - }, - "node_modules/grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", - "dev": true - }, "node_modules/graphemer": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", "dev": true }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -4145,70 +1057,19 @@ "node": ">=8" } }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true, "engines": { "node": ">= 4" } }, "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", "dev": true, "dependencies": { "parent-module": "^1.0.0", @@ -4221,25 +1082,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", - "dev": true, - "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", @@ -4253,6 +1095,7 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "dev": true, "dependencies": { "once": "^1.3.0", @@ -4265,110 +1108,6 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "dev": true }, - "node_modules/internal-slot": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", - "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.2.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/interpret": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-3.1.1.tgz", - "integrity": "sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==", - "dev": true, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, - "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-core-module": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", - "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", @@ -4390,18 +1129,6 @@ "node": ">=0.10.0" } }, - "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", @@ -4411,21 +1138,6 @@ "node": ">=0.12.0" } }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/is-path-inside": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", @@ -4435,142 +1147,12 @@ "node": ">=8" } }, - "node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typed-array": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", - "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", - "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, - "node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, "node_modules/js-yaml": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", @@ -4583,22 +1165,10 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", "dev": true }, "node_modules/json-schema-traverse": { @@ -4613,118 +1183,47 @@ "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true }, - "node_modules/json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", "dev": true, "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "engines": { - "node": ">=0.10.0" + "json-buffer": "3.0.1" } }, "node_modules/levn": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true, - "engines": { - "node": ">=6.11.5" - } - }, - "node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lodash-es": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" - }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", - "dev": true - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" }, "engines": { - "node": ">=10" + "node": ">= 0.8.0" } }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, "dependencies": { - "semver": "^6.0.0" + "p-locate": "^5.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/make-dir/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, "node_modules/merge2": { @@ -4737,39 +1236,18 @@ } }, "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "dev": true, "dependencies": { - "braces": "^3.0.2", + "braces": "^3.0.3", "picomatch": "^2.3.1" }, "engines": { "node": ">=8.6" } }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -4782,19 +1260,10 @@ "node": "*" } }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "dev": true }, "node_modules/natural-compare": { @@ -4809,71 +1278,6 @@ "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", "dev": true }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true - }, - "node_modules/node-releases": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.11.tgz", - "integrity": "sha512-+M0PwXeU80kRohZ3aT4J/OnR+l9/KD2nVLNNoRgFtnf+umQVFdGBAO2N8+nCnEi0xlh/Wk3zOGC+vNNx+uM79Q==", - "dev": true - }, - "node_modules/object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.values": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", - "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -4884,9 +1288,9 @@ } }, "node_modules/optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", "dev": true, "dependencies": { "deep-is": "^0.1.3", @@ -4894,46 +1298,40 @@ "levn": "^0.4.1", "prelude-ls": "^1.2.1", "type-check": "^0.4.0", - "word-wrap": "^1.2.3" + "word-wrap": "^1.2.5" }, "engines": { "node": ">= 0.8.0" } }, "node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, "dependencies": { - "p-try": "^2.0.0" + "yocto-queue": "^0.1.0" }, "engines": { - "node": ">=6" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, "dependencies": { - "p-limit": "^2.2.0" + "p-limit": "^3.0.2" }, "engines": { - "node": ">=8" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/parent-module": { @@ -4975,12 +1373,6 @@ "node": ">=8" } }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, "node_modules/path-type": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", @@ -4990,12 +1382,6 @@ "node": ">=8" } }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, "node_modules/picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", @@ -5008,18 +1394,6 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -5030,9 +1404,9 @@ } }, "node_modules/punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "dev": true, "engines": { "node": ">=6" @@ -5058,174 +1432,6 @@ } ] }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/rechoir": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.8.0.tgz", - "integrity": "sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==", - "dev": true, - "dependencies": { - "resolve": "^1.20.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true - }, - "node_modules/regenerate-unicode-properties": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", - "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", - "dev": true, - "dependencies": { - "regenerate": "^1.4.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", - "dev": true - }, - "node_modules/regenerator-transform": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", - "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.8.4" - } - }, - "node_modules/regexp.prototype.flags": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz", - "integrity": "sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "functions-have-names": "^1.2.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, - "node_modules/regexpu-core": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", - "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", - "dev": true, - "dependencies": { - "@babel/regjsgen": "^0.8.0", - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.1.0", - "regjsparser": "^0.9.1", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regjsparser": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", - "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", - "dev": true, - "dependencies": { - "jsesc": "~0.5.0" - }, - "bin": { - "regjsparser": "bin/parser" - } - }, - "node_modules/regjsparser/node_modules/jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - } - }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", - "dev": true, - "dependencies": { - "is-core-module": "^2.11.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", - "dev": true, - "dependencies": { - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/resolve-cwd/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/resolve-from": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", @@ -5236,9 +1442,9 @@ } }, "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", "dev": true, "engines": { "iojs": ">=1.0.0", @@ -5249,6 +1455,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, "dependencies": { "glob": "^7.1.3" @@ -5266,109 +1473,21 @@ "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", "dev": true, "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/schema-utils": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.2.tgz", - "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/semver": { - "version": "7.5.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz", - "integrity": "sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/serialize-javascript": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", - "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", - "dev": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "dependencies": { - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=8" + "queue-microtask": "^1.2.2" } }, "node_modules/shebang-command": { @@ -5392,20 +1511,6 @@ "node": ">=8" } }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", @@ -5415,70 +1520,6 @@ "node": ">=8" } }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/string.prototype.trim": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz", - "integrity": "sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", - "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", - "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -5491,15 +1532,6 @@ "node": ">=8" } }, - "node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/strip-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", @@ -5513,91 +1545,15 @@ } }, "node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { "has-flag": "^4.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/terser": { - "version": "5.17.4", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.17.4.tgz", - "integrity": "sha512-jcEKZw6UPrgugz/0Tuk/PVyLAPfMBJf5clnGueo45wTweoV8yh7Q7PEkhkJ5uuUbC7zAxEcG3tqNr1bstkQ8nw==", - "dev": true, - "dependencies": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/terser-webpack-plugin": { - "version": "5.3.9", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz", - "integrity": "sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.17", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.1", - "terser": "^5.16.8" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "uglify-js": { - "optional": true - } + "node": ">=8" } }, "node_modules/text-table": { @@ -5606,15 +1562,6 @@ "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -5627,18 +1574,6 @@ "node": ">=8.0" } }, - "node_modules/tsconfig-paths": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz", - "integrity": "sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==", - "dev": true, - "dependencies": { - "@types/json5": "^0.0.29", - "json5": "^1.0.2", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - }, "node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", @@ -5684,116 +1619,16 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/typescript": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz", - "integrity": "sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==", - "dev": true, + "version": "5.8.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.2.tgz", + "integrity": "sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" }, "engines": { - "node": ">=12.20" - } - }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "dev": true, - "dependencies": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-value-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", - "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-property-aliases-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", - "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" + "node": ">=14.17" } }, "node_modules/uri-js": { @@ -5805,142 +1640,6 @@ "punycode": "^2.1.0" } }, - "node_modules/watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dev": true, - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/webpack": { - "version": "5.83.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.83.1.tgz", - "integrity": "sha512-TNsG9jDScbNuB+Lb/3+vYolPplCS3bbEaJf+Bj0Gw4DhP3ioAflBb1flcRt9zsWITyvOhM96wMQNRWlSX52DgA==", - "dev": true, - "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.0", - "@webassemblyjs/ast": "^1.11.5", - "@webassemblyjs/wasm-edit": "^1.11.5", - "@webassemblyjs/wasm-parser": "^1.11.5", - "acorn": "^8.7.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.14.0", - "es-module-lexer": "^1.2.1", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.2", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.7", - "watchpack": "^2.4.0", - "webpack-sources": "^3.2.3" - }, - "bin": { - "webpack": "bin/webpack.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-cli": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.1.1.tgz", - "integrity": "sha512-OLJwVMoXnXYH2ncNGU8gxVpUtm3ybvdioiTvHgUyBuyMLKiVvWy+QObzBsMtp5pH7qQoEuWgeEUQ/sU3ZJFzAw==", - "dev": true, - "dependencies": { - "@discoveryjs/json-ext": "^0.5.0", - "@webpack-cli/configtest": "^2.1.0", - "@webpack-cli/info": "^2.0.1", - "@webpack-cli/serve": "^2.0.4", - "colorette": "^2.0.14", - "commander": "^10.0.1", - "cross-spawn": "^7.0.3", - "envinfo": "^7.7.3", - "fastest-levenshtein": "^1.0.12", - "import-local": "^3.0.2", - "interpret": "^3.1.1", - "rechoir": "^0.8.0", - "webpack-merge": "^5.7.3" - }, - "bin": { - "webpack-cli": "bin/cli.js" - }, - "engines": { - "node": ">=14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "5.x.x" - }, - "peerDependenciesMeta": { - "@webpack-cli/generators": { - "optional": true - }, - "webpack-bundle-analyzer": { - "optional": true - }, - "webpack-dev-server": { - "optional": true - } - } - }, - "node_modules/webpack-cli/node_modules/commander": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", - "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", - "dev": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/webpack-merge": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", - "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", - "dev": true, - "dependencies": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true, - "engines": { - "node": ">=10.13.0" - } - }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -5956,52 +1655,10 @@ "node": ">= 8" } }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dev": true, - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-typed-array": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", - "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", - "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/wildcard": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", - "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", - "dev": true - }, "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -6013,12 +1670,6 @@ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", "dev": true }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/package.json b/package.json index 95ebea0..a14539e 100644 --- a/package.json +++ b/package.json @@ -1,33 +1,21 @@ { "name": "leetcode-explained", - "version": "2.0.4", - "description": "Used to log into GPT-3 and return the token", + "version": "2.0.5", + "description": "NPM used to log into ChatGPT using session token", "main": "background.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, - "author": "Zohaib Javed", + "author": "Zuby Javed", "license": "ISC", "devDependencies": { - "@babel/core": "^7.21.8", - "@babel/preset-env": "^7.21.5", - "@types/chrome": "^0.0.234", - "@types/lodash": "^4.14.194", "@typescript-eslint/eslint-plugin": "^5.59.6", "@typescript-eslint/parser": "^5.59.6", - "babel-loader": "^9.1.2", "eslint": "^8.41.0", - "eslint-config-google": "^0.14.0", - "eslint-config-standard-with-typescript": "^34.0.1", - "eslint-plugin-import": "^2.27.5", - "eslint-plugin-n": "^15.7.0", - "eslint-plugin-promise": "^6.1.1", - "typescript": "^5.0.4", - "webpack": "^5.83.1", - "webpack-cli": "^5.1.1" + "eslint-config-google": "^0.14.0" }, "dependencies": { - "eventsource-parser": "^1.0.0", - "lodash-es": "^4.17.21" + "@types/chrome": "^0.0.313", + "typescript": "^5.8.2" } -} \ No newline at end of file +} diff --git a/src/.eslintignore b/src/.eslintignore new file mode 100644 index 0000000..926c41c --- /dev/null +++ b/src/.eslintignore @@ -0,0 +1 @@ +**/prism.js diff --git a/src/.eslintrc.json b/src/.eslintrc.json index d6ab595..3652aaa 100644 --- a/src/.eslintrc.json +++ b/src/.eslintrc.json @@ -21,6 +21,7 @@ "error", "always" ], + "space-before-function-paren": "off", "quotes": [ "error", "single" @@ -39,6 +40,12 @@ "code": 130 } ], + "brace-style": [ + "off" + ], + "arrow-parens": [ + "off" + ], "require-jsdoc": 0, "@typescript-eslint/explicit-module-boundary-types": "off" } diff --git a/src/assets/data/leetcode_solutions.json b/src/assets/data/problem_data.json similarity index 75% rename from src/assets/data/leetcode_solutions.json rename to src/assets/data/problem_data.json index f6530d9..1c96781 100644 --- a/src/assets/data/leetcode_solutions.json +++ b/src/assets/data/problem_data.json @@ -4,6 +4,8 @@ "title": "Two Sum", "id": 1, "frontend_id": 1, + "difficulty_lvl": 1, + "acceptance": 0.50389, "videos": [ { "embedded_url": "https://www.youtube.com/embed/KLlXCFG5TnA", @@ -29,50 +31,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 117 }, { "name": "Adobe", - "score": 5 + "score": 52 }, { "name": "Google", - "score": 4 + "score": 44 }, { "name": "Apple", - "score": 4 + "score": 40 }, { "name": "Microsoft", - "score": 4 - }, - { - "name": "Facebook", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 2 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Spotify", - "score": 1 - }, - { - "name": "Goldman Sachs", - "score": 1 + "score": 39 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Add Two Numbers", "id": 2, "frontend_id": 2, + "difficulty_lvl": 2, + "acceptance": 0.4095, "videos": [ { "embedded_url": "https://www.youtube.com/embed/wgFPrzTjm7s", @@ -98,50 +88,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 36 }, { "name": "Apple", - "score": 5 + "score": 19 }, { "name": "Facebook", - "score": 5 + "score": 19 }, { "name": "Microsoft", - "score": 5 + "score": 17 }, { "name": "Bloomberg", - "score": 4 - }, - { - "name": "Google", - "score": 3 - }, - { - "name": "Adobe", - "score": 3 - }, - { - "name": "Yahoo", - "score": 2 - }, - { - "name": "Oracle", - "score": 1 - }, - { - "name": "Uber", - "score": 1 + "score": 16 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Longest Substring Without Repeating Characters", "id": 3, "frontend_id": 3, + "difficulty_lvl": 2, + "acceptance": 0.33908, "videos": [ { "embedded_url": "https://www.youtube.com/embed/wiGpQwVHdE0", @@ -167,50 +145,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 49 }, { "name": "Microsoft", - "score": 6 + "score": 29 }, { "name": "Facebook", - "score": 5 + "score": 23 }, { "name": "Bloomberg", - "score": 5 + "score": 23 }, { "name": "Apple", - "score": 3 - }, - { - "name": "Google", - "score": 3 - }, - { - "name": "Spotify", - "score": 2 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "VMware", - "score": 1 + "score": 16 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Median of Two Sorted Arrays", "id": 4, "frontend_id": 4, + "difficulty_lvl": 3, + "acceptance": 0.37061, "videos": [ { "embedded_url": "https://www.youtube.com/embed/q6IEA26hvXc", @@ -236,50 +202,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 40 }, { "name": "Adobe", - "score": 5 + "score": 19 }, { "name": "Goldman Sachs", - "score": 5 + "score": 18 }, { "name": "Microsoft", - "score": 4 + "score": 15 }, { "name": "Apple", - "score": 4 - }, - { - "name": "Google", - "score": 4 - }, - { - "name": "Facebook", - "score": 2 - }, - { - "name": "ServiceNow", - "score": 2 - }, - { - "name": "Paypal", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 + "score": 15 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Longest Palindromic Substring", "id": 5, "frontend_id": 5, + "difficulty_lvl": 2, + "acceptance": 0.32595, "videos": [ { "embedded_url": "https://www.youtube.com/embed/XYQecbcd6_c", @@ -305,46 +259,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 35 }, { "name": "Microsoft", - "score": 5 + "score": 18 }, { "name": "Google", - "score": 3 + "score": 12 }, { "name": "Adobe", - "score": 3 + "score": 12 }, { "name": "Facebook", - "score": 2 - }, - { - "name": "Apple", - "score": 2 - }, - { - "name": "Oracle", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Goldman Sachs", - "score": 1 + "score": 7 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Zigzag Conversion", "id": 6, "frontend_id": 6, + "difficulty_lvl": 2, + "acceptance": 0.45552, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Q2Tw6gcVEwc", @@ -370,22 +316,28 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 100 }, { "name": "Adobe", - "score": 7 + "score": 66 }, { "name": "Paypal", "score": 1 } + ], + "languages": [ + "cpp", + "java" ] }, { "title": "Reverse Integer", "id": 7, "frontend_id": 7, + "difficulty_lvl": 2, + "acceptance": 0.27718, "videos": [ { "embedded_url": "https://www.youtube.com/embed/HAgLH58IgJQ", @@ -411,50 +363,38 @@ "companies": [ { "name": "Adobe", - "score": 10 + "score": 13 }, { "name": "Amazon", - "score": 8 + "score": 11 }, { "name": "Google", - "score": 4 + "score": 5 }, { "name": "Apple", - "score": 3 + "score": 4 }, { "name": "Facebook", - "score": 3 - }, - { - "name": "Microsoft", - "score": 1 - }, - { - "name": "Yahoo", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Visa", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "String to Integer (atoi)", "id": 8, "frontend_id": 8, + "difficulty_lvl": 2, + "acceptance": 0.167, "videos": [ { "embedded_url": "https://www.youtube.com/embed/FyTpsuWAoc8", @@ -476,12 +416,36 @@ "embedded_url": "https://www.youtube.com/embed/VYsSowFwZVU", "channel": "Leetcodes" } + ], + "companies": [ + { + "name": "Facebook", + "score": 32 + }, + { + "name": "Microsoft", + "score": 16 + }, + { + "name": "Amazon", + "score": 9 + }, + { + "name": "Google", + "score": 6 + }, + { + "name": "Bloomberg", + "score": 5 + } ] }, { "title": "Palindrome Number", "id": 9, "frontend_id": 9, + "difficulty_lvl": 1, + "acceptance": 0.54152, "videos": [ { "embedded_url": "https://www.youtube.com/embed/yubRKwixN-U", @@ -507,46 +471,38 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 11 }, { "name": "Facebook", - "score": 7 + "score": 8 }, { "name": "Amazon", - "score": 6 + "score": 7 }, { "name": "Bloomberg", - "score": 5 + "score": 6 }, { "name": "Adobe", - "score": 4 - }, - { - "name": "Apple", - "score": 2 - }, - { - "name": "Yahoo", - "score": 1 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Accenture", - "score": 1 + "score": 5 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Regular Expression Matching", "id": 10, "frontend_id": 10, + "difficulty_lvl": 3, + "acceptance": 0.27919, "videos": [ { "embedded_url": "https://www.youtube.com/embed/HAA8mgxlov8", @@ -572,46 +528,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 19 }, { "name": "Microsoft", - "score": 6 + "score": 11 }, { "name": "Google", - "score": 5 + "score": 9 }, { "name": "Amazon", - "score": 4 + "score": 8 }, { "name": "Nvidia", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 2 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Uber", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Container With Most Water", "id": 11, "frontend_id": 11, + "difficulty_lvl": 2, + "acceptance": 0.54052, "videos": [ { "embedded_url": "https://www.youtube.com/embed/UuiTKBwPgAo", @@ -637,46 +585,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 21 }, { "name": "Microsoft", - "score": 4 + "score": 9 }, { "name": "Adobe", - "score": 4 + "score": 9 }, { "name": "Facebook", - "score": 4 + "score": 8 }, { "name": "Google", - "score": 2 - }, - { - "name": "Apple", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 2 - }, - { - "name": "Swiggy", - "score": 2 - }, - { - "name": "Goldman Sachs", - "score": 1 + "score": 5 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Integer to Roman", "id": 12, "frontend_id": 12, + "difficulty_lvl": 2, + "acceptance": 0.62719, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ohBNdSJyLh8", @@ -698,42 +638,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 27 }, { "name": "Microsoft", - "score": 2 + "score": 5 }, { "name": "Bloomberg", - "score": 2 + "score": 5 }, { "name": "Apple", - "score": 1 + "score": 3 }, { "name": "Capital One", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "Google", - "score": 1 - }, - { - "name": "tiktok", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Roman to Integer", "id": 13, "frontend_id": 13, + "difficulty_lvl": 1, + "acceptance": 0.59034, "videos": [ { "embedded_url": "https://www.youtube.com/embed/3jdxYj3DD98", @@ -755,12 +691,42 @@ "embedded_url": "https://www.youtube.com/embed/k4KgVd5LQk8", "channel": "Carter MacLennan" } + ], + "companies": [ + { + "name": "Amazon", + "score": 27 + }, + { + "name": "Adobe", + "score": 16 + }, + { + "name": "Apple", + "score": 13 + }, + { + "name": "Google", + "score": 10 + }, + { + "name": "Bloomberg", + "score": 10 + } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Longest Common Prefix", "id": 14, "frontend_id": 14, + "difficulty_lvl": 1, + "acceptance": 0.41287, "videos": [ { "embedded_url": "https://www.youtube.com/embed/0sWShKIJoo4", @@ -786,50 +752,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 26 }, { "name": "Apple", - "score": 5 + "score": 14 }, { "name": "Google", - "score": 4 + "score": 12 }, { "name": "Adobe", - "score": 4 + "score": 11 }, { "name": "Amazon", - "score": 3 - }, - { - "name": "Microsoft", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 2 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Quora", - "score": 1 - }, - { - "name": "SAP", - "score": 1 + "score": 9 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "3Sum", "id": 15, "frontend_id": 15, + "difficulty_lvl": 2, + "acceptance": 0.33021, "videos": [ { "embedded_url": "https://www.youtube.com/embed/jzZsG8n2R9A", @@ -855,50 +809,37 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 44 }, { "name": "Facebook", - "score": 6 + "score": 28 }, { "name": "Microsoft", - "score": 4 + "score": 20 }, { "name": "Apple", - "score": 2 + "score": 10 }, { "name": "Adobe", - "score": 2 - }, - { - "name": "Google", - "score": 2 - }, - { - "name": "Walmart Global Tech", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Qualtrics", - "score": 1 + "score": 9 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "3Sum Closest", "id": 16, "frontend_id": 16, + "difficulty_lvl": 2, + "acceptance": 0.45537, "videos": [ { "embedded_url": "https://www.youtube.com/embed/qBr2hq4daWE", @@ -924,31 +865,23 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 25 }, { "name": "Amazon", - "score": 6 + "score": 15 }, { "name": "Adobe", - "score": 2 + "score": 4 }, { "name": "Apple", - "score": 1 + "score": 3 }, { "name": "Google", - "score": 1 - }, - { - "name": "Microsoft", - "score": 1 - }, - { - "name": "Goldman Sachs", - "score": 1 + "score": 3 } ] }, @@ -956,6 +889,8 @@ "title": "Letter Combinations of a Phone Number", "id": 17, "frontend_id": 17, + "difficulty_lvl": 2, + "acceptance": 0.58212, "videos": [ { "embedded_url": "https://www.youtube.com/embed/0snEunUacZY", @@ -981,46 +916,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 28 }, { "name": "Microsoft", - "score": 7 + "score": 20 }, { "name": "Facebook", - "score": 5 + "score": 14 }, { "name": "Uber", - "score": 3 + "score": 9 }, { "name": "Apple", - "score": 2 - }, - { - "name": "Google", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 2 - }, - { - "name": "Epic Systems", - "score": 1 - }, - { - "name": "Swiggy", - "score": 1 + "score": 7 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "4Sum", "id": 18, "frontend_id": 18, + "difficulty_lvl": 2, + "acceptance": 0.35762, "videos": [ { "embedded_url": "https://www.youtube.com/embed/EYeR-_1NRlQ", @@ -1042,46 +969,37 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 99 }, { "name": "Facebook", - "score": 8 + "score": 77 }, { "name": "Apple", - "score": 8 + "score": 75 }, { "name": "Microsoft", - "score": 6 + "score": 51 }, { "name": "Adobe", - "score": 3 - }, - { - "name": "Google", - "score": 1 - }, - { - "name": "Yahoo", - "score": 1 - }, - { - "name": "Infosys", - "score": 1 - }, - { - "name": "LinkedIn", - "score": 1 + "score": 24 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Remove Nth Node From End of List", "id": 19, "frontend_id": 19, + "difficulty_lvl": 2, + "acceptance": 0.42122, "videos": [ { "embedded_url": "https://www.youtube.com/embed/XVuQxVej6y8", @@ -1107,42 +1025,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 23 }, { "name": "Amazon", - "score": 4 + "score": 10 }, { "name": "Microsoft", - "score": 3 + "score": 6 }, { "name": "Google", - "score": 2 + "score": 5 }, { "name": "Bloomberg", - "score": 1 - }, - { - "name": "Walmart Global Tech", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Uber", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Valid Parentheses", "id": 20, "frontend_id": 20, + "difficulty_lvl": 1, + "acceptance": 0.40219, "videos": [ { "embedded_url": "https://www.youtube.com/embed/WTzjTskDFMg", @@ -1168,50 +1082,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 43 }, { "name": "LinkedIn", - "score": 8 + "score": 33 }, { "name": "Facebook", - "score": 5 + "score": 24 }, { "name": "Microsoft", - "score": 5 + "score": 22 }, { "name": "Bloomberg", - "score": 3 - }, - { - "name": "Spotify", - "score": 3 - }, - { - "name": "Apple", - "score": 2 - }, - { - "name": "Adobe", - "score": 2 - }, - { - "name": "Expedia", - "score": 1 - }, - { - "name": "Google", - "score": 1 + "score": 14 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Merge Two Sorted Lists", "id": 21, "frontend_id": 21, + "difficulty_lvl": 1, + "acceptance": 0.62999, "videos": [ { "embedded_url": "https://www.youtube.com/embed/XIdigk956u0", @@ -1237,50 +1139,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 20 }, { "name": "Microsoft", - "score": 6 + "score": 13 }, { "name": "Facebook", - "score": 6 + "score": 13 }, { "name": "Adobe", - "score": 6 + "score": 11 }, { "name": "Oracle", - "score": 2 - }, - { - "name": "Uber", - "score": 2 - }, - { - "name": "Google", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 2 - }, - { - "name": "Shopee", - "score": 2 - }, - { - "name": "Accenture", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Generate Parentheses", "id": 22, "frontend_id": 22, + "difficulty_lvl": 2, + "acceptance": 0.73147, "videos": [ { "embedded_url": "https://www.youtube.com/embed/s9fokUqJ76A", @@ -1306,50 +1196,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 16 }, { "name": "Amazon", - "score": 9 + "score": 15 }, { "name": "Microsoft", - "score": 8 + "score": 13 }, { "name": "Apple", - "score": 5 + "score": 9 }, { "name": "Adobe", - "score": 2 - }, - { - "name": "Google", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "C3 IoT", - "score": 1 - }, - { - "name": "Walmart Global Tech", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Merge k Sorted Lists", "id": 23, "frontend_id": 23, + "difficulty_lvl": 3, + "acceptance": 0.50579, "videos": [ { "embedded_url": "https://www.youtube.com/embed/q5a5OiGbT6Q", @@ -1375,50 +1253,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 59 }, { "name": "Amazon", - "score": 8 + "score": 47 }, { "name": "Microsoft", - "score": 3 + "score": 17 }, { "name": "Apple", - "score": 2 + "score": 8 }, { "name": "Google", - "score": 2 - }, - { - "name": "ByteDance", - "score": 2 - }, - { - "name": "VMware", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "Indeed", - "score": 1 - }, - { - "name": "LinkedIn", - "score": 1 + "score": 8 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Swap Nodes in Pairs", "id": 24, "frontend_id": 24, + "difficulty_lvl": 2, + "acceptance": 0.62869, "videos": [ { "embedded_url": "https://www.youtube.com/embed/o811TZLAWOo", @@ -1444,11 +1310,11 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 9 }, { "name": "Amazon", - "score": 9 + "score": 8 }, { "name": "Microsoft", @@ -1456,22 +1322,25 @@ }, { "name": "Bloomberg", - "score": 1 + "score": 2 }, { "name": "Adobe", - "score": 1 - }, - { - "name": "Apple", - "score": 1 + "score": 2 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Reverse Nodes in k-Group", "id": 25, "frontend_id": 25, + "difficulty_lvl": 3, + "acceptance": 0.5604, "videos": [ { "embedded_url": "https://www.youtube.com/embed/1UOPsfP85V4", @@ -1497,46 +1366,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 14 }, { "name": "Microsoft", - "score": 9 + "score": 13 }, { "name": "Capital One", - "score": 9 + "score": 13 }, { "name": "Facebook", - "score": 3 + "score": 5 }, { "name": "Google", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Yahoo", - "score": 1 - }, - { - "name": "ByteDance", - "score": 1 - }, - { - "name": "Zoom", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Remove Duplicates from Sorted Array", "id": 26, "frontend_id": 26, + "difficulty_lvl": 1, + "acceptance": 0.52648, "videos": [ { "embedded_url": "https://www.youtube.com/embed/DEJAZBq0FDA", @@ -1562,46 +1423,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 16 }, { "name": "Amazon", - "score": 6 + "score": 9 }, { "name": "Adobe", - "score": 4 + "score": 7 }, { "name": "Microsoft", - "score": 4 + "score": 6 }, { "name": "LinkedIn", - "score": 3 - }, - { - "name": "Bloomberg", - "score": 2 - }, - { - "name": "Google", - "score": 2 - }, - { - "name": "Apple", - "score": 2 - }, - { - "name": "VMware", - "score": 1 + "score": 5 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Remove Element", "id": 27, "frontend_id": 27, + "difficulty_lvl": 1, + "acceptance": 0.54109, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Pcd1ii9P9ZI", @@ -1627,30 +1480,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 5 }, { "name": "Apple", - "score": 7 + "score": 4 }, { "name": "Adobe", - "score": 1 + "score": 2 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Microsoft", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Find the Index of the First Occurrence in a String", "id": 28, "frontend_id": 28, + "difficulty_lvl": 1, + "acceptance": 0.40074, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Gjkhm1gYIMw", @@ -1664,12 +1525,21 @@ "embedded_url": "https://www.youtube.com/embed/v3zdhmdrasE", "channel": "Tech Adora by Nivedita" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Divide Two Integers", "id": 29, "frontend_id": 29, + "difficulty_lvl": 2, + "acceptance": 0.17106, "videos": [ { "embedded_url": "https://www.youtube.com/embed/m4L_5qG4vG8", @@ -1695,31 +1565,23 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 11 }, { "name": "Amazon", - "score": 8 + "score": 9 }, { "name": "Google", - "score": 4 + "score": 5 }, { "name": "Microsoft", - "score": 2 + "score": 3 }, { "name": "Yahoo", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 + "score": 2 } ] }, @@ -1727,6 +1589,8 @@ "title": "Substring with Concatenation of All Words", "id": 30, "frontend_id": 30, + "difficulty_lvl": 3, + "acceptance": 0.31428, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Bbu4Qjzf7A0", @@ -1752,23 +1616,23 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Oracle", - "score": 10 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Apple", - "score": 1 + "score": 2 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -1776,6 +1640,8 @@ "title": "Next Permutation", "id": 31, "frontend_id": 31, + "difficulty_lvl": 2, + "acceptance": 0.38278, "videos": [ { "embedded_url": "https://www.youtube.com/embed/quAS1iydq7U", @@ -1797,12 +1663,15 @@ "embedded_url": "https://www.youtube.com/embed/4wlBBRo4tYY", "channel": "Sai Anish Malla" } - ] + ], + "companies": [] }, { "title": "Longest Valid Parentheses", "id": 32, "frontend_id": 32, + "difficulty_lvl": 3, + "acceptance": 0.33103, "videos": [ { "embedded_url": "https://www.youtube.com/embed/q56S5NIqjdE", @@ -1828,7 +1697,7 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 9 }, { "name": "Facebook", @@ -1840,19 +1709,11 @@ }, { "name": "ByteDance", - "score": 2 + "score": 3 }, { "name": "Microsoft", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 - }, - { - "name": "VMware", - "score": 1 + "score": 2 } ] }, @@ -1860,6 +1721,8 @@ "title": "Search in Rotated Sorted Array", "id": 33, "frontend_id": 33, + "difficulty_lvl": 2, + "acceptance": 0.39798, "videos": [ { "embedded_url": "https://www.youtube.com/embed/U8XENwh8Oy8", @@ -1885,50 +1748,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 31 }, { "name": "Facebook", - "score": 10 + "score": 30 }, { "name": "Microsoft", - "score": 8 + "score": 24 }, { "name": "LinkedIn", - "score": 5 + "score": 17 }, { "name": "Apple", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 2 - }, - { - "name": "Adobe", - "score": 2 - }, - { - "name": "ByteDance", - "score": 1 - }, - { - "name": "Walmart Global Tech", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 + "score": 7 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Find First and Last Position of Element in Sorted Array", "id": 34, "frontend_id": 34, + "difficulty_lvl": 2, + "acceptance": 0.42355, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4sQL7R5ySUU", @@ -1950,12 +1801,21 @@ "embedded_url": "https://www.youtube.com/embed/bvaYNDKp830", "channel": "Nikhil Lohia" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Search Insert Position", "id": 35, "frontend_id": 35, + "difficulty_lvl": 1, + "acceptance": 0.44097, "videos": [ { "embedded_url": "https://www.youtube.com/embed/K-RYzDZkzCI", @@ -1981,7 +1841,7 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 9 }, { "name": "Apple", @@ -1997,30 +1857,22 @@ }, { "name": "Bloomberg", - "score": 2 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Facebook", - "score": 1 - }, - { - "name": "VMware", - "score": 1 - }, - { - "name": "tiktok", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Valid Sudoku", "id": 36, "frontend_id": 36, + "difficulty_lvl": 2, + "acceptance": 0.58488, "videos": [ { "embedded_url": "https://www.youtube.com/embed/TjFXEUCMqI8", @@ -2046,46 +1898,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 19 }, { "name": "Microsoft", - "score": 4 + "score": 8 }, { "name": "Uber", - "score": 2 + "score": 5 }, { "name": "Cruise Automation", - "score": 2 + "score": 5 }, { "name": "Apple", - "score": 2 - }, - { - "name": "Facebook", - "score": 2 - }, - { - "name": "Karat", - "score": 1 - }, - { - "name": "Wayfair", - "score": 1 - }, - { - "name": "Nvidia", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Sudoku Solver", "id": 37, "frontend_id": 37, + "difficulty_lvl": 3, + "acceptance": 0.58863, "videos": [ { "embedded_url": "https://www.youtube.com/embed/lLixGoGuClc", @@ -2111,50 +1955,35 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 7 }, { "name": "Apple", - "score": 8 - }, - { - "name": "Microsoft", - "score": 6 - }, - { - "name": "Google", "score": 6 }, { - "name": "DoorDash", + "name": "Microsoft", "score": 5 }, { - "name": "Intuit", + "name": "Google", "score": 5 }, { - "name": "Adobe", - "score": 3 - }, - { - "name": "Uber", - "score": 3 - }, - { - "name": "tiktok", - "score": 3 - }, - { - "name": "Facebook", - "score": 1 + "name": "DoorDash", + "score": 4 } + ], + "languages": [ + "java" ] }, { "title": "Count and Say", "id": 38, "frontend_id": 38, + "difficulty_lvl": 2, + "acceptance": 0.52897, "videos": [ { "embedded_url": "https://www.youtube.com/embed/-wB1xj-kOe0", @@ -2180,27 +2009,23 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 5 }, { "name": "Google", - "score": 4 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Apple", - "score": 1 + "score": 2 }, { "name": "Adobe", - "score": 1 - }, - { - "name": "Walmart Global Tech", - "score": 1 + "score": 2 } ] }, @@ -2208,6 +2033,8 @@ "title": "Combination Sum", "id": 39, "frontend_id": 39, + "difficulty_lvl": 2, + "acceptance": 0.69544, "videos": [ { "embedded_url": "https://www.youtube.com/embed/GBKI9VSKdGg", @@ -2233,46 +2060,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 18 }, { "name": "Facebook", - "score": 6 + "score": 12 }, { "name": "Microsoft", - "score": 3 + "score": 6 }, { "name": "Airbnb", - "score": 2 + "score": 5 }, { "name": "Apple", - "score": 2 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "LinkedIn", - "score": 1 - }, - { - "name": "ByteDance", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Combination Sum II", "id": 40, "frontend_id": 40, + "difficulty_lvl": 2, + "acceptance": 0.53624, "videos": [ { "embedded_url": "https://www.youtube.com/embed/rSA3t6BDDwg", @@ -2298,30 +2117,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 4 }, { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Reddit", - "score": 6 + "score": 3 }, { "name": "Bloomberg", - "score": 1 + "score": 2 }, { "name": "Oracle", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "First Missing Positive", "id": 41, "frontend_id": 41, + "difficulty_lvl": 3, + "acceptance": 0.37017, "videos": [ { "embedded_url": "https://www.youtube.com/embed/8g78yfzMlao", @@ -2347,42 +2174,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 20 }, { "name": "Microsoft", - "score": 8 + "score": 16 }, { "name": "Adobe", - "score": 4 + "score": 8 }, { "name": "Google", - "score": 2 + "score": 5 }, { "name": "Facebook", - "score": 2 - }, - { - "name": "Databricks", - "score": 1 - }, - { - "name": "Grab", - "score": 1 - }, - { - "name": "Walmart Global Tech", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Trapping Rain Water", "id": 42, "frontend_id": 42, + "difficulty_lvl": 3, + "acceptance": 0.59669, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ZI2z5pq0TqA", @@ -2408,50 +2231,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 45 }, { "name": "Goldman Sachs", - "score": 8 + "score": 38 }, { "name": "Facebook", - "score": 8 + "score": 34 }, { "name": "Bloomberg", - "score": 3 + "score": 15 }, { "name": "Microsoft", - "score": 2 - }, - { - "name": "Google", - "score": 2 - }, - { - "name": "Apple", - "score": 2 - }, - { - "name": "Adobe", - "score": 2 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Qualtrics", - "score": 1 + "score": 9 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Multiply Strings", "id": 43, "frontend_id": 43, + "difficulty_lvl": 2, + "acceptance": 0.3939, "videos": [ { "embedded_url": "https://www.youtube.com/embed/1vZswirL8Y8", @@ -2477,34 +2288,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 14 }, { "name": "Microsoft", - "score": 8 + "score": 12 }, { "name": "Amazon", - "score": 3 + "score": 5 }, { "name": "Google", - "score": 3 + "score": 5 }, { "name": "Two Sigma", - "score": 2 - }, - { - "name": "Adobe", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Wildcard Matching", "id": 44, "frontend_id": 44, + "difficulty_lvl": 3, + "acceptance": 0.2716, "videos": [ { "embedded_url": "https://www.youtube.com/embed/fWeTjhgDt3A", @@ -2530,27 +2345,23 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 14 }, { "name": "Amazon", - "score": 3 + "score": 5 }, { "name": "Google", - "score": 2 + "score": 4 }, { "name": "Facebook", - "score": 1 + "score": 2 }, { "name": "Uber", - "score": 1 - }, - { - "name": "Coursera", - "score": 1 + "score": 2 } ] }, @@ -2558,6 +2369,8 @@ "title": "Jump Game II", "id": 45, "frontend_id": 45, + "difficulty_lvl": 2, + "acceptance": 0.40043, "videos": [ { "embedded_url": "https://www.youtube.com/embed/dJ7sWiOoK7g", @@ -2583,50 +2396,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 13 }, { "name": "Apple", - "score": 3 + "score": 4 }, { "name": "Bloomberg", - "score": 2 + "score": 3 }, { "name": "Google", - "score": 2 + "score": 3 }, { "name": "DoorDash", - "score": 2 - }, - { - "name": "tiktok", - "score": 2 - }, - { - "name": "Microsoft", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "Tesla", - "score": 1 - }, - { - "name": "payu", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Permutations", "id": 46, "frontend_id": 46, + "difficulty_lvl": 2, + "acceptance": 0.76947, "videos": [ { "embedded_url": "https://www.youtube.com/embed/s7AvT7cGdSo", @@ -2647,12 +2448,16 @@ { "embedded_url": "https://www.youtube.com/embed/WD-vqCYm5hc", "channel": "Algorithms Made Easy" + }, + { + "embedded_url": "https://www.youtube.com/embed/FZe0UqISmUw", + "channel": "NeetCodeIO" } ], "companies": [ { "name": "Amazon", - "score": 10 + "score": 9 }, { "name": "Facebook", @@ -2669,29 +2474,21 @@ { "name": "Microsoft", "score": 5 - }, - { - "name": "Apple", - "score": 4 - }, - { - "name": "Adobe", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Goldman Sachs", - "score": 1 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Permutations II", "id": 47, "frontend_id": 47, + "difficulty_lvl": 2, + "acceptance": 0.57856, "videos": [ { "embedded_url": "https://www.youtube.com/embed/qhBVWf0YafA", @@ -2717,18 +2514,24 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Microsoft", - "score": 1 + "score": 3 } + ], + "languages": [ + "python", + "java" ] }, { "title": "Rotate Image", "id": 48, "frontend_id": 48, + "difficulty_lvl": 2, + "acceptance": 0.72131, "videos": [ { "embedded_url": "https://www.youtube.com/embed/fMSJSS7eO1w", @@ -2754,50 +2557,38 @@ "companies": [ { "name": "Cisco", - "score": 10 + "score": 16 }, { "name": "Facebook", - "score": 7 + "score": 12 }, { "name": "Microsoft", - "score": 6 + "score": 9 }, { "name": "Amazon", - "score": 5 + "score": 8 }, { "name": "Apple", - "score": 5 - }, - { - "name": "Adobe", - "score": 3 - }, - { - "name": "Google", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 2 - }, - { - "name": "Rubrik", - "score": 1 - }, - { - "name": "Uber", - "score": 1 + "score": 8 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Group Anagrams", "id": 49, "frontend_id": 49, + "difficulty_lvl": 2, + "acceptance": 0.66831, "videos": [ { "embedded_url": "https://www.youtube.com/embed/vzdNOK2oB2E", @@ -2823,50 +2614,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 51 }, { "name": "Microsoft", - "score": 6 + "score": 29 }, { "name": "Facebook", - "score": 4 + "score": 17 }, { "name": "Apple", - "score": 2 + "score": 11 }, { "name": "JPMorgan", - "score": 2 - }, - { - "name": "BlackRock", - "score": 1 - }, - { - "name": "Google", - "score": 1 - }, - { - "name": "Walmart Global Tech", - "score": 1 - }, - { - "name": "eBay", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 + "score": 8 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Pow(x, n)", "id": 50, "frontend_id": 50, + "difficulty_lvl": 2, + "acceptance": 0.33919, "videos": [ { "embedded_url": "https://www.youtube.com/embed/g9YQyYi4IQQ", @@ -2888,12 +2667,42 @@ "embedded_url": "https://www.youtube.com/embed/wAyrtLAeWvI", "channel": "mycodeschool" } + ], + "companies": [ + { + "name": "Facebook", + "score": 162 + }, + { + "name": "Amazon", + "score": 9 + }, + { + "name": "Bloomberg", + "score": 8 + }, + { + "name": "LinkedIn", + "score": 7 + }, + { + "name": "Google", + "score": 5 + } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "N-Queens", "id": 51, "frontend_id": 51, + "difficulty_lvl": 3, + "acceptance": 0.65616, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Ph95IHmRp5M", @@ -2919,15 +2728,15 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 7 }, { "name": "Facebook", - "score": 5 + "score": 4 }, { "name": "Microsoft", - "score": 5 + "score": 4 }, { "name": "Google", @@ -2936,25 +2745,21 @@ { "name": "Bloomberg", "score": 3 - }, - { - "name": "Adobe", - "score": 3 - }, - { - "name": "ByteDance", - "score": 3 - }, - { - "name": "tiktok", - "score": 1 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "N-Queens II", "id": 52, "frontend_id": 52, + "difficulty_lvl": 3, + "acceptance": 0.72294, "videos": [ { "embedded_url": "https://www.youtube.com/embed/nalYyLZgvCY", @@ -2976,18 +2781,25 @@ "companies": [ { "name": "ByteDance", - "score": 10 + "score": 2 }, { "name": "Zenefits", "score": 1 } + ], + "languages": [ + "javascript", + "python", + "cpp" ] }, { "title": "Maximum Subarray", "id": 53, "frontend_id": 53, + "difficulty_lvl": 2, + "acceptance": 0.50272, "videos": [ { "embedded_url": "https://www.youtube.com/embed/5WZl3MMT0Eg", @@ -3013,50 +2825,38 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 43 }, { "name": "Amazon", - "score": 8 + "score": 35 }, { "name": "Apple", - "score": 4 + "score": 17 }, { "name": "Microsoft", - "score": 3 + "score": 15 }, { "name": "Adobe", - "score": 3 - }, - { - "name": "Google", - "score": 2 - }, - { - "name": "Facebook", - "score": 2 - }, - { - "name": "Cisco", - "score": 2 - }, - { - "name": "JPMorgan", - "score": 1 - }, - { - "name": "Shopee", - "score": 1 + "score": 12 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Spiral Matrix", "id": 54, "frontend_id": 54, + "difficulty_lvl": 2, + "acceptance": 0.4708, "videos": [ { "embedded_url": "https://www.youtube.com/embed/BJnMZNwUk1M", @@ -3082,46 +2882,38 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 26 }, { "name": "Amazon", - "score": 5 + "score": 13 }, { "name": "Apple", - "score": 4 + "score": 11 }, { "name": "Facebook", - "score": 4 + "score": 10 }, { "name": "Google", - "score": 3 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "LiveRamp", - "score": 1 - }, - { - "name": "Zillow", - "score": 1 - }, - { - "name": "Uber", - "score": 1 + "score": 8 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Jump Game", "id": 55, "frontend_id": 55, + "difficulty_lvl": 2, + "acceptance": 0.38702, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Yan0cv2cLy8", @@ -3143,46 +2935,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 20 }, { "name": "Facebook", - "score": 4 + "score": 8 }, { "name": "Apple", - "score": 2 + "score": 3 }, { "name": "DoorDash", - "score": 2 + "score": 3 }, { "name": "Flipkart", - "score": 2 - }, - { - "name": "Google", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Qualtrics", - "score": 1 - }, - { - "name": "Salesforce", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Merge Intervals", "id": 56, "frontend_id": 56, + "difficulty_lvl": 2, + "acceptance": 0.46394, "videos": [ { "embedded_url": "https://www.youtube.com/embed/44H3cEC2fFM", @@ -3208,50 +2992,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 110 }, { "name": "Amazon", - "score": 8 + "score": 87 }, { "name": "Google", - "score": 3 + "score": 28 }, { "name": "Bloomberg", - "score": 2 + "score": 20 }, { "name": "Salesforce", - "score": 2 - }, - { - "name": "Apple", - "score": 2 - }, - { - "name": "Microsoft", - "score": 2 - }, - { - "name": "Uber", - "score": 2 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "IBM", - "score": 1 + "score": 19 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Insert Interval", "id": 57, "frontend_id": 57, + "difficulty_lvl": 2, + "acceptance": 0.39258, "videos": [ { "embedded_url": "https://www.youtube.com/embed/A8NUOmlwOlM", @@ -3277,30 +3049,38 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 99 }, { "name": "LinkedIn", - "score": 8 + "score": 74 }, { - "name": "Facebook", - "score": 3 + "name": "Amazon", + "score": 27 }, { - "name": "Amazon", - "score": 3 + "name": "Facebook", + "score": 25 }, { "name": "Robinhood", "score": 1 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Length of Last Word", "id": 58, "frontend_id": 58, + "difficulty_lvl": 1, + "acceptance": 0.45122, "videos": [ { "embedded_url": "https://www.youtube.com/embed/KT9rltZTybQ", @@ -3326,18 +3106,26 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Microsoft", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Spiral Matrix II", "id": 59, "frontend_id": 59, + "difficulty_lvl": 2, + "acceptance": 0.69941, "videos": [ { "embedded_url": "https://www.youtube.com/embed/RvLrWFBJ9fM", @@ -3363,22 +3151,27 @@ "companies": [ { "name": "tiktok", - "score": 10 + "score": 6 }, { "name": "Apple", - "score": 6 + "score": 4 }, { "name": "Amazon", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript" ] }, { "title": "Permutation Sequence", "id": 60, "frontend_id": 60, + "difficulty_lvl": 3, + "acceptance": 0.45233, "videos": [ { "embedded_url": "https://www.youtube.com/embed/W9SIlE2jhBQ", @@ -3404,18 +3197,23 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 }, { "name": "Adobe", - "score": 6 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Rotate List", "id": 61, "frontend_id": 61, + "difficulty_lvl": 2, + "acceptance": 0.36545, "videos": [ { "embedded_url": "https://www.youtube.com/embed/UcGtPs2LE_c", @@ -3441,18 +3239,25 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 4 }, { "name": "Bloomberg", - "score": 1 + "score": 3 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Unique Paths", "id": 62, "frontend_id": 62, + "difficulty_lvl": 2, + "acceptance": 0.62932, "videos": [ { "embedded_url": "https://www.youtube.com/embed/IlEsdxuD4lY", @@ -3478,38 +3283,38 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 15 }, { "name": "Facebook", - "score": 7 + "score": 11 }, { "name": "Microsoft", - "score": 5 + "score": 9 }, { "name": "Amazon", - "score": 4 + "score": 8 }, { "name": "Apple", - "score": 4 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 + "score": 7 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Unique Paths II", "id": 63, "frontend_id": 63, + "difficulty_lvl": 2, + "acceptance": 0.39799, "videos": [ { "embedded_url": "https://www.youtube.com/embed/d3UOz7zdE4I", @@ -3535,11 +3340,11 @@ "companies": [ { "name": "Cruise Automation", - "score": 10 + "score": 9 }, { "name": "Facebook", - "score": 9 + "score": 8 }, { "name": "Amazon", @@ -3551,26 +3356,21 @@ }, { "name": "Google", - "score": 2 - }, - { - "name": "Cisco", - "score": 2 - }, - { - "name": "Microsoft", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 + "score": 3 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Minimum Path Sum", "id": 64, "frontend_id": 64, + "difficulty_lvl": 2, + "acceptance": 0.62617, "videos": [ { "embedded_url": "https://www.youtube.com/embed/pGMsrvt0fpk", @@ -3596,15 +3396,15 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 7 }, { "name": "Microsoft", - "score": 6 + "score": 5 }, { "name": "Google", - "score": 5 + "score": 4 }, { "name": "Goldman Sachs", @@ -3613,25 +3413,20 @@ { "name": "Oracle", "score": 3 - }, - { - "name": "Apple", - "score": 3 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Square", - "score": 1 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Valid Number", "id": 65, "frontend_id": 65, + "difficulty_lvl": 3, + "acceptance": 0.18835, "videos": [ { "embedded_url": "https://www.youtube.com/embed/0qac3ngAZmE", @@ -3657,11 +3452,11 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 53 }, { "name": "LinkedIn", - "score": 1 + "score": 10 } ] }, @@ -3669,6 +3464,8 @@ "title": "Plus One", "id": 66, "frontend_id": 66, + "difficulty_lvl": 1, + "acceptance": 0.44029, "videos": [ { "embedded_url": "https://www.youtube.com/embed/jIaA8boiG1s", @@ -3694,34 +3491,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 11 }, { "name": "Google", - "score": 4 + "score": 5 }, { "name": "Amazon", - "score": 4 + "score": 5 }, { "name": "Adobe", - "score": 1 + "score": 2 }, { "name": "Apple", - "score": 1 - }, - { - "name": "ByteDance", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Add Binary", "id": 67, "frontend_id": 67, + "difficulty_lvl": 1, + "acceptance": 0.52563, "videos": [ { "embedded_url": "https://www.youtube.com/embed/OEW50g03mT0", @@ -3755,26 +3556,29 @@ }, { "name": "Snapchat", - "score": 2 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Adobe", - "score": 1 - }, - { - "name": "Uber", - "score": 1 + "score": 2 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Text Justification", "id": 68, "frontend_id": 68, + "difficulty_lvl": 3, + "acceptance": 0.3823, "videos": [ { "embedded_url": "https://www.youtube.com/embed/GqXlEbFVTXY", @@ -3800,50 +3604,35 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 24 }, { "name": "LinkedIn", - "score": 7 + "score": 18 }, { "name": "Karat", - "score": 4 + "score": 10 }, { "name": "Uber", - "score": 2 + "score": 6 }, { "name": "Facebook", - "score": 1 - }, - { - "name": "Square", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Reddit", - "score": 1 - }, - { - "name": "Twilio", - "score": 1 - }, - { - "name": "Indeed", - "score": 1 + "score": 4 } + ], + "languages": [ + "python" ] }, { "title": "Sqrt(x)", "id": 69, "frontend_id": 69, + "difficulty_lvl": 1, + "acceptance": 0.37753, "videos": [ { "embedded_url": "https://www.youtube.com/embed/3MyA0dj-_2c", @@ -3865,12 +3654,42 @@ "embedded_url": "https://www.youtube.com/embed/p8EkGkUZZgE", "channel": "code Explainer" } + ], + "companies": [ + { + "name": "LinkedIn", + "score": 9 + }, + { + "name": "Amazon", + "score": 9 + }, + { + "name": "Apple", + "score": 5 + }, + { + "name": "Google", + "score": 4 + }, + { + "name": "Adobe", + "score": 4 + } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Climbing Stairs", "id": 70, "frontend_id": 70, + "difficulty_lvl": 1, + "acceptance": 0.52228, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Y0lT9Fck7qI", @@ -3896,46 +3715,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 14 }, { "name": "Expedia", - "score": 5 + "score": 7 }, { "name": "Microsoft", - "score": 5 + "score": 7 }, { "name": "Uber", - "score": 2 + "score": 4 }, { "name": "Google", - "score": 2 - }, - { - "name": "Adobe", - "score": 2 - }, - { - "name": "Yahoo", - "score": 2 - }, - { - "name": "Goldman Sachs", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Simplify Path", "id": 71, "frontend_id": 71, + "difficulty_lvl": 2, + "acceptance": 0.40786, "videos": [ { "embedded_url": "https://www.youtube.com/embed/qYlHrAKJfyA", @@ -3961,26 +3772,34 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 112 }, { "name": "Amazon", - "score": 1 + "score": 8 }, { "name": "Google", - "score": 1 + "score": 5 }, { "name": "Apple", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Edit Distance", "id": 72, "frontend_id": 72, + "difficulty_lvl": 2, + "acceptance": 0.55148, "videos": [ { "embedded_url": "https://www.youtube.com/embed/XYi2-LPrwm4", @@ -4006,15 +3825,15 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 8 }, { "name": "LinkedIn", - "score": 8 + "score": 7 }, { "name": "Microsoft", - "score": 7 + "score": 6 }, { "name": "Google", @@ -4022,26 +3841,22 @@ }, { "name": "Apple", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Facebook", - "score": 1 - }, - { - "name": "Rubrik", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Set Matrix Zeroes", "id": 73, "frontend_id": 73, + "difficulty_lvl": 2, + "acceptance": 0.52819, "videos": [ { "embedded_url": "https://www.youtube.com/embed/T41rL0L3Pnw", @@ -4067,7 +3882,7 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 8 }, { "name": "Amazon", @@ -4079,18 +3894,26 @@ }, { "name": "Apple", - "score": 3 + "score": 4 }, { "name": "Bloomberg", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Search a 2D Matrix", "id": 74, "frontend_id": 74, + "difficulty_lvl": 2, + "acceptance": 0.49015, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Ber2pi2C0j0", @@ -4116,50 +3939,37 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 14 }, { "name": "Amazon", - "score": 8 + "score": 12 }, { "name": "Microsoft", - "score": 5 + "score": 7 }, { "name": "Bloomberg", - "score": 3 + "score": 5 }, { "name": "Apple", - "score": 2 - }, - { - "name": "Adobe", - "score": 2 - }, - { - "name": "Goldman Sachs", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 - }, - { - "name": "Nvidia", - "score": 1 - }, - { - "name": "Salesforce", - "score": 1 + "score": 4 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Sort Colors", "id": 75, "frontend_id": 75, + "difficulty_lvl": 2, + "acceptance": 0.59838, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4xbWSRZHqac", @@ -4185,50 +3995,38 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 8 }, { "name": "Amazon", - "score": 10 + "score": 8 }, { "name": "VMware", - "score": 2 + "score": 3 }, { "name": "Adobe", - "score": 2 + "score": 3 }, { "name": "Salesforce", - "score": 2 - }, - { - "name": "Nvidia", - "score": 2 - }, - { - "name": "Grab", - "score": 2 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Facebook", - "score": 1 - }, - { - "name": "Intel", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Minimum Window Substring", "id": 76, "frontend_id": 76, + "difficulty_lvl": 3, + "acceptance": 0.41094, "videos": [ { "embedded_url": "https://www.youtube.com/embed/jSto0O4AJbM", @@ -4254,50 +4052,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 20 }, { "name": "Amazon", - "score": 6 + "score": 11 }, { "name": "LinkedIn", - "score": 5 + "score": 10 }, { "name": "Lyft", - "score": 4 + "score": 9 }, { "name": "Microsoft", - "score": 4 - }, - { - "name": "Airbnb", - "score": 3 - }, - { - "name": "Apple", - "score": 2 - }, - { - "name": "Adobe", - "score": 2 - }, - { - "name": "Snapchat", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 + "score": 7 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Combinations", "id": 77, "frontend_id": 77, + "difficulty_lvl": 2, + "acceptance": 0.68925, "videos": [ { "embedded_url": "www.youtube.com/embed/q0s6m7AiM7o", @@ -4323,26 +4109,32 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 5 }, { "name": "Google", - "score": 10 + "score": 5 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Microsoft", - "score": 1 + "score": 2 } + ], + "languages": [ + "python", + "java" ] }, { "title": "Subsets", "id": 78, "frontend_id": 78, + "difficulty_lvl": 2, + "acceptance": 0.7579, "videos": [ { "embedded_url": "https://www.youtube.com/embed/REOH22Xwdkk", @@ -4368,50 +4160,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 38 }, { "name": "Amazon", - "score": 4 + "score": 13 }, { "name": "Google", - "score": 2 + "score": 7 }, { "name": "Bloomberg", - "score": 2 + "score": 4 }, { "name": "Microsoft", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Twitter", - "score": 1 - }, - { - "name": "Reddit", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "Uber", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Word Search", "id": 79, "frontend_id": 79, + "difficulty_lvl": 2, + "acceptance": 0.40501, "videos": [ { "embedded_url": "https://www.youtube.com/embed/pfiQ_PS1g8E", @@ -4433,46 +4213,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 36 }, { "name": "Twitter", - "score": 6 + "score": 23 }, { "name": "Uber", - "score": 4 + "score": 17 }, { "name": "Karat", - "score": 4 + "score": 17 }, { "name": "Microsoft", - "score": 4 - }, - { - "name": "Bloomberg", - "score": 3 - }, - { - "name": "Facebook", - "score": 2 - }, - { - "name": "Indeed", - "score": 2 - }, - { - "name": "Snapchat", - "score": 1 + "score": 16 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Remove Duplicates from Sorted Array II", "id": 80, "frontend_id": 80, + "difficulty_lvl": 2, + "acceptance": 0.542, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ycAq8iqh0TI", @@ -4498,14 +4270,22 @@ "companies": [ { "name": "Adobe", - "score": 6 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Search in Rotated Sorted Array II", "id": 81, "frontend_id": 81, + "difficulty_lvl": 2, + "acceptance": 0.3707, "videos": [ { "embedded_url": "https://www.youtube.com/embed/tzTi0itKCb8", @@ -4531,26 +4311,31 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 5 }, { "name": "LinkedIn", - "score": 7 + "score": 4 }, { "name": "Adobe", - "score": 4 + "score": 3 }, { "name": "Facebook", - "score": 1 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Remove Duplicates from Sorted List II", "id": 82, "frontend_id": 82, + "difficulty_lvl": 2, + "acceptance": 0.46308, "videos": [ { "embedded_url": "https://www.youtube.com/embed/R6-PnHODewY", @@ -4576,15 +4361,15 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 6 }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "Facebook", - "score": 1 + "score": 2 } ] }, @@ -4592,6 +4377,8 @@ "title": "Remove Duplicates from Sorted List", "id": 83, "frontend_id": 83, + "difficulty_lvl": 1, + "acceptance": 0.51169, "videos": [ { "embedded_url": "https://www.youtube.com/embed/p10f-VpO4nE", @@ -4617,30 +4404,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 6 }, { "name": "Facebook", - "score": 6 + "score": 4 }, { "name": "Bloomberg", - "score": 1 + "score": 2 }, { "name": "Adobe", - "score": 1 + "score": 2 }, { "name": "Microsoft", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Largest Rectangle in Histogram", "id": 84, "frontend_id": 84, + "difficulty_lvl": 3, + "acceptance": 0.43117, "videos": [ { "embedded_url": "https://www.youtube.com/embed/zx5Sw9130L0", @@ -4666,42 +4461,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 12 }, { "name": "Microsoft", - "score": 5 + "score": 6 }, { "name": "Adobe", - "score": 3 + "score": 4 }, { "name": "Facebook", - "score": 3 + "score": 4 }, { "name": "Uber", - "score": 3 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "ByteDance", - "score": 1 - }, - { - "name": "DoorDash", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Maximal Rectangle", "id": 85, "frontend_id": 85, + "difficulty_lvl": 3, + "acceptance": 0.45527, "videos": [ { "embedded_url": "https://www.youtube.com/embed/dAVF2NpC3j4", @@ -4727,15 +4518,15 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 4 }, { "name": "Amazon", - "score": 6 + "score": 3 }, { "name": "Apple", - "score": 1 + "score": 2 } ] }, @@ -4743,6 +4534,8 @@ "title": "Partition List", "id": 86, "frontend_id": 86, + "difficulty_lvl": 2, + "acceptance": 0.52714, "videos": [ { "embedded_url": "https://www.youtube.com/embed/KT1iUciJr4g", @@ -4768,14 +4561,20 @@ "companies": [ { "name": "Adobe", - "score": 6 + "score": 2 } + ], + "languages": [ + "python", + "java" ] }, { "title": "Scramble String", "id": 87, "frontend_id": 87, + "difficulty_lvl": 3, + "acceptance": 0.39222, "videos": [ { "embedded_url": "https://www.youtube.com/embed/MDmZm_aVDF8", @@ -4801,7 +4600,7 @@ "companies": [ { "name": "Yahoo", - "score": 6 + "score": 2 } ] }, @@ -4809,6 +4608,8 @@ "title": "Merge Sorted Array", "id": 88, "frontend_id": 88, + "difficulty_lvl": 1, + "acceptance": 0.47598, "videos": [ { "embedded_url": "https://www.youtube.com/embed/P1Ic85RarKY", @@ -4834,50 +4635,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 89 }, { "name": "Microsoft", - "score": 2 + "score": 10 }, { "name": "Apple", - "score": 2 + "score": 8 }, { "name": "Amazon", - "score": 1 + "score": 5 }, { "name": "LinkedIn", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Shopee", - "score": 1 - }, - { - "name": "Indeed", - "score": 1 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 + "score": 5 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Gray Code", "id": 89, "frontend_id": 89, + "difficulty_lvl": 2, + "acceptance": 0.5773, "videos": [ { "embedded_url": "https://www.youtube.com/embed/KOD2BFauQbA", @@ -4903,7 +4692,7 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -4911,6 +4700,8 @@ "title": "Subsets II", "id": 90, "frontend_id": 90, + "difficulty_lvl": 2, + "acceptance": 0.56344, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Vn2v6ajA7U0", @@ -4936,26 +4727,34 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Bloomberg", - "score": 1 + "score": 2 }, { "name": "Adobe", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Decode Ways", "id": 91, "frontend_id": 91, + "difficulty_lvl": 2, + "acceptance": 0.33131, "videos": [ { "embedded_url": "https://www.youtube.com/embed/6aEyTjOwlJU", @@ -4981,11 +4780,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 9 }, { "name": "Cisco", - "score": 10 + "score": 9 }, { "name": "Google", @@ -4997,30 +4796,22 @@ }, { "name": "Facebook", - "score": 2 - }, - { - "name": "Microsoft", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Goldman Sachs", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Reverse Linked List II", "id": 92, "frontend_id": 92, + "difficulty_lvl": 2, + "acceptance": 0.4563, "videos": [ { "embedded_url": "https://www.youtube.com/embed/RF_M9tX4Eag", @@ -5046,15 +4837,15 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 7 }, { "name": "Microsoft", - "score": 6 + "score": 5 }, { "name": "Amazon", - "score": 6 + "score": 5 }, { "name": "Google", @@ -5062,18 +4853,22 @@ }, { "name": "Apple", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Restore IP Addresses", "id": 93, "frontend_id": 93, + "difficulty_lvl": 2, + "acceptance": 0.48134, "videos": [ { "embedded_url": "https://www.youtube.com/embed/61tN4YEdiTM", @@ -5099,38 +4894,35 @@ "companies": [ { "name": "Yahoo", - "score": 10 + "score": 5 }, { "name": "Amazon", - "score": 4 + "score": 3 }, { "name": "Microsoft", - "score": 4 + "score": 3 }, { "name": "tiktok", - "score": 4 + "score": 3 }, { "name": "Facebook", - "score": 1 - }, - { - "name": "ByteDance", - "score": 1 - }, - { - "name": "Arista Networks", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript" ] }, { "title": "Binary Tree Inorder Traversal", "id": 94, "frontend_id": 94, + "difficulty_lvl": 1, + "acceptance": 0.74492, "videos": [ { "embedded_url": "https://www.youtube.com/embed/g_S5WuasWUE", @@ -5156,26 +4948,34 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 4 }, { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Apple", - "score": 6 + "score": 3 }, { "name": "Adobe", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Unique Binary Search Trees II", "id": 95, "frontend_id": 95, + "difficulty_lvl": 2, + "acceptance": 0.55946, "videos": [ { "embedded_url": "https://www.youtube.com/embed/A7OII4X4cw0", @@ -5201,14 +5001,19 @@ "companies": [ { "name": "Microsoft", - "score": 6 + "score": 4 } + ], + "languages": [ + "java" ] }, { "title": "Unique Binary Search Trees", "id": 96, "frontend_id": 96, + "difficulty_lvl": 2, + "acceptance": 0.60202, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Ox0TenN3Zpg", @@ -5234,14 +5039,19 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 4 } + ], + "languages": [ + "java" ] }, { "title": "Interleaving String", "id": 97, "frontend_id": 97, + "difficulty_lvl": 2, + "acceptance": 0.3768, "videos": [ { "embedded_url": "https://www.youtube.com/embed/3Rw3p9LrgvE", @@ -5267,30 +5077,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Apple", - "score": 10 + "score": 4 }, { "name": "Google", - "score": 6 + "score": 3 }, { "name": "Uber", - "score": 1 + "score": 2 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Validate Binary Search Tree", "id": 98, "frontend_id": 98, + "difficulty_lvl": 2, + "acceptance": 0.32202, "videos": [ { "embedded_url": "https://www.youtube.com/embed/s6ATEkipzow", @@ -5316,46 +5134,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 25 }, { "name": "Bloomberg", - "score": 6 + "score": 14 }, { "name": "Facebook", - "score": 3 + "score": 8 }, { "name": "Microsoft", - "score": 3 + "score": 6 }, { "name": "Adobe", - "score": 2 - }, - { - "name": "Qualtrics", - "score": 1 - }, - { - "name": "VMware", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 - }, - { - "name": "tiktok", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Recover Binary Search Tree", "id": 99, "frontend_id": 99, + "difficulty_lvl": 2, + "acceptance": 0.51728, "videos": [ { "embedded_url": "https://www.youtube.com/embed/bJBwOMPhe6Y", @@ -5381,27 +5191,23 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 15 }, { "name": "Microsoft", - "score": 2 + "score": 4 }, { "name": "Apple", - "score": 2 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Adobe", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 + "score": 2 } ] }, @@ -5409,6 +5215,8 @@ "title": "Same Tree", "id": 100, "frontend_id": 100, + "difficulty_lvl": 1, + "acceptance": 0.59154, "videos": [ { "embedded_url": "https://www.youtube.com/embed/vRbbcKXCxOw", @@ -5434,11 +5242,11 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 6 }, { "name": "Amazon", - "score": 8 + "score": 5 }, { "name": "Google", @@ -5450,18 +5258,22 @@ }, { "name": "Facebook", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Symmetric Tree", "id": 101, "frontend_id": 101, + "difficulty_lvl": 1, + "acceptance": 0.54988, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Mao9uzxwvmc", @@ -5487,42 +5299,35 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 12 }, { "name": "Amazon", - "score": 6 + "score": 8 }, { "name": "LinkedIn", - "score": 4 + "score": 5 }, { "name": "Google", - "score": 4 + "score": 5 }, { "name": "Microsoft", - "score": 4 - }, - { - "name": "Bloomberg", - "score": 2 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 + "score": 5 } + ], + "languages": [ + "python" ] }, { "title": "Binary Tree Level Order Traversal", "id": 102, "frontend_id": 102, + "difficulty_lvl": 2, + "acceptance": 0.65317, "videos": [ { "embedded_url": "https://www.youtube.com/embed/6ZnyEApgFYg", @@ -5548,11 +5353,11 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 9 }, { "name": "Amazon", - "score": 9 + "score": 8 }, { "name": "Microsoft", @@ -5565,29 +5370,21 @@ { "name": "Bloomberg", "score": 6 - }, - { - "name": "Oracle", - "score": 4 - }, - { - "name": "Google", - "score": 2 - }, - { - "name": "ServiceNow", - "score": 2 - }, - { - "name": "Apple", - "score": 1 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Binary Tree Zigzag Level Order Traversal", "id": 103, "frontend_id": 103, + "difficulty_lvl": 2, + "acceptance": 0.57593, "videos": [ { "embedded_url": "https://www.youtube.com/embed/igbboQbiwqw", @@ -5613,46 +5410,36 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 28 }, { "name": "Facebook", - "score": 6 + "score": 18 }, { "name": "Microsoft", - "score": 5 + "score": 13 }, { "name": "Bloomberg", - "score": 2 + "score": 5 }, { "name": "Google", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "LinkedIn", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 + "score": 3 } + ], + "languages": [ + "python", + "cpp" ] }, { "title": "Maximum Depth of Binary Tree", "id": 104, "frontend_id": 104, + "difficulty_lvl": 1, + "acceptance": 0.74339, "videos": [ { "embedded_url": "https://www.youtube.com/embed/hTM3phVI6YQ", @@ -5682,38 +5469,34 @@ }, { "name": "Amazon", - "score": 3 + "score": 4 }, { "name": "Spotify", - "score": 3 + "score": 4 }, { "name": "Google", - "score": 3 + "score": 4 }, { "name": "Microsoft", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Facebook", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Construct Binary Tree from Preorder and Inorder Traversal", "id": 105, "frontend_id": 105, + "difficulty_lvl": 2, + "acceptance": 0.62233, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ihj4IQGZ2zc", @@ -5739,34 +5522,38 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 4 }, { "name": "Bloomberg", - "score": 6 + "score": 3 }, { "name": "Google", - "score": 6 + "score": 3 }, { "name": "Amazon", - "score": 6 + "score": 3 }, { "name": "Uber", - "score": 1 - }, - { - "name": "ByteDance", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Construct Binary Tree from Inorder and Postorder Traversal", "id": 106, "frontend_id": 106, + "difficulty_lvl": 2, + "acceptance": 0.60892, "videos": [ { "embedded_url": "https://www.youtube.com/embed/vm63HuIU7kw", @@ -5792,14 +5579,20 @@ "companies": [ { "name": "Shopee", - "score": 6 + "score": 3 } + ], + "languages": [ + "python", + "java" ] }, { "title": "Binary Tree Level Order Traversal II", "id": 107, "frontend_id": 107, + "difficulty_lvl": 2, + "acceptance": 0.61851, "videos": [ { "embedded_url": "https://www.youtube.com/embed/FSWqYp3k1O4", @@ -5825,14 +5618,19 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Convert Sorted Array to Binary Search Tree", "id": 108, "frontend_id": 108, + "difficulty_lvl": 1, + "acceptance": 0.70454, "videos": [ { "embedded_url": "https://www.youtube.com/embed/0K0uCMYq5ng", @@ -5858,30 +5656,37 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "Apple", - "score": 1 + "score": 2 }, { "name": "Facebook", - "score": 1 + "score": 2 }, { "name": "Oracle", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "java" ] }, { "title": "Convert Sorted List to Binary Search Tree", "id": 109, "frontend_id": 109, + "difficulty_lvl": 2, + "acceptance": 0.60716, "videos": [ { "embedded_url": "https://www.youtube.com/embed/cH9-SC3JNRk", @@ -5907,19 +5712,19 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 11 }, { "name": "Amazon", - "score": 6 + "score": 7 }, { "name": "Microsoft", - "score": 2 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 } ] }, @@ -5927,6 +5732,8 @@ "title": "Balanced Binary Tree", "id": 110, "frontend_id": 110, + "difficulty_lvl": 1, + "acceptance": 0.50036, "videos": [ { "embedded_url": "https://www.youtube.com/embed/QfJsau0ItOY", @@ -5952,30 +5759,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 5 }, { "name": "Spotify", - "score": 7 + "score": 4 }, { "name": "Facebook", - "score": 1 + "score": 2 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Adobe", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Minimum Depth of Binary Tree", "id": 111, "frontend_id": 111, + "difficulty_lvl": 1, + "acceptance": 0.46289, "videos": [ { "embedded_url": "https://www.youtube.com/embed/6aChG_3jMAQ", @@ -6001,18 +5816,23 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 4 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } + ], + "languages": [ + "cpp" ] }, { "title": "Path Sum", "id": 112, "frontend_id": 112, + "difficulty_lvl": 1, + "acceptance": 0.48826, "videos": [ { "embedded_url": "https://www.youtube.com/embed/LSKQyOz_P8I", @@ -6038,30 +5858,37 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 8 }, { "name": "Microsoft", - "score": 8 + "score": 7 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Oracle", - "score": 1 + "score": 2 }, { "name": "Walmart Global Tech", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "java" ] }, { "title": "Path Sum II", "id": 113, "frontend_id": 113, + "difficulty_lvl": 2, + "acceptance": 0.57479, "videos": [ { "embedded_url": "https://www.youtube.com/embed/mS-CFA_k1yM", @@ -6087,23 +5914,23 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 5 }, { "name": "Facebook", - "score": 7 + "score": 4 }, { "name": "Google", - "score": 4 + "score": 3 }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "Oracle", - "score": 1 + "score": 2 } ] }, @@ -6111,6 +5938,8 @@ "title": "Flatten Binary Tree to Linked List", "id": 114, "frontend_id": 114, + "difficulty_lvl": 2, + "acceptance": 0.62816, "videos": [ { "embedded_url": "https://www.youtube.com/embed/rKnD7rLT0lI", @@ -6148,7 +5977,7 @@ }, { "name": "Salesforce", - "score": 1 + "score": 2 } ] }, @@ -6156,6 +5985,8 @@ "title": "Distinct Subsequences", "id": 115, "frontend_id": 115, + "difficulty_lvl": 3, + "acceptance": 0.4547, "videos": [ { "embedded_url": "https://www.youtube.com/embed/-RDzMJ33nx8", @@ -6181,22 +6012,30 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Mathworks", - "score": 6 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Populating Next Right Pointers in Each Node", "id": 116, "frontend_id": 116, + "difficulty_lvl": 2, + "acceptance": 0.61169, "videos": [ { "embedded_url": "https://www.youtube.com/embed/U4hFQCa1Cq0", @@ -6218,12 +6057,20 @@ "embedded_url": "https://www.youtube.com/embed/o-SxW_0E-o8", "channel": "Algorithms Made Easy" } + ], + "companies": [], + "languages": [ + "javascript", + "cpp", + "java" ] }, { "title": "Populating Next Right Pointers in Each Node II", "id": 117, "frontend_id": 117, + "difficulty_lvl": 2, + "acceptance": 0.5086, "videos": [ { "embedded_url": "https://www.youtube.com/embed/OHtr6qwM68o", @@ -6245,12 +6092,18 @@ "embedded_url": "https://www.youtube.com/embed/vy2mnT3TEXQ", "channel": "Shruti Mehrotra - Cracking Interviews" } + ], + "companies": [], + "languages": [ + "cpp" ] }, { "title": "Pascal's Triangle", "id": 118, "frontend_id": 118, + "difficulty_lvl": 1, + "acceptance": 0.71834, "videos": [ { "embedded_url": "https://www.youtube.com/embed/nPVEaB3AjUM", @@ -6272,12 +6125,42 @@ "embedded_url": "https://www.youtube.com/embed/MzdzJuvzmS4", "channel": "Timothy H Chang" } + ], + "companies": [ + { + "name": "Amazon", + "score": 5 + }, + { + "name": "Apple", + "score": 4 + }, + { + "name": "Microsoft", + "score": 4 + }, + { + "name": "Goldman Sachs", + "score": 3 + }, + { + "name": "Snapchat", + "score": 2 + } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Pascal's Triangle II", "id": 119, "frontend_id": 119, + "difficulty_lvl": 1, + "acceptance": 0.614, "videos": [ { "embedded_url": "https://www.youtube.com/embed/IWXZAvBIuyE", @@ -6299,12 +6182,28 @@ "embedded_url": "https://www.youtube.com/embed/Q1lj9B33Euc", "channel": "Code with Alisha" } + ], + "companies": [ + { + "name": "Microsoft", + "score": 2 + }, + { + "name": "Goldman Sachs", + "score": 2 + } + ], + "languages": [ + "python", + "java" ] }, { "title": "Triangle", "id": 120, "frontend_id": 120, + "difficulty_lvl": 2, + "acceptance": 0.55307, "videos": [ { "embedded_url": "https://www.youtube.com/embed/OM1MTokvxs4", @@ -6326,18 +6225,25 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Microsoft", - "score": 1 + "score": 3 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Best Time to Buy and Sell Stock", "id": 121, "frontend_id": 121, + "difficulty_lvl": 1, + "acceptance": 0.53766, "videos": [ { "embedded_url": "https://www.youtube.com/embed/1pkOgXD63yU", @@ -6363,50 +6269,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 56 }, { "name": "Facebook", - "score": 3 + "score": 16 }, { "name": "Microsoft", - "score": 3 + "score": 14 }, { "name": "Bloomberg", - "score": 2 + "score": 12 }, { "name": "Google", - "score": 2 - }, - { - "name": "Goldman Sachs", - "score": 2 - }, - { - "name": "Adobe", - "score": 2 - }, - { - "name": "Apple", - "score": 2 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Expedia", - "score": 1 + "score": 12 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Best Time to Buy and Sell Stock II", "id": 122, "frontend_id": 122, + "difficulty_lvl": 2, + "acceptance": 0.64677, "videos": [ { "embedded_url": "https://www.youtube.com/embed/3SJ3pUkPQMc", @@ -6432,42 +6326,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 13 }, { "name": "Facebook", - "score": 4 + "score": 5 }, { "name": "Walmart Global Tech", - "score": 3 + "score": 4 }, { "name": "Microsoft", - "score": 2 + "score": 3 }, { "name": "Bloomberg", - "score": 2 - }, - { - "name": "Google", - "score": 2 - }, - { - "name": "ByteDance", - "score": 2 - }, - { - "name": "Oracle", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Best Time to Buy and Sell Stock III", "id": 123, "frontend_id": 123, + "difficulty_lvl": 3, + "acceptance": 0.46468, "videos": [ { "embedded_url": "https://www.youtube.com/embed/37s1_xBiqH0", @@ -6493,7 +6383,7 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 7 }, { "name": "Uber", @@ -6501,7 +6391,7 @@ }, { "name": "Apple", - "score": 1 + "score": 2 } ] }, @@ -6509,6 +6399,8 @@ "title": "Binary Tree Maximum Path Sum", "id": 124, "frontend_id": 124, + "difficulty_lvl": 3, + "acceptance": 0.39411, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Hr5cWUld4vU", @@ -6534,50 +6426,38 @@ "companies": [ { "name": "DoorDash", - "score": 10 + "score": 18 }, { "name": "Amazon", - "score": 9 + "score": 17 }, { "name": "Facebook", - "score": 9 + "score": 16 }, { "name": "Microsoft", - "score": 4 + "score": 7 }, { "name": "Google", - "score": 3 - }, - { - "name": "ByteDance", - "score": 3 - }, - { - "name": "tiktok", - "score": 3 - }, - { - "name": "Oracle", - "score": 2 - }, - { - "name": "Snapchat", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 1 + "score": 6 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Valid Palindrome", "id": 125, "frontend_id": 125, + "difficulty_lvl": 1, + "acceptance": 0.45234, "videos": [ { "embedded_url": "https://www.youtube.com/embed/jJXJ16kPFWg", @@ -6603,46 +6483,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 94 }, { "name": "Amazon", - "score": 2 + "score": 8 }, { "name": "Microsoft", - "score": 2 + "score": 8 }, { "name": "Apple", - "score": 1 + "score": 5 }, { "name": "Adobe", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "American Express", - "score": 1 - }, - { - "name": "Yandex", - "score": 1 - }, - { - "name": "Wayfair", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Word Ladder II", "id": 126, "frontend_id": 126, + "difficulty_lvl": 3, + "acceptance": 0.27407, "videos": [ { "embedded_url": "https://www.youtube.com/embed/mIZJIuMpI2M", @@ -6664,7 +6536,7 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 9 }, { "name": "Box", @@ -6676,11 +6548,11 @@ }, { "name": "Snapchat", - "score": 2 + "score": 3 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -6688,6 +6560,8 @@ "title": "Word Ladder", "id": 127, "frontend_id": 127, + "difficulty_lvl": 3, + "acceptance": 0.37718, "videos": [ { "embedded_url": "https://www.youtube.com/embed/h9iTnkgv05E", @@ -6713,46 +6587,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 41 }, { "name": "Facebook", - "score": 3 + "score": 13 }, { "name": "LinkedIn", - "score": 2 + "score": 7 }, { "name": "Microsoft", - "score": 2 + "score": 6 }, { "name": "Qualtrics", - "score": 2 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Snapchat", - "score": 1 - }, - { - "name": "Lyft", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 + "score": 6 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Longest Consecutive Sequence", "id": 128, "frontend_id": 128, + "difficulty_lvl": 2, + "acceptance": 0.47693, "videos": [ { "embedded_url": "https://www.youtube.com/embed/P6RZZMu_maU", @@ -6778,11 +6644,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 9 }, { "name": "Microsoft", - "score": 9 + "score": 8 }, { "name": "Google", @@ -6790,38 +6656,26 @@ }, { "name": "Adobe", - "score": 2 + "score": 3 }, { "name": "Spotify", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Visa", - "score": 1 - }, - { - "name": "Qualtrics", - "score": 1 - }, - { - "name": "eBay", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Sum Root to Leaf Numbers", "id": 129, "frontend_id": 129, + "difficulty_lvl": 2, + "acceptance": 0.61643, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Jk16lZGFWxE", @@ -6847,22 +6701,28 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 31 }, { "name": "Microsoft", - "score": 1 + "score": 4 }, { "name": "Amazon", - "score": 1 + "score": 3 } + ], + "languages": [ + "cpp", + "java" ] }, { "title": "Surrounded Regions", "id": 130, "frontend_id": 130, + "difficulty_lvl": 2, + "acceptance": 0.37631, "videos": [ { "embedded_url": "https://www.youtube.com/embed/9z2BunfoZ5Y", @@ -6888,26 +6748,34 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 5 }, { "name": "Bloomberg", - "score": 7 + "score": 4 }, { "name": "Uber", - "score": 1 + "score": 2 }, { "name": "tiktok", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Palindrome Partitioning", "id": 131, "frontend_id": 131, + "difficulty_lvl": 2, + "acceptance": 0.65844, "videos": [ { "embedded_url": "https://www.youtube.com/embed/3jvWodd7ht0", @@ -6933,30 +6801,38 @@ "companies": [ { "name": "Apple", - "score": 10 + "score": 3 }, { "name": "Google", - "score": 10 + "score": 3 }, { "name": "tiktok", - "score": 10 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Facebook", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Palindrome Partitioning II", "id": 132, "frontend_id": 132, + "difficulty_lvl": 3, + "acceptance": 0.33607, "videos": [ { "embedded_url": "https://www.youtube.com/embed/3jvWodd7ht0", @@ -6982,7 +6858,7 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -6990,6 +6866,8 @@ "title": "Clone Graph", "id": 133, "frontend_id": 133, + "difficulty_lvl": 2, + "acceptance": 0.54221, "videos": [ { "embedded_url": "https://www.youtube.com/embed/mQeF6bN8hMk", @@ -7015,34 +6893,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 38 }, { "name": "Amazon", - "score": 2 + "score": 8 }, { "name": "Bloomberg", - "score": 2 + "score": 6 }, { "name": "Google", - "score": 2 + "score": 5 }, { "name": "Microsoft", - "score": 2 - }, - { - "name": "Pinterest", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Gas Station", "id": 134, "frontend_id": 134, + "difficulty_lvl": 2, + "acceptance": 0.45971, "videos": [ { "embedded_url": "https://www.youtube.com/embed/lJwbPZGo05A", @@ -7068,46 +6950,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 19 }, { "name": "IBM", - "score": 4 + "score": 8 }, { "name": "Microsoft", - "score": 4 + "score": 7 }, { "name": "Apple", - "score": 3 + "score": 5 }, { "name": "tiktok", - "score": 3 - }, - { - "name": "Walmart Global Tech", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 2 - }, - { - "name": "Adobe", - "score": 2 - }, - { - "name": "Uber", - "score": 1 + "score": 5 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Candy", "id": 135, "frontend_id": 135, + "difficulty_lvl": 3, + "acceptance": 0.41201, "videos": [ { "embedded_url": "https://www.youtube.com/embed/h6_lIwZYHQw", @@ -7133,14 +7007,19 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 8 } + ], + "languages": [ + "java" ] }, { "title": "Single Number", "id": 136, "frontend_id": 136, + "difficulty_lvl": 1, + "acceptance": 0.71295, "videos": [ { "embedded_url": "https://www.youtube.com/embed/qMPX1AOa83k", @@ -7166,15 +7045,15 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 8 }, { "name": "Microsoft", - "score": 6 + "score": 5 }, { "name": "Bloomberg", - "score": 6 + "score": 5 }, { "name": "Google", @@ -7183,29 +7062,21 @@ { "name": "Adobe", "score": 4 - }, - { - "name": "Apple", - "score": 4 - }, - { - "name": "Facebook", - "score": 4 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Atlassian", - "score": 1 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Single Number II", "id": 137, "frontend_id": 137, + "difficulty_lvl": 2, + "acceptance": 0.61297, "videos": [ { "embedded_url": "https://www.youtube.com/embed/cOFAmaMBVps", @@ -7231,7 +7102,7 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 5 } ] }, @@ -7239,6 +7110,8 @@ "title": "Copy List with Random Pointer", "id": 138, "frontend_id": 138, + "difficulty_lvl": 2, + "acceptance": 0.5243, "videos": [ { "embedded_url": "https://www.youtube.com/embed/5Y2EiZST97Y", @@ -7264,34 +7137,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 64 }, { "name": "Amazon", - "score": 4 + "score": 19 }, { "name": "Microsoft", - "score": 2 + "score": 12 }, { "name": "Bloomberg", - "score": 1 + "score": 3 }, { "name": "Google", - "score": 1 - }, - { - "name": "Apple", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Word Break", "id": 139, "frontend_id": 139, + "difficulty_lvl": 2, + "acceptance": 0.46158, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Sx9NNgInc3A", @@ -7317,46 +7194,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 34 }, { "name": "Facebook", - "score": 10 + "score": 33 }, { "name": "Apple", - "score": 3 + "score": 10 }, { "name": "Qualtrics", - "score": 2 + "score": 7 }, { "name": "Microsoft", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 2 - }, - { - "name": "Oracle", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "Google", - "score": 1 + "score": 5 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Word Break II", "id": 140, "frontend_id": 140, + "difficulty_lvl": 3, + "acceptance": 0.45993, "videos": [ { "embedded_url": "https://www.youtube.com/embed/fNVs1J2KCyo", @@ -7377,40 +7246,32 @@ { "embedded_url": "https://www.youtube.com/embed/8DV-cXg6Rh0", "channel": "Cracking FAANG" + }, + { + "embedded_url": "https://www.youtube.com/embed/QgLKdluDo08", + "channel": "NeetCodeIO" } ], "companies": [ { "name": "Facebook", - "score": 10 + "score": 22 }, { "name": "Amazon", - "score": 5 + "score": 11 }, { "name": "Bloomberg", - "score": 3 + "score": 7 }, { "name": "Apple", - "score": 2 + "score": 4 }, { "name": "Adobe", - "score": 2 - }, - { - "name": "Google", - "score": 1 - }, - { - "name": "Microsoft", - "score": 1 - }, - { - "name": "Snapchat", - "score": 1 + "score": 4 } ] }, @@ -7418,6 +7279,8 @@ "title": "Linked List Cycle", "id": 141, "frontend_id": 141, + "difficulty_lvl": 1, + "acceptance": 0.48048, "videos": [ { "embedded_url": "https://www.youtube.com/embed/gBTe7lFR3vc", @@ -7443,7 +7306,7 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 9 }, { "name": "Spotify", @@ -7451,30 +7314,30 @@ }, { "name": "Microsoft", - "score": 2 + "score": 3 }, { "name": "Oracle", - "score": 2 + "score": 3 }, { "name": "Visa", - "score": 2 - }, - { - "name": "Google", - "score": 1 - }, - { - "name": "Goldman Sachs", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Linked List Cycle II", "id": 142, "frontend_id": 142, + "difficulty_lvl": 2, + "acceptance": 0.49666, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Yn5xqbK95Uw", @@ -7500,11 +7363,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 7 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -7512,6 +7375,8 @@ "title": "Reorder List", "id": 143, "frontend_id": 143, + "difficulty_lvl": 2, + "acceptance": 0.5387, "videos": [ { "embedded_url": "https://www.youtube.com/embed/S5bfdUTrKLM", @@ -7541,34 +7406,34 @@ }, { "name": "Microsoft", - "score": 3 + "score": 4 }, { "name": "Adobe", - "score": 2 + "score": 3 }, { "name": "Facebook", - "score": 1 + "score": 2 }, { "name": "Bloomberg", - "score": 1 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Samsung", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Binary Tree Preorder Traversal", "id": 144, "frontend_id": 144, + "difficulty_lvl": 1, + "acceptance": 0.67805, "videos": [ { "embedded_url": "https://www.youtube.com/embed/afTpieEZXck", @@ -7594,18 +7459,24 @@ "companies": [ { "name": "Adobe", - "score": 6 + "score": 2 }, { "name": "Google", - "score": 6 + "score": 2 } + ], + "languages": [ + "python", + "cpp" ] }, { "title": "Binary Tree Postorder Traversal", "id": 145, "frontend_id": 145, + "difficulty_lvl": 1, + "acceptance": 0.69043, "videos": [ { "embedded_url": "https://www.youtube.com/embed/QhszUQhGGlA", @@ -7631,18 +7502,25 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 }, { "name": "TuSimple", - "score": 6 + "score": 2 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "LRU Cache", "id": 146, "frontend_id": 146, + "difficulty_lvl": 2, + "acceptance": 0.41511, "videos": [ { "embedded_url": "https://www.youtube.com/embed/7ABFKPK2hD4", @@ -7668,50 +7546,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 117 }, { "name": "Facebook", - "score": 5 + "score": 60 }, { "name": "Microsoft", - "score": 5 + "score": 52 }, { "name": "Apple", - "score": 2 + "score": 20 }, { "name": "Bloomberg", - "score": 2 - }, - { - "name": "Oracle", - "score": 2 - }, - { - "name": "Salesforce", - "score": 1 - }, - { - "name": "Google", - "score": 1 - }, - { - "name": "Intuit", - "score": 1 - }, - { - "name": "Twilio", - "score": 1 + "score": 19 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Insertion Sort List", "id": 147, "frontend_id": 147, + "difficulty_lvl": 2, + "acceptance": 0.51752, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Kk6mXAzqX3Y", @@ -7737,14 +7603,21 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Sort List", "id": 148, "frontend_id": 148, + "difficulty_lvl": 2, + "acceptance": 0.56001, "videos": [ { "embedded_url": "https://www.youtube.com/embed/TGveA1oFhrc", @@ -7770,7 +7643,7 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 6 }, { "name": "Microsoft", @@ -7786,14 +7659,21 @@ }, { "name": "Apple", - "score": 1 + "score": 2 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Max Points on a Line", "id": 149, "frontend_id": 149, + "difficulty_lvl": 3, + "acceptance": 0.25587, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Y8_WxLKYQ6Q", @@ -7819,7 +7699,7 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 8 }, { "name": "Amazon", @@ -7827,22 +7707,29 @@ }, { "name": "Google", - "score": 2 + "score": 3 }, { "name": "Oracle", - "score": 2 + "score": 3 }, { "name": "Sprinklr", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp" ] }, { "title": "Evaluate Reverse Polish Notation", "id": 150, "frontend_id": 150, + "difficulty_lvl": 2, + "acceptance": 0.4703, "videos": [ { "embedded_url": "https://www.youtube.com/embed/iu0082c4HDE", @@ -7868,38 +7755,38 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 73 }, { "name": "LinkedIn", - "score": 2 + "score": 8 }, { "name": "Amazon", - "score": 2 + "score": 6 }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "Facebook", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 - }, - { - "name": "Yandex", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Reverse Words in a String", "id": 151, "frontend_id": 151, + "difficulty_lvl": 2, + "acceptance": 0.35468, "videos": [ { "embedded_url": "https://www.youtube.com/embed/vhnRAaJybpA", @@ -7921,27 +7808,23 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 34 }, { "name": "Apple", - "score": 1 + "score": 3 }, { "name": "LinkedIn", - "score": 1 + "score": 2 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Google", - "score": 1 - }, - { - "name": "Visa", - "score": 1 + "score": 2 } ] }, @@ -7949,6 +7832,8 @@ "title": "Maximum Product Subarray", "id": 152, "frontend_id": 152, + "difficulty_lvl": 2, + "acceptance": 0.34869, "videos": [ { "embedded_url": "https://www.youtube.com/embed/lXVy6YWFcRM", @@ -7974,38 +7859,38 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 29 }, { "name": "Amazon", - "score": 6 + "score": 17 }, { "name": "Microsoft", - "score": 1 + "score": 3 }, { "name": "Bloomberg", - "score": 1 + "score": 3 }, { "name": "Infosys", - "score": 1 - }, - { - "name": "Google", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Find Minimum in Rotated Sorted Array", "id": 153, "frontend_id": 153, + "difficulty_lvl": 2, + "acceptance": 0.49257, "videos": [ { "embedded_url": "https://www.youtube.com/embed/nIVW4P8b1VA", @@ -8031,38 +7916,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 8 }, { "name": "Facebook", - "score": 10 + "score": 8 }, { "name": "Microsoft", - "score": 8 + "score": 7 }, { "name": "Adobe", - "score": 2 + "score": 3 }, { "name": "Goldman Sachs", - "score": 1 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Find Minimum in Rotated Sorted Array II", "id": 154, "frontend_id": 154, + "difficulty_lvl": 3, + "acceptance": 0.43496, "videos": [ { "embedded_url": "https://www.youtube.com/embed/BfsyDRRTUI4", @@ -8088,7 +7973,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -8096,6 +7981,8 @@ "title": "Min Stack", "id": 155, "frontend_id": 155, + "difficulty_lvl": 2, + "acceptance": 0.5281, "videos": [ { "embedded_url": "https://www.youtube.com/embed/qkLl7nAwDPo", @@ -8121,42 +8008,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 18 }, { "name": "Microsoft", - "score": 6 + "score": 10 }, { "name": "Bloomberg", - "score": 4 + "score": 7 }, { "name": "Facebook", - "score": 2 + "score": 4 }, { "name": "Google", - "score": 2 - }, - { - "name": "Salesforce", - "score": 2 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Binary Tree Upside Down", "id": 156, "frontend_id": 156, + "difficulty_lvl": 2, + "acceptance": 0.6215, "videos": [ { "embedded_url": "https://www.youtube.com/embed/JjaJQi77984", @@ -8182,7 +8065,7 @@ "companies": [ { "name": "LinkedIn", - "score": 6 + "score": 9 } ] }, @@ -8190,6 +8073,8 @@ "title": "Read N Characters Given Read4", "id": 157, "frontend_id": 157, + "difficulty_lvl": 1, + "acceptance": 0.41088, "videos": [ { "embedded_url": "https://www.youtube.com/embed/x7pg4cTHu4g", @@ -8215,23 +8100,23 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 4 }, { "name": "Facebook", - "score": 6 + "score": 3 }, { "name": "Rubrik", - "score": 1 + "score": 2 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Lyft", - "score": 1 + "score": 2 } ] }, @@ -8239,6 +8124,8 @@ "title": "Read N Characters Given read4 II - Call Multiple Times", "id": 158, "frontend_id": 158, + "difficulty_lvl": 3, + "acceptance": 0.41784, "videos": [ { "embedded_url": "https://www.youtube.com/embed/x7pg4cTHu4g", @@ -8256,12 +8143,15 @@ "embedded_url": "https://www.youtube.com/embed/9eCg0lnsQbM", "channel": "WorkWithGoogler" } - ] + ], + "companies": [] }, { "title": "Longest Substring with At Most Two Distinct Characters", "id": 159, "frontend_id": 159, + "difficulty_lvl": 2, + "acceptance": 0.54073, "videos": [ { "embedded_url": "https://www.youtube.com/embed/bsNWeUON7Po", @@ -8287,11 +8177,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -8299,6 +8189,8 @@ "title": "Intersection of Two Linked Lists", "id": 160, "frontend_id": 160, + "difficulty_lvl": 1, + "acceptance": 0.55401, "videos": [ { "embedded_url": "https://www.youtube.com/embed/D0X0BONOQhI", @@ -8324,15 +8216,15 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 8 }, { "name": "Amazon", - "score": 10 + "score": 8 }, { "name": "LinkedIn", - "score": 7 + "score": 6 }, { "name": "Facebook", @@ -8340,26 +8232,22 @@ }, { "name": "Adobe", - "score": 2 - }, - { - "name": "Nvidia", - "score": 2 - }, - { - "name": "tiktok", - "score": 2 - }, - { - "name": "Airbnb", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "One Edit Distance", "id": 161, "frontend_id": 161, + "difficulty_lvl": 2, + "acceptance": 0.34169, "videos": [ { "embedded_url": "https://www.youtube.com/embed/XYi2-LPrwm4", @@ -8385,15 +8273,15 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 7 }, { "name": "Google", - "score": 6 + "score": 5 }, { "name": "Yahoo", - "score": 1 + "score": 2 } ] }, @@ -8401,6 +8289,8 @@ "title": "Find Peak Element", "id": 162, "frontend_id": 162, + "difficulty_lvl": 2, + "acceptance": 0.45824, "videos": [ { "embedded_url": "https://www.youtube.com/embed/kMzJy9es7Hc", @@ -8426,46 +8316,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 82 }, { "name": "Amazon", - "score": 2 + "score": 8 }, { "name": "Google", - "score": 2 + "score": 7 }, { "name": "Uber", - "score": 1 + "score": 5 }, { "name": "Snapchat", - "score": 1 - }, - { - "name": "HRT", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Microsoft", - "score": 1 - }, - { - "name": "Roblox", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Missing Ranges", "id": 163, "frontend_id": 163, + "difficulty_lvl": 1, + "acceptance": 0.32592, "videos": [ { "embedded_url": "https://www.youtube.com/embed/EKJQJBFCoE4", @@ -8491,7 +8373,7 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 8 } ] }, @@ -8499,6 +8381,8 @@ "title": "Maximum Gap", "id": 164, "frontend_id": 164, + "difficulty_lvl": 3, + "acceptance": 0.43962, "videos": [ { "embedded_url": "https://www.youtube.com/embed/VT-6zwGKYwA", @@ -8524,11 +8408,11 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Facebook", - "score": 6 + "score": 2 } ] }, @@ -8536,6 +8420,8 @@ "title": "Compare Version Numbers", "id": 165, "frontend_id": 165, + "difficulty_lvl": 2, + "acceptance": 0.36078, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Z4Af1_t7wzk", @@ -8561,19 +8447,19 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 7 }, { "name": "Microsoft", - "score": 5 + "score": 4 }, { "name": "Arista Networks", - "score": 1 + "score": 2 }, { "name": "Nutanix", - "score": 1 + "score": 2 } ] }, @@ -8581,6 +8467,8 @@ "title": "Fraction to Recurring Decimal", "id": 166, "frontend_id": 166, + "difficulty_lvl": 2, + "acceptance": 0.24472, "videos": [ { "embedded_url": "https://www.youtube.com/embed/a-62yK1S1O4", @@ -8606,19 +8494,19 @@ "companies": [ { "name": "Mathworks", - "score": 10 + "score": 5 }, { "name": "Facebook", - "score": 6 + "score": 4 }, { "name": "Goldman Sachs", - "score": 1 + "score": 3 }, { "name": "Airbnb", - "score": 1 + "score": 3 } ] }, @@ -8626,6 +8514,8 @@ "title": "Two Sum II - Input Array Is Sorted", "id": 167, "frontend_id": 167, + "difficulty_lvl": 2, + "acceptance": 0.60186, "videos": [ { "embedded_url": "https://www.youtube.com/embed/cQ1Oz4ckceM", @@ -8647,12 +8537,21 @@ "embedded_url": "https://www.youtube.com/embed/QHKrz0c7E3U", "channel": "Prakash Shukla" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Excel Sheet Column Title", "id": 168, "frontend_id": 168, + "difficulty_lvl": 1, + "acceptance": 0.36237, "videos": [ { "embedded_url": "https://www.youtube.com/embed/UcTKk2y_3s4", @@ -8674,22 +8573,28 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Amazon", - "score": 1 + "score": 2 } + ], + "languages": [ + "python", + "java" ] }, { "title": "Majority Element", "id": 169, "frontend_id": 169, + "difficulty_lvl": 1, + "acceptance": 0.63864, "videos": [ { "embedded_url": "https://www.youtube.com/embed/7pnhv842keE", @@ -8715,7 +8620,7 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 9 }, { "name": "Microsoft", @@ -8731,30 +8636,22 @@ }, { "name": "Google", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 2 - }, - { - "name": "Facebook", - "score": 1 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Rubrik", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Two Sum III - Data structure design", "id": 170, "frontend_id": 170, + "difficulty_lvl": 1, + "acceptance": 0.3767, "videos": [ { "embedded_url": "https://www.youtube.com/embed/iN5pHWG0JyY", @@ -8776,12 +8673,20 @@ "embedded_url": "https://www.youtube.com/embed/I5uCYjbVbb8", "channel": "Hello Aki" } + ], + "companies": [ + { + "name": "LinkedIn", + "score": 2 + } ] }, { "title": "Excel Sheet Column Number", "id": 171, "frontend_id": 171, + "difficulty_lvl": 1, + "acceptance": 0.62574, "videos": [ { "embedded_url": "https://www.youtube.com/embed/g-l4UpF62x0", @@ -8803,15 +8708,15 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 6 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Apple", - "score": 1 + "score": 2 } ] }, @@ -8819,6 +8724,8 @@ "title": "Factorial Trailing Zeroes", "id": 172, "frontend_id": 172, + "difficulty_lvl": 2, + "acceptance": 0.42561, "videos": [ { "embedded_url": "https://www.youtube.com/embed/zc6QckkuEa4", @@ -8844,11 +8751,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Oracle", - "score": 1 + "score": 2 } ] }, @@ -8856,6 +8763,8 @@ "title": "Binary Search Tree Iterator", "id": 173, "frontend_id": 173, + "difficulty_lvl": 2, + "acceptance": 0.70432, "videos": [ { "embedded_url": "https://www.youtube.com/embed/RXy5RzGF5wo", @@ -8881,34 +8790,36 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 50 }, { "name": "Microsoft", - "score": 2 + "score": 9 }, { "name": "Amazon", - "score": 1 + "score": 4 }, { "name": "Bloomberg", - "score": 1 + "score": 4 }, { "name": "Salesforce", - "score": 1 - }, - { - "name": "Google", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "java" ] }, { "title": "Dungeon Game", "id": 174, "frontend_id": 174, + "difficulty_lvl": 3, + "acceptance": 0.37652, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4uUGxZXoR5o", @@ -8934,11 +8845,11 @@ "companies": [ { "name": "Uber", - "score": 10 + "score": 12 }, { "name": "Amazon", - "score": 1 + "score": 2 } ] }, @@ -8946,6 +8857,8 @@ "title": "Combine Two Tables", "id": 175, "frontend_id": 175, + "difficulty_lvl": 1, + "acceptance": 0.74701, "videos": [ { "embedded_url": "https://www.youtube.com/embed/AOHaVy6XapM", @@ -8967,12 +8880,15 @@ "embedded_url": "https://www.youtube.com/embed/CEGXb6XYIo0", "channel": "LEETCODE MASTER" } - ] + ], + "companies": [] }, { "title": "Second Highest Salary", "id": 176, "frontend_id": 176, + "difficulty_lvl": 2, + "acceptance": 0.38483, "videos": [ { "embedded_url": "https://www.youtube.com/embed/mFdyfB7RdgA", @@ -8986,12 +8902,15 @@ "embedded_url": "https://www.youtube.com/embed/Sow1S_aMpCI", "channel": "Everyday Data Science" } - ] + ], + "companies": [] }, { "title": "Nth Highest Salary", "id": 177, "frontend_id": 177, + "difficulty_lvl": 2, + "acceptance": 0.37987, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ms-99n1KbT0", @@ -9013,12 +8932,15 @@ "embedded_url": "https://www.youtube.com/embed/bnMvWZ1PZKA", "channel": "Trendytech Insights" } - ] + ], + "companies": [] }, { "title": "Rank Scores", "id": 178, "frontend_id": 178, + "difficulty_lvl": 2, + "acceptance": 0.60827, "videos": [ { "embedded_url": "https://www.youtube.com/embed/49Ogngjeljc", @@ -9036,12 +8958,15 @@ "embedded_url": "https://www.youtube.com/embed/IEaEdvzmz2g", "channel": "Everyday Data Science" } - ] + ], + "companies": [] }, { "title": "Largest Number", "id": 179, "frontend_id": 179, + "difficulty_lvl": 2, + "acceptance": 0.35007, "videos": [ { "embedded_url": "https://www.youtube.com/embed/WDx6Y4i4xJ8", @@ -9067,11 +8992,11 @@ "companies": [ { "name": "Salesforce", - "score": 10 + "score": 6 }, { "name": "Microsoft", - "score": 6 + "score": 4 }, { "name": "Facebook", @@ -9079,34 +9004,26 @@ }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Apple", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "Goldman Sachs", - "score": 1 - }, - { - "name": "Visa", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Consecutive Numbers", "id": 180, "frontend_id": 180, + "difficulty_lvl": 2, + "acceptance": 0.46545, "videos": [ { "embedded_url": "https://www.youtube.com/embed/iNaLjT9ybYI", @@ -9128,12 +9045,15 @@ "embedded_url": "https://www.youtube.com/embed/NNMj258II-w", "channel": "Cloud Concepts By Chandra" } - ] + ], + "companies": [] }, { "title": "Employees Earning More Than Their Managers", "id": 181, "frontend_id": 181, + "difficulty_lvl": 1, + "acceptance": 0.69104, "videos": [ { "embedded_url": "https://www.youtube.com/embed/8TabzYBUo-o", @@ -9155,12 +9075,15 @@ "embedded_url": "https://www.youtube.com/embed/wlnOgs0PT_8", "channel": "Everyday Data Science" } - ] + ], + "companies": [] }, { "title": "Duplicate Emails", "id": 182, "frontend_id": 182, + "difficulty_lvl": 1, + "acceptance": 0.70905, "videos": [ { "embedded_url": "https://www.youtube.com/embed/V0-33jrJgwo", @@ -9178,12 +9101,15 @@ "embedded_url": "https://www.youtube.com/embed/OBxq2iuRVxw", "channel": "Everyday Data Science" } - ] + ], + "companies": [] }, { "title": "Customers Who Never Order", "id": 183, "frontend_id": 183, + "difficulty_lvl": 1, + "acceptance": 0.68695, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ILMmCkgeAKA", @@ -9205,12 +9131,15 @@ "embedded_url": "https://www.youtube.com/embed/ALC_9GSRbC8", "channel": "SANKHADIP DEBNATH" } - ] + ], + "companies": [] }, { "title": "Department Highest Salary", "id": 184, "frontend_id": 184, + "difficulty_lvl": 2, + "acceptance": 0.50321, "videos": [ { "embedded_url": "https://www.youtube.com/embed/oAboCsqLX2g", @@ -9232,12 +9161,15 @@ "embedded_url": "https://www.youtube.com/embed/REQj0KxnLHI", "channel": "Trendytech Insights" } - ] + ], + "companies": [] }, { "title": "Department Top Three Salaries", "id": 185, "frontend_id": 185, + "difficulty_lvl": 3, + "acceptance": 0.5083, "videos": [ { "embedded_url": "https://www.youtube.com/embed/OsMuAspJAkc", @@ -9259,12 +9191,15 @@ "embedded_url": "https://www.youtube.com/embed/qZnTNnSmSUA", "channel": "Tech Revisions" } - ] + ], + "companies": [] }, { "title": "Reverse Words in a String II", "id": 186, "frontend_id": 186, + "difficulty_lvl": 2, + "acceptance": 0.53356, "videos": [ { "embedded_url": "https://www.youtube.com/embed/SUrrSVfk7pk", @@ -9286,7 +9221,7 @@ "companies": [ { "name": "Microsoft", - "score": 6 + "score": 4 } ] }, @@ -9294,6 +9229,8 @@ "title": "Repeated DNA Sequences", "id": 187, "frontend_id": 187, + "difficulty_lvl": 2, + "acceptance": 0.47511, "videos": [ { "embedded_url": "https://www.youtube.com/embed/FzTYfsmtOso", @@ -9319,18 +9256,26 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 5 }, { "name": "Amazon", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Best Time to Buy and Sell Stock IV", "id": 188, "frontend_id": 188, + "difficulty_lvl": 3, + "acceptance": 0.40364, "videos": [ { "embedded_url": "https://www.youtube.com/embed/6928FkPhGUA", @@ -9356,23 +9301,23 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Apple", - "score": 6 + "score": 3 }, { "name": "Nvidia", - "score": 6 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Citadel", - "score": 1 + "score": 2 } ] }, @@ -9380,6 +9325,8 @@ "title": "Rotate Array", "id": 189, "frontend_id": 189, + "difficulty_lvl": 2, + "acceptance": 0.39681, "videos": [ { "embedded_url": "https://www.youtube.com/embed/BHr381Guz3Y", @@ -9405,7 +9352,7 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 9 }, { "name": "Microsoft", @@ -9417,26 +9364,26 @@ }, { "name": "Facebook", - "score": 1 + "score": 2 }, { "name": "Yahoo", - "score": 1 - }, - { - "name": "tcs", - "score": 1 - }, - { - "name": "Salesforce", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Reverse Bits", "id": 190, "frontend_id": 190, + "difficulty_lvl": 1, + "acceptance": 0.55398, "videos": [ { "embedded_url": "https://www.youtube.com/embed/UcoN6UjAI64", @@ -9462,30 +9409,38 @@ "companies": [ { "name": "Apple", - "score": 10 + "score": 3 }, { "name": "Facebook", - "score": 10 + "score": 3 }, { "name": "Qualcomm", - "score": 10 + "score": 3 }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "Google", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Number of 1 Bits", "id": 191, "frontend_id": 191, + "difficulty_lvl": 1, + "acceptance": 0.67754, "videos": [ { "embedded_url": "https://www.youtube.com/embed/5Km3utixwZs", @@ -9511,34 +9466,37 @@ "companies": [ { "name": "Box", - "score": 10 + "score": 12 }, { "name": "Facebook", - "score": 3 + "score": 4 }, { "name": "Cisco", - "score": 3 + "score": 4 }, { "name": "Amazon", - "score": 2 + "score": 3 }, { "name": "Google", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 + "score": 2 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Word Frequency", "id": 192, "frontend_id": 192, + "difficulty_lvl": 2, + "acceptance": 0.25459, "videos": [ { "embedded_url": "https://www.youtube.com/embed/6AJJVQi0HZI", @@ -9556,12 +9514,15 @@ "embedded_url": "https://www.youtube.com/embed/CzJQjPWgTsc", "channel": "Hindi Practical Programmer" } - ] + ], + "companies": [] }, { "title": "Valid Phone Numbers", "id": 193, "frontend_id": 193, + "difficulty_lvl": 1, + "acceptance": 0.25825, "videos": [ { "embedded_url": "https://www.youtube.com/embed/TiE-sxAHOVQ", @@ -9583,12 +9544,15 @@ "embedded_url": "https://www.youtube.com/embed/0xJeBuLCycM", "channel": "WinEi" } - ] + ], + "companies": [] }, { "title": "Transpose File", "id": 194, "frontend_id": 194, + "difficulty_lvl": 2, + "acceptance": 0.25402, "videos": [ { "embedded_url": "https://www.youtube.com/embed/VDw9y6nX_ss", @@ -9610,12 +9574,15 @@ "embedded_url": "https://www.youtube.com/embed/Qs6sP6IXPzs", "channel": "The Exception Handler" } - ] + ], + "companies": [] }, { "title": "Tenth Line", "id": 195, "frontend_id": 195, + "difficulty_lvl": 1, + "acceptance": 0.32878, "videos": [ { "embedded_url": "https://www.youtube.com/embed/iQUQlpzOev8", @@ -9637,12 +9604,15 @@ "embedded_url": "https://www.youtube.com/embed/BorMeNkAsgc", "channel": "WinEi" } - ] + ], + "companies": [] }, { "title": "Delete Duplicate Emails", "id": 196, "frontend_id": 196, + "difficulty_lvl": 1, + "acceptance": 0.60966, "videos": [ { "embedded_url": "https://www.youtube.com/embed/V0-33jrJgwo", @@ -9664,12 +9634,15 @@ "embedded_url": "https://www.youtube.com/embed/5tBvSOfFPEw", "channel": "GeekCoders" } - ] + ], + "companies": [] }, { "title": "Rising Temperature", "id": 197, "frontend_id": 197, + "difficulty_lvl": 1, + "acceptance": 0.45272, "videos": [ { "embedded_url": "https://www.youtube.com/embed/09wjf87VRs0", @@ -9691,12 +9664,15 @@ "embedded_url": "https://www.youtube.com/embed/8TagsAcEujA", "channel": "Michelle\u5c0f\u68a6\u60f3\u5bb6" } - ] + ], + "companies": [] }, { "title": "House Robber", "id": 198, "frontend_id": 198, + "difficulty_lvl": 2, + "acceptance": 0.4974, "videos": [ { "embedded_url": "https://www.youtube.com/embed/73r3KWiEvyk", @@ -9718,46 +9694,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 21 }, { "name": "Apple", - "score": 4 + "score": 8 }, { "name": "Google", - "score": 3 + "score": 7 }, { "name": "Cisco", - "score": 3 + "score": 6 }, { "name": "Microsoft", - "score": 2 - }, - { - "name": "Adobe", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Facebook", - "score": 1 - }, - { - "name": "Walmart Global Tech", - "score": 1 + "score": 5 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Binary Tree Right Side View", "id": 199, "frontend_id": 199, + "difficulty_lvl": 2, + "acceptance": 0.6209, "videos": [ { "embedded_url": "https://www.youtube.com/embed/d4zLyf32e3I", @@ -9783,46 +9751,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 108 }, { "name": "Amazon", - "score": 2 + "score": 10 }, { "name": "Bloomberg", - "score": 1 + "score": 4 }, { "name": "Qualtrics", - "score": 1 + "score": 4 }, { "name": "Oracle", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Microsoft", - "score": 1 - }, - { - "name": "DoorDash", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Number of Islands", "id": 200, "frontend_id": 200, + "difficulty_lvl": 2, + "acceptance": 0.57576, "videos": [ { "embedded_url": "https://www.youtube.com/embed/pV2kpPD66nE", @@ -9848,50 +9808,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 103 }, { "name": "Microsoft", - "score": 4 + "score": 42 }, { "name": "Facebook", - "score": 4 + "score": 34 }, { "name": "Bloomberg", - "score": 4 + "score": 33 }, { "name": "Google", - "score": 2 - }, - { - "name": "LinkedIn", - "score": 2 - }, - { - "name": "Apple", - "score": 2 - }, - { - "name": "Oracle", - "score": 1 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Salesforce", - "score": 1 + "score": 21 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Bitwise AND of Numbers Range", "id": 201, "frontend_id": 201, + "difficulty_lvl": 2, + "acceptance": 0.42585, "videos": [ { "embedded_url": "https://www.youtube.com/embed/-qrpJykY2gE", @@ -9917,7 +9865,7 @@ "companies": [ { "name": "Adobe", - "score": 6 + "score": 2 } ] }, @@ -9925,6 +9873,8 @@ "title": "Happy Number", "id": 202, "frontend_id": 202, + "difficulty_lvl": 1, + "acceptance": 0.55157, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ljz85bxOYJ0", @@ -9950,34 +9900,38 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 22 }, { "name": "Apple", - "score": 3 + "score": 7 }, { "name": "Amazon", - "score": 2 + "score": 6 }, { "name": "Adobe", - "score": 2 + "score": 4 }, { "name": "Paypal", - "score": 2 - }, - { - "name": "Uber", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Remove Linked List Elements", "id": 203, "frontend_id": 203, + "difficulty_lvl": 1, + "acceptance": 0.46871, "videos": [ { "embedded_url": "https://www.youtube.com/embed/JI71sxtHTng", @@ -10003,26 +9957,34 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Microsoft", - "score": 6 + "score": 3 }, { "name": "Facebook", - "score": 1 + "score": 2 }, { "name": "Adobe", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Count Primes", "id": 204, "frontend_id": 204, + "difficulty_lvl": 2, + "acceptance": 0.33242, "videos": [ { "embedded_url": "https://www.youtube.com/embed/5LMkddl2NCk", @@ -10048,31 +10010,23 @@ "companies": [ { "name": "Capital One", - "score": 10 + "score": 14 }, { "name": "Microsoft", - "score": 2 + "score": 4 }, { "name": "Amazon", - "score": 2 + "score": 4 }, { "name": "Apple", - "score": 1 + "score": 2 }, { "name": "Adobe", - "score": 1 - }, - { - "name": "SAP", - "score": 1 - }, - { - "name": "tiktok", - "score": 1 + "score": 2 } ] }, @@ -10080,6 +10034,8 @@ "title": "Isomorphic Strings", "id": 205, "frontend_id": 205, + "difficulty_lvl": 1, + "acceptance": 0.43284, "videos": [ { "embedded_url": "https://www.youtube.com/embed/7yF-U1hLEqQ", @@ -10105,22 +10061,30 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 7 }, { "name": "LinkedIn", - "score": 8 + "score": 6 }, { "name": "Google", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Reverse Linked List", "id": 206, "frontend_id": 206, + "difficulty_lvl": 1, + "acceptance": 0.74422, "videos": [ { "embedded_url": "https://www.youtube.com/embed/G0_I-ZF0S38", @@ -10142,46 +10106,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 12 }, { "name": "Microsoft", - "score": 8 + "score": 10 }, { "name": "Apple", - "score": 5 + "score": 6 }, { "name": "Bloomberg", - "score": 3 + "score": 4 }, { "name": "Facebook", - "score": 3 - }, - { - "name": "Google", - "score": 2 - }, - { - "name": "Yandex", - "score": 2 - }, - { - "name": "Intuit", - "score": 1 - }, - { - "name": "Nvidia", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Course Schedule", "id": 207, "frontend_id": 207, + "difficulty_lvl": 2, + "acceptance": 0.46134, "videos": [ { "embedded_url": "https://www.youtube.com/embed/EgI5nU9etnU", @@ -10203,46 +10159,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 28 }, { "name": "Microsoft", - "score": 4 + "score": 10 }, { "name": "Facebook", - "score": 3 + "score": 9 }, { "name": "tiktok", - "score": 3 + "score": 7 }, { "name": "Google", - "score": 2 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 + "score": 5 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Implement Trie (Prefix Tree)", "id": 208, "frontend_id": 208, + "difficulty_lvl": 2, + "acceptance": 0.63481, "videos": [ { "embedded_url": "https://www.youtube.com/embed/oobqoCJlHA0", @@ -10264,12 +10212,21 @@ "embedded_url": "https://www.youtube.com/embed/Br7Wt4V5o1c", "channel": "Fisher Coder" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Minimum Size Subarray Sum", "id": 209, "frontend_id": 209, + "difficulty_lvl": 2, + "acceptance": 0.4636, "videos": [ { "embedded_url": "https://www.youtube.com/embed/aYqYMIqZx5s", @@ -10295,11 +10252,11 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 8 }, { "name": "Amazon", - "score": 7 + "score": 6 }, { "name": "Microsoft", @@ -10307,30 +10264,26 @@ }, { "name": "Bloomberg", - "score": 1 + "score": 2 }, { "name": "Goldman Sachs", - "score": 1 - }, - { - "name": "Google", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Arcesium", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Course Schedule II", "id": 210, "frontend_id": 210, + "difficulty_lvl": 2, + "acceptance": 0.49065, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Akt3glAwyfY", @@ -10356,50 +10309,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 34 }, { "name": "Google", - "score": 3 + "score": 11 }, { "name": "Microsoft", - "score": 3 + "score": 10 }, { "name": "Robinhood", - "score": 2 + "score": 7 }, { "name": "Facebook", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Roblox", - "score": 1 - }, - { - "name": "Twilio", - "score": 1 - }, - { - "name": "Wayfair", - "score": 1 - }, - { - "name": "Karat", - "score": 1 + "score": 5 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Design Add and Search Words Data Structure", "id": 211, "frontend_id": 211, + "difficulty_lvl": 2, + "acceptance": 0.4424, "videos": [ { "embedded_url": "https://www.youtube.com/embed/BTf05gs_8iU", @@ -10421,12 +10362,21 @@ "embedded_url": "https://www.youtube.com/embed/zDyoxl29yns", "channel": "AlgoJS" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Word Search II", "id": 212, "frontend_id": 212, + "difficulty_lvl": 3, + "acceptance": 0.3612, "videos": [ { "embedded_url": "https://www.youtube.com/embed/asbcE9mZz_U", @@ -10452,50 +10402,38 @@ "companies": [ { "name": "Uber", - "score": 10 + "score": 36 }, { "name": "Amazon", - "score": 9 + "score": 31 }, { "name": "Cisco", - "score": 4 + "score": 16 }, { "name": "Microsoft", - "score": 2 + "score": 7 }, { "name": "Facebook", - "score": 1 - }, - { - "name": "Snapchat", - "score": 1 - }, - { - "name": "Google", - "score": 1 - }, - { - "name": "Twitter", - "score": 1 - }, - { - "name": "Karat", - "score": 1 - }, - { - "name": "Apple", - "score": 1 + "score": 5 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "House Robber II", "id": 213, "frontend_id": 213, + "difficulty_lvl": 2, + "acceptance": 0.4135, "videos": [ { "embedded_url": "https://www.youtube.com/embed/rWAJCfYYOvM", @@ -10521,18 +10459,26 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 9 }, { "name": "Amazon", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Shortest Palindrome", "id": 214, "frontend_id": 214, + "difficulty_lvl": 3, + "acceptance": 0.32542, "videos": [ { "embedded_url": "https://www.youtube.com/embed/9vo9NgIXifY", @@ -10558,15 +10504,15 @@ "companies": [ { "name": "Bloomberg", - "score": 10 + "score": 3 }, { "name": "Microsoft", - "score": 10 + "score": 3 }, { "name": "Apple", - "score": 1 + "score": 2 } ] }, @@ -10574,6 +10520,8 @@ "title": "Kth Largest Element in an Array", "id": 215, "frontend_id": 215, + "difficulty_lvl": 2, + "acceptance": 0.66763, "videos": [ { "embedded_url": "https://www.youtube.com/embed/XEmy13g1Qxc", @@ -10595,46 +10543,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 140 }, { "name": "Amazon", - "score": 2 + "score": 16 }, { "name": "LinkedIn", - "score": 2 + "score": 14 }, { "name": "Microsoft", - "score": 2 + "score": 12 }, { "name": "Google", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "tiktok", - "score": 1 - }, - { - "name": "Goldman Sachs", - "score": 1 + "score": 8 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Combination Sum III", "id": 216, "frontend_id": 216, + "difficulty_lvl": 2, + "acceptance": 0.68263, "videos": [ { "embedded_url": "https://www.youtube.com/embed/rP_K3WJnRR4", @@ -10660,7 +10600,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 3 } ] }, @@ -10668,6 +10608,8 @@ "title": "Contains Duplicate", "id": 217, "frontend_id": 217, + "difficulty_lvl": 1, + "acceptance": 0.61128, "videos": [ { "embedded_url": "https://www.youtube.com/embed/3OamzN90kPg", @@ -10693,46 +10635,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 19 }, { "name": "Adobe", - "score": 6 + "score": 12 }, { "name": "Google", - "score": 3 + "score": 6 }, { "name": "Apple", - "score": 3 + "score": 6 }, { "name": "Microsoft", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Yahoo", - "score": 1 - }, - { - "name": "tcs", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "The Skyline Problem", "id": 218, "frontend_id": 218, + "difficulty_lvl": 3, + "acceptance": 0.42115, "videos": [ { "embedded_url": "https://www.youtube.com/embed/POUMNJou4vc", @@ -10758,19 +10692,19 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 4 }, { "name": "Cruise Automation", - "score": 6 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Uber", - "score": 1 + "score": 2 } ] }, @@ -10778,6 +10712,8 @@ "title": "Contains Duplicate II", "id": 219, "frontend_id": 219, + "difficulty_lvl": 1, + "acceptance": 0.43117, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ypn0aZ0nrL4", @@ -10803,38 +10739,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 15 }, { "name": "Google", - "score": 2 + "score": 3 }, { "name": "Adobe", - "score": 2 + "score": 3 }, { "name": "Uber", - "score": 1 + "score": 2 }, { "name": "Amazon", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Microsoft", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Contains Duplicate III", "id": 220, "frontend_id": 220, + "difficulty_lvl": 3, + "acceptance": 0.22321, "videos": [ { "embedded_url": "https://www.youtube.com/embed/jRKEp4IYY3E", @@ -10860,19 +10796,19 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 4 }, { "name": "Adobe", - "score": 1 + "score": 2 }, { "name": "Apple", - "score": 1 + "score": 2 }, { "name": "Amazon", - "score": 1 + "score": 2 } ] }, @@ -10880,6 +10816,8 @@ "title": "Maximal Square", "id": 221, "frontend_id": 221, + "difficulty_lvl": 2, + "acceptance": 0.45473, "videos": [ { "embedded_url": "https://www.youtube.com/embed/6X7Ha2PrDmM", @@ -10905,11 +10843,11 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 7 }, { "name": "Visa", - "score": 8 + "score": 6 }, { "name": "Amazon", @@ -10922,25 +10860,20 @@ { "name": "IBM", "score": 3 - }, - { - "name": "Salesforce", - "score": 3 - }, - { - "name": "ByteDance", - "score": 1 - }, - { - "name": "FactSet", - "score": 1 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Count Complete Tree Nodes", "id": 222, "frontend_id": 222, + "difficulty_lvl": 1, + "acceptance": 0.61785, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4wPlA_InnGY", @@ -10966,15 +10899,15 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 7 }, { "name": "Amazon", - "score": 4 + "score": 5 }, { "name": "tiktok", - "score": 1 + "score": 4 } ] }, @@ -10982,6 +10915,8 @@ "title": "Rectangle Area", "id": 223, "frontend_id": 223, + "difficulty_lvl": 2, + "acceptance": 0.45326, "videos": [ { "embedded_url": "https://www.youtube.com/embed/N1BSWQyHJ3E", @@ -11007,7 +10942,7 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -11015,6 +10950,8 @@ "title": "Basic Calculator", "id": 224, "frontend_id": 224, + "difficulty_lvl": 3, + "acceptance": 0.42566, "videos": [ { "embedded_url": "https://www.youtube.com/embed/A3noAzWZ9f4", @@ -11040,39 +10977,23 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 12 }, { "name": "Facebook", - "score": 8 + "score": 10 }, { "name": "Amazon", - "score": 6 + "score": 7 }, { "name": "DoorDash", - "score": 5 + "score": 6 }, { "name": "Uber", - "score": 4 - }, - { - "name": "Microsoft", - "score": 4 - }, - { - "name": "ByteDance", - "score": 2 - }, - { - "name": "Snapchat", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 + "score": 5 } ] }, @@ -11080,6 +11001,8 @@ "title": "Implement Stack using Queues", "id": 225, "frontend_id": 225, + "difficulty_lvl": 1, + "acceptance": 0.59886, "videos": [ { "embedded_url": "https://www.youtube.com/embed/rW4vm0-DLYc", @@ -11105,14 +11028,22 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Invert Binary Tree", "id": 226, "frontend_id": 226, + "difficulty_lvl": 1, + "acceptance": 0.7544, "videos": [ { "embedded_url": "https://www.youtube.com/embed/OnSn2XEQ4MY", @@ -11138,34 +11069,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 5 }, { "name": "Facebook", - "score": 10 + "score": 5 }, { "name": "Google", - "score": 4 + "score": 3 }, { "name": "Uber", - "score": 4 + "score": 3 }, { "name": "Apple", - "score": 4 - }, - { - "name": "Bloomberg", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Basic Calculator II", "id": 227, "frontend_id": 227, + "difficulty_lvl": 2, + "acceptance": 0.42597, "videos": [ { "embedded_url": "https://www.youtube.com/embed/GR8Z1zaQzz0", @@ -11191,43 +11126,23 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 118 }, { "name": "Amazon", - "score": 2 + "score": 13 }, { "name": "Microsoft", - "score": 2 + "score": 11 }, { "name": "ByteDance", - "score": 1 + "score": 4 }, { "name": "Snapchat", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Tesla", - "score": 1 - }, - { - "name": "Yahoo", - "score": 1 + "score": 3 } ] }, @@ -11235,6 +11150,8 @@ "title": "Summary Ranges", "id": 228, "frontend_id": 228, + "difficulty_lvl": 1, + "acceptance": 0.49347, "videos": [ { "embedded_url": "https://www.youtube.com/embed/AjE4x3Yh9xc", @@ -11260,11 +11177,11 @@ "companies": [ { "name": "Yandex", - "score": 10 + "score": 6 }, { "name": "Qualtrics", - "score": 1 + "score": 2 } ] }, @@ -11272,6 +11189,8 @@ "title": "Majority Element II", "id": 229, "frontend_id": 229, + "difficulty_lvl": 2, + "acceptance": 0.46457, "videos": [ { "embedded_url": "https://www.youtube.com/embed/yDbkQd9t2ig", @@ -11297,22 +11216,27 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Microsoft", - "score": 6 + "score": 3 }, { "name": "Adobe", - "score": 1 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Kth Smallest Element in a BST", "id": 230, "frontend_id": 230, + "difficulty_lvl": 2, + "acceptance": 0.70956, "videos": [ { "embedded_url": "https://www.youtube.com/embed/5LUXSvjmGCw", @@ -11338,30 +11262,38 @@ "companies": [ { "name": "Uber", - "score": 10 + "score": 11 }, { "name": "Amazon", - "score": 8 + "score": 9 }, { "name": "Facebook", - "score": 5 + "score": 6 }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "LinkedIn", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Power of Two", "id": 231, "frontend_id": 231, + "difficulty_lvl": 1, + "acceptance": 0.46198, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4cqHahxFTYw", @@ -11387,19 +11319,19 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 5 }, { "name": "Apple", - "score": 7 + "score": 4 }, { "name": "Google", - "score": 4 + "score": 3 }, { "name": "Snapchat", - "score": 1 + "score": 2 } ] }, @@ -11407,14 +11339,16 @@ "title": "Implement Queue using Stacks", "id": 232, "frontend_id": 232, + "difficulty_lvl": 1, + "acceptance": 0.63781, "videos": [ { - "embedded_url": "https://www.youtube.com/embed/nPvjcQBplH4", - "channel": "HelmyCodeCamp" + "embedded_url": "https://www.youtube.com/embed/eanwa3ht3YQ", + "channel": "NeetCode" }, { - "embedded_url": "https://www.youtube.com/embed/rW4vm0-DLYc", - "channel": "NeetCode" + "embedded_url": "https://www.youtube.com/embed/nPvjcQBplH4", + "channel": "HelmyCodeCamp" }, { "embedded_url": "https://www.youtube.com/embed/FEark4VZP5U", @@ -11432,30 +11366,36 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 8 }, { "name": "Microsoft", - "score": 2 + "score": 3 }, { "name": "Goldman Sachs", - "score": 2 + "score": 3 }, { "name": "eBay", - "score": 1 + "score": 2 }, { "name": "Google", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python" ] }, { "title": "Number of Digit One", "id": 233, "frontend_id": 233, + "difficulty_lvl": 3, + "acceptance": 0.34082, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Shz1Qo5PNso", @@ -11481,11 +11421,11 @@ "companies": [ { "name": "Microsoft", - "score": 6 + "score": 4 }, { "name": "Google", - "score": 6 + "score": 4 } ] }, @@ -11493,6 +11433,8 @@ "title": "Palindrome Linked List", "id": 234, "frontend_id": 234, + "difficulty_lvl": 1, + "acceptance": 0.50734, "videos": [ { "embedded_url": "https://www.youtube.com/embed/yOzXms1J6Nk", @@ -11518,50 +11460,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 16 }, { "name": "Amazon", - "score": 10 + "score": 16 }, { "name": "Microsoft", - "score": 6 + "score": 10 }, { "name": "Apple", - "score": 4 + "score": 6 }, { "name": "Bloomberg", - "score": 2 - }, - { - "name": "Google", - "score": 2 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "ServiceNow", - "score": 1 - }, - { - "name": "VMware", - "score": 1 - }, - { - "name": "Yahoo", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Lowest Common Ancestor of a Binary Search Tree", "id": 235, "frontend_id": 235, + "difficulty_lvl": 2, + "acceptance": 0.62632, "videos": [ { "embedded_url": "https://www.youtube.com/embed/gs2LMfuOR9k", @@ -11587,34 +11517,38 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 18 }, { "name": "Facebook", - "score": 3 + "score": 5 }, { "name": "Amazon", - "score": 2 + "score": 3 }, { "name": "Apple", - "score": 2 + "score": 3 }, { "name": "Google", - "score": 1 - }, - { - "name": "Microsoft", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Lowest Common Ancestor of a Binary Tree", "id": 236, "frontend_id": 236, + "difficulty_lvl": 2, + "acceptance": 0.59808, "videos": [ { "embedded_url": "https://www.youtube.com/embed/gs2LMfuOR9k", @@ -11640,46 +11574,37 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 180 }, { "name": "Amazon", - "score": 2 + "score": 25 }, { "name": "LinkedIn", - "score": 2 + "score": 11 }, { "name": "Microsoft", - "score": 1 + "score": 10 }, { "name": "Google", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 - }, - { - "name": "Sumologic", - "score": 1 - }, - { - "name": "Karat", - "score": 1 - }, - { - "name": "Apple", - "score": 1 + "score": 8 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Delete Node in a Linked List", "id": 237, "frontend_id": 237, + "difficulty_lvl": 2, + "acceptance": 0.76899, "videos": [ { "embedded_url": "https://www.youtube.com/embed/urzP1YbgUnU", @@ -11705,11 +11630,11 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 } ] }, @@ -11717,6 +11642,8 @@ "title": "Product of Array Except Self", "id": 238, "frontend_id": 238, + "difficulty_lvl": 2, + "acceptance": 0.6506, "videos": [ { "embedded_url": "https://www.youtube.com/embed/bNvIQI2wAjk", @@ -11742,46 +11669,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 32 }, { "name": "Facebook", - "score": 6 + "score": 18 }, { "name": "Microsoft", - "score": 4 + "score": 15 }, { "name": "Asana", - "score": 4 + "score": 13 }, { "name": "Apple", - "score": 3 - }, - { - "name": "Uber", - "score": 2 - }, - { - "name": "Adobe", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 + "score": 10 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Sliding Window Maximum", "id": 239, "frontend_id": 239, + "difficulty_lvl": 3, + "acceptance": 0.46109, "videos": [ { "embedded_url": "https://www.youtube.com/embed/DfljaUwZsOk", @@ -11807,50 +11726,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 32 }, { "name": "Google", - "score": 2 + "score": 8 }, { "name": "Microsoft", - "score": 2 + "score": 6 }, { "name": "Salesforce", - "score": 2 + "score": 6 }, { "name": "Uber", - "score": 2 - }, - { - "name": "Facebook", - "score": 2 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "Citadel", - "score": 1 - }, - { - "name": "ByteDance", - "score": 1 - }, - { - "name": "Apple", - "score": 1 + "score": 5 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Search a 2D Matrix II", "id": 240, "frontend_id": 240, + "difficulty_lvl": 2, + "acceptance": 0.51447, "videos": [ { "embedded_url": "https://www.youtube.com/embed/xxvPcn9eoS0", @@ -11880,23 +11787,19 @@ }, { "name": "Microsoft", - "score": 4 + "score": 5 }, { "name": "Bloomberg", - "score": 2 + "score": 3 }, { "name": "Apple", - "score": 1 + "score": 2 }, { "name": "Facebook", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 + "score": 2 } ] }, @@ -11904,6 +11807,8 @@ "title": "Different Ways to Add Parentheses", "id": 241, "frontend_id": 241, + "difficulty_lvl": 2, + "acceptance": 0.64428, "videos": [ { "embedded_url": "https://www.youtube.com/embed/binXv9-uT3A", @@ -11929,15 +11834,15 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 3 }, { "name": "Bloomberg", - "score": 10 + "score": 3 }, { "name": "Snapchat", - "score": 1 + "score": 2 } ] }, @@ -11945,6 +11850,8 @@ "title": "Valid Anagram", "id": 242, "frontend_id": 242, + "difficulty_lvl": 1, + "acceptance": 0.63167, "videos": [ { "embedded_url": "https://www.youtube.com/embed/9UtInBqnCgA", @@ -11970,46 +11877,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 8 }, { "name": "Bloomberg", - "score": 10 + "score": 8 }, { "name": "Amazon", - "score": 10 + "score": 8 }, { "name": "Spotify", - "score": 10 + "score": 8 }, { "name": "Microsoft", - "score": 7 - }, - { - "name": "Goldman Sachs", - "score": 2 - }, - { - "name": "Affirm", - "score": 2 - }, - { - "name": "Google", - "score": 1 - }, - { - "name": "Apple", - "score": 1 + "score": 6 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Shortest Word Distance", "id": 243, "frontend_id": 243, + "difficulty_lvl": 1, + "acceptance": 0.65068, "videos": [ { "embedded_url": "https://www.youtube.com/embed/CAIHE6PTpBo", @@ -12035,23 +11934,23 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 11 }, { "name": "Amazon", - "score": 2 + "score": 3 }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "Facebook", - "score": 1 + "score": 2 }, { "name": "Salesforce", - "score": 1 + "score": 2 } ] }, @@ -12059,6 +11958,8 @@ "title": "Shortest Word Distance II", "id": 244, "frontend_id": 244, + "difficulty_lvl": 2, + "acceptance": 0.60931, "videos": [ { "embedded_url": "https://www.youtube.com/embed/MR52ptzetSQ", @@ -12084,7 +11985,7 @@ "companies": [ { "name": "LinkedIn", - "score": 6 + "score": 71 } ] }, @@ -12092,6 +11993,8 @@ "title": "Shortest Word Distance III", "id": 245, "frontend_id": 245, + "difficulty_lvl": 2, + "acceptance": 0.58186, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ALpaujyNVxs", @@ -12117,11 +12020,11 @@ "companies": [ { "name": "LinkedIn", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -12129,6 +12032,8 @@ "title": "Strobogrammatic Number", "id": 246, "frontend_id": 246, + "difficulty_lvl": 1, + "acceptance": 0.47688, "videos": [ { "embedded_url": "https://www.youtube.com/embed/pGS5AW6GwNI", @@ -12154,11 +12059,11 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 19 }, { "name": "Uber", - "score": 1 + "score": 2 } ] }, @@ -12166,6 +12071,8 @@ "title": "Strobogrammatic Number II", "id": 247, "frontend_id": 247, + "difficulty_lvl": 2, + "acceptance": 0.51659, "videos": [ { "embedded_url": "https://www.youtube.com/embed/VBTsQYuMe-U", @@ -12191,15 +12098,15 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 4 }, { "name": "Uber", - "score": 6 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 } ] }, @@ -12207,6 +12114,8 @@ "title": "Strobogrammatic Number III", "id": 248, "frontend_id": 248, + "difficulty_lvl": 3, + "acceptance": 0.42, "videos": [ { "embedded_url": "https://www.youtube.com/embed/dK25e5q4p0Y", @@ -12232,7 +12141,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 4 } ] }, @@ -12240,6 +12149,8 @@ "title": "Group Shifted Strings", "id": 249, "frontend_id": 249, + "difficulty_lvl": 2, + "acceptance": 0.64432, "videos": [ { "embedded_url": "https://www.youtube.com/embed/vUd-7qS6BPQ", @@ -12265,11 +12176,11 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 47 }, { "name": "Google", - "score": 1 + "score": 2 } ] }, @@ -12277,6 +12188,8 @@ "title": "Count Univalue Subtrees", "id": 250, "frontend_id": 250, + "difficulty_lvl": 2, + "acceptance": 0.55958, "videos": [ { "embedded_url": "https://www.youtube.com/embed/3yRMrccLiTI", @@ -12302,11 +12215,11 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 } ] }, @@ -12314,6 +12227,8 @@ "title": "Flatten 2D Vector", "id": 251, "frontend_id": 251, + "difficulty_lvl": 2, + "acceptance": 0.4923, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4ite2jS2e54", @@ -12335,7 +12250,7 @@ "companies": [ { "name": "Airbnb", - "score": 6 + "score": 9 } ] }, @@ -12343,6 +12258,8 @@ "title": "Meeting Rooms", "id": 252, "frontend_id": 252, + "difficulty_lvl": 1, + "acceptance": 0.5747, "videos": [ { "embedded_url": "https://www.youtube.com/embed/PaJxqZVPhbg", @@ -12360,18 +12277,26 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Meeting Rooms II", "id": 253, "frontend_id": 253, + "difficulty_lvl": 2, + "acceptance": 0.50703, "videos": [ { "embedded_url": "https://www.youtube.com/embed/FdzJmTCVyJU", @@ -12397,46 +12322,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 48 }, { "name": "Facebook", - "score": 7 + "score": 33 }, { "name": "Google", - "score": 5 + "score": 22 }, { "name": "Bloomberg", - "score": 4 + "score": 20 }, { "name": "Microsoft", - "score": 3 - }, - { - "name": "Oracle", - "score": 3 - }, - { - "name": "Visa", - "score": 1 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Snapchat", - "score": 1 + "score": 14 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Factor Combinations", "id": 254, "frontend_id": 254, + "difficulty_lvl": 2, + "acceptance": 0.49216, "videos": [ { "embedded_url": "https://www.youtube.com/embed/uMQnEsgKKOU", @@ -12462,7 +12379,7 @@ "companies": [ { "name": "LinkedIn", - "score": 6 + "score": 5 } ] }, @@ -12470,6 +12387,8 @@ "title": "Verify Preorder Sequence in Binary Search Tree", "id": 255, "frontend_id": 255, + "difficulty_lvl": 2, + "acceptance": 0.48456, "videos": [ { "embedded_url": "https://www.youtube.com/embed/tPyWcCU-Zps", @@ -12495,11 +12414,11 @@ "companies": [ { "name": "VMware", - "score": 10 + "score": 4 }, { "name": "Oracle", - "score": 4 + "score": 2 }, { "name": "Zenefits", @@ -12511,6 +12430,8 @@ "title": "Paint House", "id": 256, "frontend_id": 256, + "difficulty_lvl": 2, + "acceptance": 0.61448, "videos": [ { "embedded_url": "https://www.youtube.com/embed/-w67-4tnH5U", @@ -12536,15 +12457,15 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 5 }, { "name": "Twitter", - "score": 6 + "score": 4 }, { "name": "Amazon", - "score": 1 + "score": 3 } ] }, @@ -12552,6 +12473,8 @@ "title": "Binary Tree Paths", "id": 257, "frontend_id": 257, + "difficulty_lvl": 1, + "acceptance": 0.62141, "videos": [ { "embedded_url": "https://www.youtube.com/embed/H2D4HcVZq_g", @@ -12577,23 +12500,23 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Bloomberg", - "score": 10 + "score": 3 }, { "name": "Facebook", - "score": 1 + "score": 2 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -12601,6 +12524,8 @@ "title": "Add Digits", "id": 258, "frontend_id": 258, + "difficulty_lvl": 1, + "acceptance": 0.65848, "videos": [ { "embedded_url": "https://www.youtube.com/embed/doTBRB6_IFs", @@ -12626,7 +12551,7 @@ "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } ] }, @@ -12634,6 +12559,8 @@ "title": "3Sum Smaller", "id": 259, "frontend_id": 259, + "difficulty_lvl": 2, + "acceptance": 0.50587, "videos": [ { "embedded_url": "https://www.youtube.com/embed/R6q81-qi7Go", @@ -12655,12 +12582,15 @@ "embedded_url": "https://www.youtube.com/embed/Px0nLMRebfU", "channel": "Jack Tech" } - ] + ], + "companies": [] }, { "title": "Single Number III", "id": 260, "frontend_id": 260, + "difficulty_lvl": 2, + "acceptance": 0.67857, "videos": [ { "embedded_url": "https://www.youtube.com/embed/L-EaPf5tD5A", @@ -12681,12 +12611,16 @@ { "embedded_url": "https://www.youtube.com/embed/LxcX_NVHep4", "channel": "\u8d3e\u8003\u535a" + }, + { + "embedded_url": "https://www.youtube.com/embed/faoVORjd-T8", + "channel": "NeetCodeIO" } ], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -12694,6 +12628,8 @@ "title": "Graph Valid Tree", "id": 261, "frontend_id": 261, + "difficulty_lvl": 2, + "acceptance": 0.47343, "videos": [ { "embedded_url": "https://www.youtube.com/embed/bXsUuownnoQ", @@ -12719,26 +12655,34 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 8 }, { "name": "Google", - "score": 2 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Microsoft", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Trips and Users", "id": 262, "frontend_id": 262, + "difficulty_lvl": 3, + "acceptance": 0.36741, "videos": [ { "embedded_url": "https://www.youtube.com/embed/jm0LwWWPoyU", @@ -12760,12 +12704,15 @@ "embedded_url": "https://www.youtube.com/embed/gs_-qKa01mk", "channel": "Jimmy Giardiniera, SQL Extraordinaire" } - ] + ], + "companies": [] }, { "title": "Ugly Number", "id": 263, "frontend_id": 263, + "difficulty_lvl": 1, + "acceptance": 0.42083, "videos": [ { "embedded_url": "https://www.youtube.com/embed/M0Zay1Qr9ws", @@ -12791,14 +12738,22 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Ugly Number II", "id": 264, "frontend_id": 264, + "difficulty_lvl": 2, + "acceptance": 0.46182, "videos": [ { "embedded_url": "https://www.youtube.com/embed/X5SuOsIWCoI", @@ -12824,7 +12779,7 @@ "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } ] }, @@ -12832,6 +12787,8 @@ "title": "Paint House II", "id": 265, "frontend_id": 265, + "difficulty_lvl": 3, + "acceptance": 0.53793, "videos": [ { "embedded_url": "https://www.youtube.com/embed/jGywRalvoRw", @@ -12853,11 +12810,11 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 3 }, { "name": "Walmart Global Tech", - "score": 6 + "score": 2 }, { "name": "Facebook", @@ -12869,6 +12826,8 @@ "title": "Palindrome Permutation", "id": 266, "frontend_id": 266, + "difficulty_lvl": 1, + "acceptance": 0.6627, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Pp5hdsNdqOU", @@ -12894,7 +12853,7 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 12 } ] }, @@ -12902,6 +12861,8 @@ "title": "Palindrome Permutation II", "id": 267, "frontend_id": 267, + "difficulty_lvl": 2, + "acceptance": 0.40801, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4xv76FOnrmE", @@ -12923,11 +12884,11 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 3 }, { "name": "Cruise Automation", - "score": 1 + "score": 2 } ] }, @@ -12935,6 +12896,8 @@ "title": "Missing Number", "id": 268, "frontend_id": 268, + "difficulty_lvl": 1, + "acceptance": 0.63481, "videos": [ { "embedded_url": "https://www.youtube.com/embed/WnPLSRLSANE", @@ -12960,42 +12923,38 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 13 }, { "name": "Amazon", - "score": 6 + "score": 8 }, { "name": "Facebook", - "score": 4 + "score": 6 }, { "name": "Adobe", - "score": 2 + "score": 3 }, { "name": "Apple", - "score": 2 - }, - { - "name": "Salesforce", - "score": 1 - }, - { - "name": "VMware", - "score": 1 - }, - { - "name": "Nvidia", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Alien Dictionary", "id": 269, "frontend_id": 269, + "difficulty_lvl": 3, + "acceptance": 0.35365, "videos": [ { "embedded_url": "https://www.youtube.com/embed/6kTZYvNNyps", @@ -13017,46 +12976,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 16 }, { "name": "Airbnb", - "score": 9 + "score": 14 }, { "name": "Amazon", - "score": 6 + "score": 10 }, { "name": "Google", - "score": 4 + "score": 7 }, { "name": "Bloomberg", - "score": 2 - }, - { - "name": "Uber", - "score": 2 - }, - { - "name": "Microsoft", - "score": 2 - }, - { - "name": "Pinterest", - "score": 1 - }, - { - "name": "Snapchat", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Closest Binary Search Tree Value", "id": 270, "frontend_id": 270, + "difficulty_lvl": 1, + "acceptance": 0.53795, "videos": [ { "embedded_url": "https://www.youtube.com/embed/wued6gzSjI4", @@ -13082,7 +13033,7 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 21 } ] }, @@ -13090,6 +13041,8 @@ "title": "Encode and Decode Strings", "id": 271, "frontend_id": 271, + "difficulty_lvl": 2, + "acceptance": 0.44135, "videos": [ { "embedded_url": "https://www.youtube.com/embed/B1k_sxOSgv8", @@ -13115,18 +13068,26 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 3 }, { "name": "LinkedIn", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Closest Binary Search Tree Value II", "id": 272, "frontend_id": 272, + "difficulty_lvl": 3, + "acceptance": 0.58572, "videos": [ { "embedded_url": "https://www.youtube.com/embed/uIkji391mBI", @@ -13152,11 +13113,11 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 26 }, { "name": "Google", - "score": 1 + "score": 2 } ] }, @@ -13164,6 +13125,8 @@ "title": "Integer to English Words", "id": 273, "frontend_id": 273, + "difficulty_lvl": 3, + "acceptance": 0.30134, "videos": [ { "embedded_url": "https://www.youtube.com/embed/vLq_4DIfRIM", @@ -13189,35 +13152,23 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 20 }, { "name": "Amazon", - "score": 10 + "score": 19 }, { "name": "Microsoft", - "score": 4 + "score": 7 }, { "name": "DoorDash", - "score": 2 + "score": 4 }, { "name": "Salesforce", - "score": 2 - }, - { - "name": "Expedia", - "score": 2 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Booking.com", - "score": 1 + "score": 3 } ] }, @@ -13225,6 +13176,8 @@ "title": "H-Index", "id": 274, "frontend_id": 274, + "difficulty_lvl": 2, + "acceptance": 0.38458, "videos": [ { "embedded_url": "https://www.youtube.com/embed/wjOjCfkv1mg", @@ -13246,30 +13199,35 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 9 }, { "name": "Alation", - "score": 2 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Facebook", - "score": 1 + "score": 2 }, { "name": "Apple", - "score": 1 + "score": 2 } + ], + "languages": [ + "python" ] }, { "title": "H-Index II", "id": 275, "frontend_id": 275, + "difficulty_lvl": 2, + "acceptance": 0.37729, "videos": [ { "embedded_url": "https://www.youtube.com/embed/CjKJDloMnwE", @@ -13295,7 +13253,7 @@ "companies": [ { "name": "Goldman Sachs", - "score": 6 + "score": 2 } ] }, @@ -13303,6 +13261,8 @@ "title": "Paint Fence", "id": 276, "frontend_id": 276, + "difficulty_lvl": 2, + "acceptance": 0.44969, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ju8vrEAsa3Q", @@ -13328,11 +13288,11 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "JPMorgan", - "score": 6 + "score": 2 } ] }, @@ -13340,6 +13300,8 @@ "title": "Find the Celebrity", "id": 277, "frontend_id": 277, + "difficulty_lvl": 2, + "acceptance": 0.46773, "videos": [ { "embedded_url": "https://www.youtube.com/embed/LZJBZEnoYLQ", @@ -13365,15 +13327,15 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 6 }, { "name": "Microsoft", - "score": 8 + "score": 5 }, { "name": "Amazon", - "score": 6 + "score": 4 }, { "name": "Pinterest", @@ -13382,10 +13344,6 @@ { "name": "Apple", "score": 3 - }, - { - "name": "Facebook", - "score": 1 } ] }, @@ -13393,6 +13351,8 @@ "title": "First Bad Version", "id": 278, "frontend_id": 278, + "difficulty_lvl": 1, + "acceptance": 0.43626, "videos": [ { "embedded_url": "https://www.youtube.com/embed/SiDMFIMldgg", @@ -13418,38 +13378,36 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 19 }, { "name": "Amazon", - "score": 6 + "score": 12 }, { "name": "Facebook", - "score": 4 + "score": 7 }, { "name": "Microsoft", - "score": 3 + "score": 6 }, { "name": "Apple", - "score": 3 - }, - { - "name": "Adobe", - "score": 2 - }, - { - "name": "Cisco", - "score": 1 + "score": 5 } + ], + "languages": [ + "python", + "cpp" ] }, { "title": "Perfect Squares", "id": 279, "frontend_id": 279, + "difficulty_lvl": 2, + "acceptance": 0.52885, "videos": [ { "embedded_url": "https://www.youtube.com/embed/HLZLwjzIVGo", @@ -13475,26 +13433,32 @@ "companies": [ { "name": "Apple", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Microsoft", - "score": 6 + "score": 2 } + ], + "languages": [ + "cpp", + "java" ] }, { "title": "Wiggle Sort", "id": 280, "frontend_id": 280, + "difficulty_lvl": 2, + "acceptance": 0.67285, "videos": [ { "embedded_url": "https://www.youtube.com/embed/vGsyTE4s34w", @@ -13520,14 +13484,20 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } + ], + "languages": [ + "python", + "cpp" ] }, { "title": "Zigzag Iterator", "id": 281, "frontend_id": 281, + "difficulty_lvl": 2, + "acceptance": 0.63086, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Yuu_GysOccM", @@ -13549,15 +13519,15 @@ "companies": [ { "name": "Yandex", - "score": 10 + "score": 6 }, { "name": "Apple", - "score": 3 + "score": 2 }, { "name": "Amazon", - "score": 3 + "score": 2 }, { "name": "Google", @@ -13569,6 +13539,8 @@ "title": "Expression Add Operators", "id": 282, "frontend_id": 282, + "difficulty_lvl": 3, + "acceptance": 0.39265, "videos": [ { "embedded_url": "https://www.youtube.com/embed/tunRDBsP7OQ", @@ -13594,7 +13566,7 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 23 } ] }, @@ -13602,6 +13574,8 @@ "title": "Move Zeroes", "id": 283, "frontend_id": 283, + "difficulty_lvl": 1, + "acceptance": 0.61388, "videos": [ { "embedded_url": "https://www.youtube.com/embed/aayNRwUN3Do", @@ -13627,50 +13601,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 19 }, { "name": "Microsoft", - "score": 5 + "score": 10 }, { "name": "Apple", - "score": 4 + "score": 8 }, { "name": "Amazon", - "score": 4 + "score": 8 }, { "name": "Yandex", - "score": 3 - }, - { - "name": "Bloomberg", - "score": 2 - }, - { - "name": "tcs", - "score": 2 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "IBM", - "score": 1 + "score": 6 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Peeking Iterator", "id": 284, "frontend_id": 284, + "difficulty_lvl": 2, + "acceptance": 0.58849, "videos": [ { "embedded_url": "https://www.youtube.com/embed/UyGxiD5GtI4", @@ -13696,19 +13658,19 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 8 }, { "name": "Apple", - "score": 2 + "score": 3 }, { "name": "Amazon", - "score": 2 + "score": 3 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -13716,6 +13678,8 @@ "title": "Inorder Successor in BST", "id": 285, "frontend_id": 285, + "difficulty_lvl": 2, + "acceptance": 0.48987, "videos": [ { "embedded_url": "https://www.youtube.com/embed/vo794ruCJnU", @@ -13741,19 +13705,19 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 100 }, { "name": "Facebook", - "score": 5 + "score": 46 }, { "name": "Google", - "score": 2 + "score": 11 }, { "name": "Adobe", - "score": 1 + "score": 2 } ] }, @@ -13761,6 +13725,8 @@ "title": "Walls and Gates", "id": 286, "frontend_id": 286, + "difficulty_lvl": 2, + "acceptance": 0.60642, "videos": [ { "embedded_url": "https://www.youtube.com/embed/e69C6xhiSQE", @@ -13786,38 +13752,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 15 }, { "name": "DoorDash", - "score": 7 + "score": 11 }, { "name": "Google", - "score": 3 + "score": 5 }, { "name": "tiktok", - "score": 3 + "score": 5 }, { "name": "Amazon", - "score": 2 - }, - { - "name": "Microsoft", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Find the Duplicate Number", "id": 287, "frontend_id": 287, + "difficulty_lvl": 2, + "acceptance": 0.59022, "videos": [ { "embedded_url": "https://www.youtube.com/embed/wjYnzkAhcNk", @@ -13843,38 +13809,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 16 }, { "name": "Microsoft", - "score": 7 + "score": 11 }, { "name": "Facebook", - "score": 2 + "score": 4 }, { "name": "Uber", - "score": 2 + "score": 3 }, { "name": "Apple", - "score": 2 - }, - { - "name": "Google", - "score": 1 - }, - { - "name": "Qualcomm", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Unique Word Abbreviation", "id": 288, "frontend_id": 288, + "difficulty_lvl": 2, + "acceptance": 0.25761, "videos": [ { "embedded_url": "https://www.youtube.com/embed/FJ8LJy6l_ts", @@ -13900,7 +13866,7 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 3 }, { "name": "Google", @@ -13912,9 +13878,11 @@ "title": "Game of Life", "id": 289, "frontend_id": 289, + "difficulty_lvl": 2, + "acceptance": 0.67751, "videos": [ { - "embedded_url": "https: //www.youtube.com/embed/fei4bJQdBUQ", + "embedded_url": "https://www.youtube.com/embed/fei4bJQdBUQ", "channel": "NeetCode" }, { @@ -13945,31 +13913,15 @@ }, { "name": "Dropbox", - "score": 4 + "score": 5 }, { "name": "Bloomberg", - "score": 3 + "score": 4 }, { "name": "Adobe", - "score": 3 - }, - { - "name": "Google", - "score": 2 - }, - { - "name": "Microsoft", - "score": 2 - }, - { - "name": "Snapchat", - "score": 1 - }, - { - "name": "Apple", - "score": 1 + "score": 4 } ] }, @@ -13977,6 +13929,8 @@ "title": "Word Pattern", "id": 290, "frontend_id": 290, + "difficulty_lvl": 1, + "acceptance": 0.4168, "videos": [ { "embedded_url": "https://www.youtube.com/embed/W_akoecmCbM", @@ -14002,26 +13956,34 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Bolt", - "score": 6 + "score": 3 }, { "name": "Uber", - "score": 1 + "score": 2 }, { "name": "Adobe", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Word Pattern II", "id": 291, "frontend_id": 291, + "difficulty_lvl": 2, + "acceptance": 0.47221, "videos": [ { "embedded_url": "https://www.youtube.com/embed/W9ohcDTkUko", @@ -14047,15 +14009,15 @@ "companies": [ { "name": "Uber", - "score": 10 + "score": 3 }, { "name": "Bolt", - "score": 1 + "score": 2 }, { "name": "Pinterest", - "score": 1 + "score": 2 } ] }, @@ -14063,6 +14025,8 @@ "title": "Nim Game", "id": 292, "frontend_id": 292, + "difficulty_lvl": 1, + "acceptance": 0.56239, "videos": [ { "embedded_url": "https://www.youtube.com/embed/36wTBRkj6Ro", @@ -14088,11 +14052,11 @@ "companies": [ { "name": "Adobe", - "score": 10 + "score": 3 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -14100,6 +14064,8 @@ "title": "Flip Game", "id": 293, "frontend_id": 293, + "difficulty_lvl": 1, + "acceptance": 0.63369, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Nz4x9Vw-N98", @@ -14117,7 +14083,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -14125,6 +14091,8 @@ "title": "Flip Game II", "id": 294, "frontend_id": 294, + "difficulty_lvl": 2, + "acceptance": 0.51959, "videos": [ { "embedded_url": "https://www.youtube.com/embed/rjOTv7dzqC8", @@ -14146,7 +14114,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -14154,6 +14122,8 @@ "title": "Find Median from Data Stream", "id": 295, "frontend_id": 295, + "difficulty_lvl": 3, + "acceptance": 0.51465, "videos": [ { "embedded_url": "https://www.youtube.com/embed/itmhHWaHupI", @@ -14175,12 +14145,21 @@ "embedded_url": "https://www.youtube.com/embed/AVhxfH79Hko", "channel": "Timothy H Chang" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Best Meeting Point", "id": 296, "frontend_id": 296, + "difficulty_lvl": 3, + "acceptance": 0.60065, "videos": [ { "embedded_url": "https://www.youtube.com/embed/6U0mIJjLzHw", @@ -14198,15 +14177,15 @@ "companies": [ { "name": "Expedia", - "score": 10 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Facebook", - "score": 1 + "score": 2 } ] }, @@ -14214,6 +14193,8 @@ "title": "Serialize and Deserialize Binary Tree", "id": 297, "frontend_id": 297, + "difficulty_lvl": 3, + "acceptance": 0.55771, "videos": [ { "embedded_url": "https://www.youtube.com/embed/u4JAi2JJhI8", @@ -14239,46 +14220,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 21 }, { "name": "Microsoft", - "score": 10 + "score": 20 }, { "name": "LinkedIn", - "score": 8 + "score": 18 }, { "name": "DoorDash", - "score": 3 + "score": 7 }, { "name": "Uber", - "score": 2 - }, - { - "name": "Nvidia", - "score": 2 - }, - { - "name": "tiktok", - "score": 2 - }, - { - "name": "Google", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Binary Tree Longest Consecutive Sequence", "id": 298, "frontend_id": 298, + "difficulty_lvl": 2, + "acceptance": 0.53034, "videos": [ { "embedded_url": "https://www.youtube.com/embed/P6RZZMu_maU", @@ -14304,15 +14277,15 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Google", - "score": 1 + "score": 2 } ] }, @@ -14320,6 +14293,8 @@ "title": "Bulls and Cows", "id": 299, "frontend_id": 299, + "difficulty_lvl": 2, + "acceptance": 0.49711, "videos": [ { "embedded_url": "https://www.youtube.com/embed/aDcwaNaz7yg", @@ -14345,11 +14320,11 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 12 }, { "name": "Facebook", - "score": 1 + "score": 2 } ] }, @@ -14357,6 +14332,8 @@ "title": "Longest Increasing Subsequence", "id": 300, "frontend_id": 300, + "difficulty_lvl": 2, + "acceptance": 0.5301, "videos": [ { "embedded_url": "https://www.youtube.com/embed/cjWnW0hdF1Y", @@ -14378,12 +14355,21 @@ "embedded_url": "https://www.youtube.com/embed/jSvoE-_Yhs4", "channel": "Nick White" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Remove Invalid Parentheses", "id": 301, "frontend_id": 301, + "difficulty_lvl": 3, + "acceptance": 0.47241, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Cbbf5qe5stw", @@ -14409,11 +14395,11 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 36 }, { "name": "Amazon", - "score": 1 + "score": 2 } ] }, @@ -14421,6 +14407,8 @@ "title": "Smallest Rectangle Enclosing Black Pixels", "id": 302, "frontend_id": 302, + "difficulty_lvl": 3, + "acceptance": 0.58637, "videos": [ { "embedded_url": "https://www.youtube.com/embed/cXBP5EQXaKc", @@ -14446,7 +14434,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 7 } ] }, @@ -14454,6 +14442,8 @@ "title": "Range Sum Query - Immutable", "id": 303, "frontend_id": 303, + "difficulty_lvl": 1, + "acceptance": 0.60712, "videos": [ { "embedded_url": "https://www.youtube.com/embed/2pndAmo_sMA", @@ -14475,12 +14465,26 @@ "embedded_url": "https://www.youtube.com/embed/KE8MQuwE2yA", "channel": "NeetCode" } + ], + "companies": [ + { + "name": "Facebook", + "score": 2 + } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Range Sum Query 2D - Immutable", "id": 304, "frontend_id": 304, + "difficulty_lvl": 2, + "acceptance": 0.53261, "videos": [ { "embedded_url": "https://www.youtube.com/embed/KE8MQuwE2yA", @@ -14502,12 +14506,41 @@ "embedded_url": "https://www.youtube.com/embed/MSNSqU3BnXk", "channel": "Hua Hua" } + ], + "companies": [ + { + "name": "Facebook", + "score": 10 + }, + { + "name": "Lyft", + "score": 4 + }, + { + "name": "Amazon", + "score": 3 + }, + { + "name": "Google", + "score": 2 + }, + { + "name": "Samsung", + "score": 2 + } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Number of Islands II", "id": 305, "frontend_id": 305, + "difficulty_lvl": 3, + "acceptance": 0.396, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Rn6B-Q4SNyA", @@ -14533,11 +14566,11 @@ "companies": [ { "name": "Uber", - "score": 10 + "score": 5 }, { "name": "Google", - "score": 1 + "score": 2 } ] }, @@ -14545,6 +14578,8 @@ "title": "Additive Number", "id": 306, "frontend_id": 306, + "difficulty_lvl": 2, + "acceptance": 0.31182, "videos": [ { "embedded_url": "https://www.youtube.com/embed/pKXsbH8-8-w", @@ -14570,11 +14605,11 @@ "companies": [ { "name": "Booking.com", - "score": 10 + "score": 3 }, { "name": "Epic Systems", - "score": 1 + "score": 2 } ] }, @@ -14582,6 +14617,8 @@ "title": "Range Sum Query - Mutable", "id": 307, "frontend_id": 307, + "difficulty_lvl": 2, + "acceptance": 0.40727, "videos": [ { "embedded_url": "https://www.youtube.com/embed/G9GRvQRtGOc", @@ -14603,12 +14640,27 @@ "embedded_url": "https://www.youtube.com/embed/PwUZbyuQkiA", "channel": "Ayushi Sharma" } + ], + "companies": [ + { + "name": "Google", + "score": 6 + }, + { + "name": "Amazon", + "score": 3 + } + ], + "languages": [ + "java" ] }, { "title": "Range Sum Query 2D - Mutable", "id": 308, "frontend_id": 308, + "difficulty_lvl": 3, + "acceptance": 0.43181, "videos": [ { "embedded_url": "https://www.youtube.com/embed/tk0Twx2VQy8", @@ -14630,12 +14682,20 @@ "embedded_url": "https://www.youtube.com/embed/MSNSqU3BnXk", "channel": "Hua Hua" } + ], + "companies": [ + { + "name": "Google", + "score": 3 + } ] }, { "title": "Best Time to Buy and Sell Stock with Cooldown", "id": 309, "frontend_id": 309, + "difficulty_lvl": 2, + "acceptance": 0.57029, "videos": [ { "embedded_url": "https://www.youtube.com/embed/I7j0F7AHpb8", @@ -14657,12 +14717,21 @@ "embedded_url": "https://www.youtube.com/embed/oL6mRyTn56M", "channel": "Hua Hua" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Minimum Height Trees", "id": 310, "frontend_id": 310, + "difficulty_lvl": 2, + "acceptance": 0.38623, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ivl6BHJVcB0", @@ -14683,16 +14752,20 @@ { "embedded_url": "https://www.youtube.com/embed/pUtxTz134qM", "channel": "\u5c71\u666f\u57ce\u4e00\u59d0" + }, + { + "embedded_url": "https://www.youtube.com/embed/wQGQnyv_9hI", + "channel": "NeetCodeIO" } ], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Snapchat", - "score": 6 + "score": 2 } ] }, @@ -14700,6 +14773,8 @@ "title": "Sparse Matrix Multiplication", "id": 311, "frontend_id": 311, + "difficulty_lvl": 2, + "acceptance": 0.67674, "videos": [ { "embedded_url": "https://www.youtube.com/embed/s0HguOVYm-w", @@ -14729,15 +14804,15 @@ }, { "name": "Snapchat", - "score": 4 + "score": 5 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Databricks", - "score": 1 + "score": 2 } ] }, @@ -14745,6 +14820,8 @@ "title": "Burst Balloons", "id": 312, "frontend_id": 312, + "difficulty_lvl": 3, + "acceptance": 0.57727, "videos": [ { "embedded_url": "https://www.youtube.com/embed/VFskby7lUbw", @@ -14770,34 +14847,38 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 7 }, { "name": "Microsoft", - "score": 8 + "score": 6 }, { "name": "Apple", - "score": 5 + "score": 4 }, { "name": "Bloomberg", - "score": 5 + "score": 4 }, { "name": "Uber", "score": 3 - }, - { - "name": "Amazon", - "score": 1 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Super Ugly Number", "id": 313, "frontend_id": 313, + "difficulty_lvl": 2, + "acceptance": 0.45355, "videos": [ { "embedded_url": "https://www.youtube.com/embed/0FMKNDEopR0", @@ -14823,15 +14904,15 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Bloomberg", - "score": 6 + "score": 2 }, { "name": "Apple", - "score": 6 + "score": 2 } ] }, @@ -14839,6 +14920,8 @@ "title": "Binary Tree Vertical Order Traversal", "id": 314, "frontend_id": 314, + "difficulty_lvl": 2, + "acceptance": 0.52468, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Yjf-8CyyL18", @@ -14864,19 +14947,19 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 188 }, { "name": "Bloomberg", - "score": 1 + "score": 8 }, { "name": "Amazon", - "score": 1 + "score": 4 }, { "name": "Microsoft", - "score": 1 + "score": 3 } ] }, @@ -14884,6 +14967,8 @@ "title": "Count of Smaller Numbers After Self", "id": 315, "frontend_id": 315, + "difficulty_lvl": 3, + "acceptance": 0.42437, "videos": [ { "embedded_url": "https://www.youtube.com/embed/wWrprKyQmE4", @@ -14909,11 +14994,11 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 6 }, { "name": "Microsoft", - "score": 8 + "score": 5 }, { "name": "Amazon", @@ -14921,7 +15006,7 @@ }, { "name": "Adobe", - "score": 1 + "score": 2 } ] }, @@ -14929,6 +15014,8 @@ "title": "Remove Duplicate Letters", "id": 316, "frontend_id": 316, + "difficulty_lvl": 2, + "acceptance": 0.4557, "videos": [ { "embedded_url": "https://www.youtube.com/embed/j313ttNJjo0", @@ -14954,26 +15041,31 @@ "companies": [ { "name": "Apple", - "score": 10 + "score": 4 }, { "name": "Facebook", - "score": 1 + "score": 2 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Salesforce", - "score": 1 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Shortest Distance from All Buildings", "id": 317, "frontend_id": 317, + "difficulty_lvl": 3, + "acceptance": 0.42603, "videos": [ { "embedded_url": "https://www.youtube.com/embed/LBZJdtDZmVw", @@ -14995,19 +15087,19 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 22 }, { "name": "Microsoft", - "score": 2 + "score": 7 }, { "name": "Google", - "score": 2 + "score": 6 }, { "name": "DoorDash", - "score": 1 + "score": 5 } ] }, @@ -15015,6 +15107,8 @@ "title": "Maximum Product of Word Lengths", "id": 318, "frontend_id": 318, + "difficulty_lvl": 2, + "acceptance": 0.5981, "videos": [ { "embedded_url": "https://www.youtube.com/embed/jFeCO8Gxc3k", @@ -15040,7 +15134,7 @@ "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } ] }, @@ -15048,6 +15142,8 @@ "title": "Bulb Switcher", "id": 319, "frontend_id": 319, + "difficulty_lvl": 2, + "acceptance": 0.52529, "videos": [ { "embedded_url": "https://www.youtube.com/embed/lyZhLR292yY", @@ -15073,11 +15169,11 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 4 }, { "name": "Microsoft", - "score": 1 + "score": 3 } ] }, @@ -15085,6 +15181,8 @@ "title": "Generalized Abbreviation", "id": 320, "frontend_id": 320, + "difficulty_lvl": 2, + "acceptance": 0.57905, "videos": [ { "embedded_url": "https://www.youtube.com/embed/LRMJ0ZIY_NI", @@ -15110,7 +15208,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -15118,6 +15216,8 @@ "title": "Create Maximum Number", "id": 321, "frontend_id": 321, + "difficulty_lvl": 3, + "acceptance": 0.29341, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ZHexy3JW2JA", @@ -15143,7 +15243,7 @@ "companies": [ { "name": "Apple", - "score": 10 + "score": 2 }, { "name": "Google", @@ -15155,6 +15255,8 @@ "title": "Coin Change", "id": 322, "frontend_id": 322, + "difficulty_lvl": 2, + "acceptance": 0.42629, "videos": [ { "embedded_url": "https://www.youtube.com/embed/H9bfqozjoqs", @@ -15176,42 +15278,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 18 }, { "name": "Microsoft", - "score": 8 + "score": 14 }, { "name": "Google", - "score": 3 + "score": 5 }, { "name": "Mathworks", - "score": 3 + "score": 5 }, { "name": "Bloomberg", - "score": 2 - }, - { - "name": "Facebook", - "score": 1 - }, - { - "name": "Yahoo", - "score": 1 - }, - { - "name": "Goldman Sachs", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Number of Connected Components in an Undirected Graph", "id": 323, "frontend_id": 323, + "difficulty_lvl": 2, + "acceptance": 0.62387, "videos": [ { "embedded_url": "https://www.youtube.com/embed/8f1XPm4WOUc", @@ -15237,7 +15335,7 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 6 }, { "name": "LinkedIn", @@ -15249,22 +15347,26 @@ }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Microsoft", - "score": 1 - }, - { - "name": "Pinterest", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Wiggle Sort II", "id": 324, "frontend_id": 324, + "difficulty_lvl": 2, + "acceptance": 0.33663, "videos": [ { "embedded_url": "https://www.youtube.com/embed/mwsjU6CHOb4", @@ -15286,7 +15388,7 @@ "companies": [ { "name": "Adobe", - "score": 6 + "score": 2 } ] }, @@ -15294,6 +15396,8 @@ "title": "Maximum Size Subarray Sum Equals k", "id": 325, "frontend_id": 325, + "difficulty_lvl": 2, + "acceptance": 0.49272, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ReZpa5vxRKc", @@ -15319,11 +15423,11 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 11 }, { "name": "Amazon", - "score": 1 + "score": 2 } ] }, @@ -15331,6 +15435,8 @@ "title": "Power of Three", "id": 326, "frontend_id": 326, + "difficulty_lvl": 1, + "acceptance": 0.45769, "videos": [ { "embedded_url": "https://www.youtube.com/embed/RH9ZKMsmEpA", @@ -15356,7 +15462,7 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -15364,6 +15470,8 @@ "title": "Count of Range Sum", "id": 327, "frontend_id": 327, + "difficulty_lvl": 3, + "acceptance": 0.35748, "videos": [ { "embedded_url": "https://www.youtube.com/embed/q9klWcNZQvo", @@ -15381,12 +15489,15 @@ "embedded_url": "https://www.youtube.com/embed/ILUAY2W0s0E", "channel": "happygirlzt" } - ] + ], + "companies": [] }, { "title": "Odd Even Linked List", "id": 328, "frontend_id": 328, + "difficulty_lvl": 2, + "acceptance": 0.61325, "videos": [ { "embedded_url": "https://www.youtube.com/embed/C_LA6SOwVTM", @@ -15412,23 +15523,23 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 6 }, { "name": "Amazon", - "score": 6 + "score": 4 }, { "name": "Adobe", - "score": 6 + "score": 4 }, { "name": "eBay", - "score": 1 + "score": 2 }, { "name": "tiktok", - "score": 1 + "score": 2 } ] }, @@ -15436,6 +15547,8 @@ "title": "Longest Increasing Path in a Matrix", "id": 329, "frontend_id": 329, + "difficulty_lvl": 3, + "acceptance": 0.52756, "videos": [ { "embedded_url": "https://www.youtube.com/embed/wCc_nd-GiEc", @@ -15457,12 +15570,21 @@ "embedded_url": "https://www.youtube.com/embed/yKr4iyQnBpY", "channel": "Hua Hua" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Patching Array", "id": 330, "frontend_id": 330, + "difficulty_lvl": 3, + "acceptance": 0.40623, "videos": [ { "embedded_url": "https://www.youtube.com/embed/BfcU3NJuANg", @@ -15488,7 +15610,7 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -15496,6 +15618,8 @@ "title": "Verify Preorder Serialization of a Binary Tree", "id": 331, "frontend_id": 331, + "difficulty_lvl": 2, + "acceptance": 0.44751, "videos": [ { "embedded_url": "https://www.youtube.com/embed/YJjao6iPTQo", @@ -15521,7 +15645,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -15529,6 +15653,8 @@ "title": "Reconstruct Itinerary", "id": 332, "frontend_id": 332, + "difficulty_lvl": 3, + "acceptance": 0.41528, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ZyB_gQ8vqGA", @@ -15562,26 +15688,30 @@ }, { "name": "Google", - "score": 3 + "score": 4 }, { "name": "Amazon", - "score": 3 + "score": 4 }, { "name": "Twitter", - "score": 3 - }, - { - "name": "Netflix", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Largest BST Subtree", "id": 333, "frontend_id": 333, + "difficulty_lvl": 2, + "acceptance": 0.43013, "videos": [ { "embedded_url": "https://www.youtube.com/embed/jhp9chdOaP0", @@ -15607,15 +15737,15 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 7 }, { "name": "Oracle", - "score": 1 + "score": 2 }, { "name": "Cohesity", - "score": 1 + "score": 2 } ] }, @@ -15623,6 +15753,8 @@ "title": "Increasing Triplet Subsequence", "id": 334, "frontend_id": 334, + "difficulty_lvl": 2, + "acceptance": 0.41675, "videos": [ { "embedded_url": "https://www.youtube.com/embed/xZ5FBqk-cFw", @@ -15648,18 +15780,23 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 3 }, { "name": "Facebook", - "score": 1 + "score": 2 } + ], + "languages": [ + "python" ] }, { "title": "Self Crossing", "id": 335, "frontend_id": 335, + "difficulty_lvl": 3, + "acceptance": 0.29613, "videos": [ { "embedded_url": "https://www.youtube.com/embed/b8iINtg7zbs", @@ -15685,11 +15822,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 } ] }, @@ -15697,6 +15834,8 @@ "title": "Palindrome Pairs", "id": 336, "frontend_id": 336, + "difficulty_lvl": 3, + "acceptance": 0.34965, "videos": [ { "embedded_url": "https://www.youtube.com/embed/SSq0xH51pZQ", @@ -15722,27 +15861,23 @@ "companies": [ { "name": "Airbnb", - "score": 10 + "score": 14 }, { "name": "Apple", - "score": 2 + "score": 3 }, { "name": "Google", - "score": 2 + "score": 3 }, { "name": "Shopee", - "score": 2 + "score": 3 }, { "name": "Facebook", - "score": 1 - }, - { - "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -15750,6 +15885,8 @@ "title": "House Robber III", "id": 337, "frontend_id": 337, + "difficulty_lvl": 2, + "acceptance": 0.54001, "videos": [ { "embedded_url": "https://www.youtube.com/embed/nHR8ytpzz7c", @@ -15775,22 +15912,27 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 6 }, { "name": "Google", - "score": 7 + "score": 5 }, { "name": "Adobe", - "score": 1 + "score": 3 } + ], + "languages": [ + "java" ] }, { "title": "Counting Bits", "id": 338, "frontend_id": 338, + "difficulty_lvl": 1, + "acceptance": 0.76209, "videos": [ { "embedded_url": "https://www.youtube.com/embed/RyBM56RIWrM", @@ -15816,26 +15958,34 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Bloomberg", - "score": 1 + "score": 2 }, { "name": "JPMorgan", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Nested List Weight Sum", "id": 339, "frontend_id": 339, + "difficulty_lvl": 2, + "acceptance": 0.82363, "videos": [ { "embedded_url": "https://www.youtube.com/embed/B2i_AfmZBgk", @@ -15857,15 +16007,15 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 100 }, { "name": "LinkedIn", - "score": 4 + "score": 34 }, { "name": "Amazon", - "score": 1 + "score": 4 } ] }, @@ -15873,6 +16023,8 @@ "title": "Longest Substring with At Most K Distinct Characters", "id": 340, "frontend_id": 340, + "difficulty_lvl": 2, + "acceptance": 0.48285, "videos": [ { "embedded_url": "https://www.youtube.com/embed/xSRktgNwHKw", @@ -15898,11 +16050,11 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -15910,6 +16062,8 @@ "title": "Flatten Nested List Iterator", "id": 341, "frontend_id": 341, + "difficulty_lvl": 2, + "acceptance": 0.62008, "videos": [ { "embedded_url": "https://www.youtube.com/embed/V-gPWPOyq8I", @@ -15935,11 +16089,11 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 8 }, { "name": "Apple", - "score": 6 + "score": 5 }, { "name": "Facebook", @@ -15951,26 +16105,19 @@ }, { "name": "Twitter", - "score": 2 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Amazon", - "score": 1 - }, - { - "name": "Salesforce", - "score": 1 + "score": 3 } + ], + "languages": [ + "java" ] }, { "title": "Power of Four", "id": 342, "frontend_id": 342, + "difficulty_lvl": 1, + "acceptance": 0.46577, "videos": [ { "embedded_url": "https://www.youtube.com/embed/KwtRRZN6loU", @@ -15996,14 +16143,20 @@ "companies": [ { "name": "Two Sigma", - "score": 6 + "score": "Wix" } + ], + "languages": [ + "cpp", + "java" ] }, { "title": "Integer Break", "id": 343, "frontend_id": 343, + "difficulty_lvl": 2, + "acceptance": 0.56516, "videos": [ { "embedded_url": "https://www.youtube.com/embed/in6QbUPMJ3I", @@ -16029,14 +16182,20 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 3 } + ], + "languages": [ + "cpp", + "java" ] }, { "title": "Reverse String", "id": 344, "frontend_id": 344, + "difficulty_lvl": 1, + "acceptance": 0.77098, "videos": [ { "embedded_url": "https://www.youtube.com/embed/_d0T_2Lk2qA", @@ -16058,15 +16217,15 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 6 }, { "name": "Microsoft", - "score": 8 + "score": 5 }, { "name": "Adobe", - "score": 8 + "score": 5 }, { "name": "Facebook", @@ -16075,21 +16234,21 @@ { "name": "tcs", "score": 3 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Intel", - "score": 1 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Reverse Vowels of a String", "id": 345, "frontend_id": 345, + "difficulty_lvl": 1, + "acceptance": 0.50861, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Vc4nQa0e2n4", @@ -16115,7 +16274,7 @@ "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } ] }, @@ -16123,6 +16282,8 @@ "title": "Moving Average from Data Stream", "id": 346, "frontend_id": 346, + "difficulty_lvl": 1, + "acceptance": 0.77209, "videos": [ { "embedded_url": "https://www.youtube.com/embed/FFX6bz4RCGU", @@ -16148,19 +16309,19 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 43 }, { "name": "Spotify", - "score": 4 + "score": 16 }, { "name": "Amazon", - "score": 1 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 4 } ] }, @@ -16168,6 +16329,8 @@ "title": "Top K Frequent Elements", "id": 347, "frontend_id": 347, + "difficulty_lvl": 2, + "acceptance": 0.63435, "videos": [ { "embedded_url": "https://www.youtube.com/embed/YPTqKIgVk-k", @@ -16193,50 +16356,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 97 }, { "name": "Amazon", - "score": 4 + "score": 29 }, { "name": "Microsoft", - "score": 2 + "score": 12 }, { "name": "Google", - "score": 2 + "score": 8 }, { "name": "Oracle", - "score": 1 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "Cisco", - "score": 1 + "score": 7 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Design Tic-Tac-Toe", "id": 348, "frontend_id": 348, + "difficulty_lvl": 2, + "acceptance": 0.5771, "videos": [ { "embedded_url": "https://www.youtube.com/embed/12SdZxWYQb8", @@ -16262,23 +16413,23 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 15 }, { "name": "Amazon", - "score": 10 + "score": 15 }, { "name": "Microsoft", - "score": 4 + "score": 7 }, { "name": "Google", - "score": 2 + "score": 4 }, { "name": "Adobe", - "score": 1 + "score": 2 } ] }, @@ -16286,6 +16437,8 @@ "title": "Intersection of Two Arrays", "id": 349, "frontend_id": 349, + "difficulty_lvl": 1, + "acceptance": 0.7142, "videos": [ { "embedded_url": "https://www.youtube.com/embed/XZ6ZL1Qg6og", @@ -16311,7 +16464,7 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 9 }, { "name": "Facebook", @@ -16327,19 +16480,7 @@ }, { "name": "Google", - "score": 2 - }, - { - "name": "Microsoft", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "JPMorgan", - "score": 1 + "score": 3 } ] }, @@ -16347,6 +16488,8 @@ "title": "Intersection of Two Arrays II", "id": 350, "frontend_id": 350, + "difficulty_lvl": 1, + "acceptance": 0.56136, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ctOkl71esQg", @@ -16372,23 +16515,23 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 4 }, { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Yahoo", - "score": 10 + "score": 4 }, { "name": "Adobe", - "score": 6 + "score": 3 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } ] }, @@ -16396,6 +16539,8 @@ "title": "Android Unlock Patterns", "id": 351, "frontend_id": 351, + "difficulty_lvl": 2, + "acceptance": 0.51657, "videos": [ { "embedded_url": "https://www.youtube.com/embed/9ciVlXZRW8s", @@ -16421,11 +16566,11 @@ "companies": [ { "name": "Snapchat", - "score": 10 + "score": 3 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -16433,6 +16578,8 @@ "title": "Data Stream as Disjoint Intervals", "id": 352, "frontend_id": 352, + "difficulty_lvl": 3, + "acceptance": 0.59812, "videos": [ { "embedded_url": "https://www.youtube.com/embed/FavoZjPIWpo", @@ -16458,14 +16605,19 @@ "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } + ], + "languages": [ + "javascript" ] }, { "title": "Design Snake Game", "id": 353, "frontend_id": 353, + "difficulty_lvl": 2, + "acceptance": 0.39119, "videos": [ { "embedded_url": "https://www.youtube.com/embed/efNHPr1PHmM", @@ -16491,31 +16643,23 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 5 }, { "name": "Square", - "score": 4 + "score": 3 }, { "name": "Atlassian", - "score": 4 + "score": 3 }, { "name": "tiktok", - "score": 4 + "score": 3 }, { "name": "Google", - "score": 1 - }, - { - "name": "Microsoft", - "score": 1 - }, - { - "name": "IXL", - "score": 1 + "score": 2 } ] }, @@ -16523,6 +16667,8 @@ "title": "Russian Doll Envelopes", "id": 354, "frontend_id": 354, + "difficulty_lvl": 3, + "acceptance": 0.37488, "videos": [ { "embedded_url": "https://www.youtube.com/embed/3fF1r5nhQX4", @@ -16548,11 +16694,11 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 7 }, { "name": "tiktok", - "score": 1 + "score": 2 } ] }, @@ -16560,6 +16706,8 @@ "title": "Design Twitter", "id": 355, "frontend_id": 355, + "difficulty_lvl": 2, + "acceptance": 0.38046, "videos": [ { "embedded_url": "https://www.youtube.com/embed/o5n85GRKuzk", @@ -16581,22 +16729,30 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Walmart Global Tech", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Line Reflection", "id": 356, "frontend_id": 356, + "difficulty_lvl": 2, + "acceptance": 0.34952, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ArsRc6Wqy1o", @@ -16622,7 +16778,7 @@ "companies": [ { "name": "Yandex", - "score": 6 + "score": 2 } ] }, @@ -16630,6 +16786,8 @@ "title": "Count Numbers with Unique Digits", "id": 357, "frontend_id": 357, + "difficulty_lvl": 2, + "acceptance": 0.52151, "videos": [ { "embedded_url": "https://www.youtube.com/embed/nrDNGVW59c8", @@ -16655,7 +16813,7 @@ "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } ] }, @@ -16663,6 +16821,8 @@ "title": "Rearrange String k Distance Apart", "id": 358, "frontend_id": 358, + "difficulty_lvl": 3, + "acceptance": 0.37941, "videos": [ { "embedded_url": "https://www.youtube.com/embed/DT--N9p_O4Y", @@ -16688,19 +16848,19 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 3 }, { "name": "Twitter", - "score": 10 + "score": 3 }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "VMware", - "score": 1 + "score": 2 } ] }, @@ -16708,6 +16868,8 @@ "title": "Logger Rate Limiter", "id": 359, "frontend_id": 359, + "difficulty_lvl": 1, + "acceptance": 0.75622, "videos": [ { "embedded_url": "https://www.youtube.com/embed/A31NcxUuuU4", @@ -16733,27 +16895,23 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 22 }, { "name": "Atlassian", - "score": 5 + "score": 10 }, { "name": "Microsoft", - "score": 2 + "score": 5 }, { "name": "Amazon", - "score": 1 + "score": 3 }, { "name": "Netflix", - "score": 1 - }, - { - "name": "Apple", - "score": 1 + "score": 3 } ] }, @@ -16761,6 +16919,8 @@ "title": "Sort Transformed Array", "id": 360, "frontend_id": 360, + "difficulty_lvl": 2, + "acceptance": 0.55213, "videos": [ { "embedded_url": "https://www.youtube.com/embed/2b7f197Jw6k", @@ -16786,7 +16946,7 @@ "companies": [ { "name": "LinkedIn", - "score": 6 + "score": 10 } ] }, @@ -16794,6 +16954,8 @@ "title": "Bomb Enemy", "id": 361, "frontend_id": 361, + "difficulty_lvl": 2, + "acceptance": 0.51484, "videos": [ { "embedded_url": "https://www.youtube.com/embed/rMuGfUVkmTc", @@ -16815,7 +16977,7 @@ "companies": [ { "name": "Uber", - "score": 6 + "score": 4 } ] }, @@ -16823,6 +16985,8 @@ "title": "Design Hit Counter", "id": 362, "frontend_id": 362, + "difficulty_lvl": 2, + "acceptance": 0.68408, "videos": [ { "embedded_url": "https://www.youtube.com/embed/WkLuQeVsXtY", @@ -16848,15 +17012,15 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 9 }, { "name": "Databricks", - "score": 10 + "score": 9 }, { "name": "Microsoft", - "score": 9 + "score": 8 }, { "name": "Twitter", @@ -16865,18 +17029,6 @@ { "name": "Affirm", "score": 6 - }, - { - "name": "Google", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Uber", - "score": 1 } ] }, @@ -16884,6 +17036,8 @@ "title": "Max Sum of Rectangle No Larger Than K", "id": 363, "frontend_id": 363, + "difficulty_lvl": 3, + "acceptance": 0.43977, "videos": [ { "embedded_url": "https://www.youtube.com/embed/IDv9yvQN3Uc", @@ -16909,7 +17063,7 @@ "companies": [ { "name": "Dunzo", - "score": 6 + "score": 2 } ] }, @@ -16917,6 +17071,8 @@ "title": "Nested List Weight Sum II", "id": 364, "frontend_id": 364, + "difficulty_lvl": 2, + "acceptance": 0.66315, "videos": [ { "embedded_url": "https://www.youtube.com/embed/-t_vRG5S-Os", @@ -16938,7 +17094,7 @@ "companies": [ { "name": "LinkedIn", - "score": 6 + "score": 48 } ] }, @@ -16946,6 +17102,8 @@ "title": "Water and Jug Problem", "id": 365, "frontend_id": 365, + "difficulty_lvl": 2, + "acceptance": 0.38502, "videos": [ { "embedded_url": "https://www.youtube.com/embed/F6rxnomsGpQ", @@ -16971,7 +17129,7 @@ "companies": [ { "name": "Lyft", - "score": 6 + "score": 4 } ] }, @@ -16979,6 +17137,8 @@ "title": "Find Leaves of Binary Tree", "id": 366, "frontend_id": 366, + "difficulty_lvl": 2, + "acceptance": 0.8037, "videos": [ { "embedded_url": "https://www.youtube.com/embed/2vwTmHTL1Mk", @@ -17004,23 +17164,23 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 75 }, { "name": "LinkedIn", - "score": 2 + "score": 13 }, { "name": "Microsoft", - "score": 1 + "score": 4 }, { "name": "Facebook", - "score": 1 + "score": 2 }, { "name": "Amazon", - "score": 1 + "score": 2 } ] }, @@ -17028,6 +17188,8 @@ "title": "Valid Perfect Square", "id": 367, "frontend_id": 367, + "difficulty_lvl": 1, + "acceptance": 0.43365, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Cg_wWPHJ2Sk", @@ -17053,18 +17215,26 @@ "companies": [ { "name": "LinkedIn", - "score": 6 + "score": 3 }, { "name": "Google", - "score": 6 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Largest Divisible Subset", "id": 368, "frontend_id": 368, + "difficulty_lvl": 2, + "acceptance": 0.42009, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Wv6DlL0Sawg", @@ -17090,7 +17260,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -17098,6 +17268,8 @@ "title": "Plus One Linked List", "id": 369, "frontend_id": 369, + "difficulty_lvl": 2, + "acceptance": 0.60972, "videos": [ { "embedded_url": "https://www.youtube.com/embed/6bh8bKxT9o8", @@ -17123,7 +17295,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -17131,6 +17303,8 @@ "title": "Range Addition", "id": 370, "frontend_id": 370, + "difficulty_lvl": 2, + "acceptance": 0.71274, "videos": [ { "embedded_url": "https://www.youtube.com/embed/L6Sg12REBOE", @@ -17156,11 +17330,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 18 }, { "name": "Citadel", - "score": 1 + "score": 5 } ] }, @@ -17168,6 +17342,8 @@ "title": "Sum of Two Integers", "id": 371, "frontend_id": 371, + "difficulty_lvl": 2, + "acceptance": 0.50779, "videos": [ { "embedded_url": "https://www.youtube.com/embed/gVUrDV4tZfY", @@ -17193,14 +17369,22 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Super Pow", "id": 372, "frontend_id": 372, + "difficulty_lvl": 2, + "acceptance": 0.35913, "videos": [ { "embedded_url": "https://www.youtube.com/embed/BR2Gyr9EvH8", @@ -17226,7 +17410,7 @@ "companies": [ { "name": "Adobe", - "score": 6 + "score": 2 } ] }, @@ -17234,6 +17418,8 @@ "title": "Find K Pairs with Smallest Sums", "id": 373, "frontend_id": 373, + "difficulty_lvl": 2, + "acceptance": 0.40053, "videos": [ { "embedded_url": "https://www.youtube.com/embed/fYS_6C4-tfk", @@ -17259,23 +17445,23 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 8 }, { "name": "Apple", - "score": 2 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Walmart Global Tech", - "score": 1 + "score": 2 }, { "name": "Hotstar", - "score": 1 + "score": 2 } ] }, @@ -17283,6 +17469,8 @@ "title": "Guess Number Higher or Lower", "id": 374, "frontend_id": 374, + "difficulty_lvl": 1, + "acceptance": 0.52318, "videos": [ { "embedded_url": "https://www.youtube.com/embed/xW4QsTtaCa4", @@ -17308,18 +17496,26 @@ "companies": [ { "name": "Adobe", - "score": 10 + "score": 4 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Guess Number Higher or Lower II", "id": 375, "frontend_id": 375, + "difficulty_lvl": 2, + "acceptance": 0.47629, "videos": [ { "embedded_url": "https://www.youtube.com/embed/7TnjypshYNU", @@ -17345,14 +17541,17 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Wiggle Subsequence", "id": 376, "frontend_id": 376, + "difficulty_lvl": 2, + "acceptance": 0.48365, "videos": [ { "embedded_url": "https://www.youtube.com/embed/D8m8eWP8w4E", @@ -17378,7 +17577,7 @@ "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } ] }, @@ -17386,6 +17585,8 @@ "title": "Combination Sum IV", "id": 377, "frontend_id": 377, + "difficulty_lvl": 2, + "acceptance": 0.52231, "videos": [ { "embedded_url": "https://www.youtube.com/embed/dw2nMCxG0ik", @@ -17411,26 +17612,33 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Google", - "score": 6 + "score": 3 }, { "name": "Facebook", - "score": 1 + "score": 2 }, { "name": "Microsoft", - "score": 1 + "score": 2 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Kth Smallest Element in a Sorted Matrix", "id": 378, "frontend_id": 378, + "difficulty_lvl": 2, + "acceptance": 0.61937, "videos": [ { "embedded_url": "https://www.youtube.com/embed/w36ekZYq-Ms", @@ -17456,35 +17664,23 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 18 }, { "name": "Amazon", - "score": 3 + "score": 6 }, { "name": "Microsoft", - "score": 2 + "score": 4 }, { "name": "Google", - "score": 2 + "score": 4 }, { "name": "Adobe", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "ByteDance", - "score": 1 + "score": 2 } ] }, @@ -17492,6 +17688,8 @@ "title": "Design Phone Directory", "id": 379, "frontend_id": 379, + "difficulty_lvl": 2, + "acceptance": 0.51322, "videos": [ { "embedded_url": "https://www.youtube.com/embed/OnAH73VUlzM", @@ -17517,11 +17715,11 @@ "companies": [ { "name": "Dropbox", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -17529,6 +17727,8 @@ "title": "Insert Delete GetRandom O(1)", "id": 380, "frontend_id": 380, + "difficulty_lvl": 2, + "acceptance": 0.52794, "videos": [ { "embedded_url": "https://www.youtube.com/embed/j4KwhBziOpg", @@ -17550,12 +17750,41 @@ "embedded_url": "https://www.youtube.com/embed/hru9opR7wG8", "channel": "Eric Programming" } + ], + "companies": [ + { + "name": "Facebook", + "score": 23 + }, + { + "name": "Bloomberg", + "score": 23 + }, + { + "name": "Amazon", + "score": 17 + }, + { + "name": "LinkedIn", + "score": 15 + }, + { + "name": "Microsoft", + "score": 12 + } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Insert Delete GetRandom O(1) - Duplicates allowed", "id": 381, "frontend_id": 381, + "difficulty_lvl": 3, + "acceptance": 0.35459, "videos": [ { "embedded_url": "https://www.youtube.com/embed/a-UYY_DvCBY", @@ -17577,12 +17806,28 @@ "embedded_url": "https://www.youtube.com/embed/mRTgft9sBhA", "channel": "Hua Hua" } + ], + "companies": [ + { + "name": "Facebook", + "score": 5 + }, + { + "name": "LinkedIn", + "score": 4 + }, + { + "name": "Affirm", + "score": 3 + } ] }, { "title": "Linked List Random Node", "id": 382, "frontend_id": 382, + "difficulty_lvl": 2, + "acceptance": 0.62844, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4MOEg3fLKI4", @@ -17608,11 +17853,11 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 2 }, { "name": "Amazon", - "score": 10 + "score": 2 }, { "name": "Google", @@ -17624,6 +17869,8 @@ "title": "Ransom Note", "id": 383, "frontend_id": 383, + "difficulty_lvl": 1, + "acceptance": 0.59017, "videos": [ { "embedded_url": "https://www.youtube.com/embed/bYzvVCfbwXM", @@ -17653,22 +17900,27 @@ }, { "name": "Apple", - "score": 2 + "score": 3 }, { "name": "Google", - "score": 2 + "score": 3 }, { "name": "Adobe", - "score": 1 + "score": 2 } + ], + "languages": [ + "python" ] }, { "title": "Shuffle an Array", "id": 384, "frontend_id": 384, + "difficulty_lvl": 2, + "acceptance": 0.57942, "videos": [ { "embedded_url": "https://www.youtube.com/embed/NCpXQshJEk4", @@ -17690,12 +17942,15 @@ "embedded_url": "https://www.youtube.com/embed/1LPnpOwzQys", "channel": "Programming Live with Larry" } - ] + ], + "companies": [] }, { "title": "Mini Parser", "id": 385, "frontend_id": 385, + "difficulty_lvl": 2, + "acceptance": 0.37193, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ArxEks3v-9U", @@ -17721,7 +17976,7 @@ "companies": [ { "name": "Airbnb", - "score": 6 + "score": 1 } ] }, @@ -17729,6 +17984,8 @@ "title": "Lexicographical Numbers", "id": 386, "frontend_id": 386, + "difficulty_lvl": 2, + "acceptance": 0.62238, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4ADj8-JGA8s", @@ -17750,12 +18007,15 @@ "embedded_url": "https://www.youtube.com/embed/gRo86WqFYSE", "channel": "Pepcoding" } - ] + ], + "companies": [] }, { "title": "First Unique Character in a String", "id": 387, "frontend_id": 387, + "difficulty_lvl": 1, + "acceptance": 0.59985, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ReUGo6fZafc", @@ -17781,46 +18041,35 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 30 }, { "name": "Bloomberg", - "score": 4 + "score": 13 }, { "name": "Apple", - "score": 2 + "score": 6 }, { "name": "Microsoft", - "score": 2 + "score": 6 }, { "name": "Oracle", - "score": 2 - }, - { - "name": "Goldman Sachs", - "score": 1 - }, - { - "name": "Facebook", - "score": 1 - }, - { - "name": "Yahoo", - "score": 1 - }, - { - "name": "Qualtrics", - "score": 1 + "score": 5 } + ], + "languages": [ + "cpp" ] }, { "title": "Longest Absolute File Path", "id": 388, "frontend_id": 388, + "difficulty_lvl": 2, + "acceptance": 0.46781, "videos": [ { "embedded_url": "https://www.youtube.com/embed/uaSnnAjbaXk", @@ -17846,11 +18095,11 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 7 }, { "name": "Amazon", - "score": 1 + "score": 2 } ] }, @@ -17858,6 +18107,8 @@ "title": "Find the Difference", "id": 389, "frontend_id": 389, + "difficulty_lvl": 1, + "acceptance": 0.59281, "videos": [ { "embedded_url": "https://www.youtube.com/embed/sRwElQ_TOr8", @@ -17883,7 +18134,7 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 6 }, { "name": "Amazon", @@ -17891,7 +18142,7 @@ }, { "name": "Apple", - "score": 1 + "score": 2 } ] }, @@ -17899,6 +18150,8 @@ "title": "Elimination Game", "id": 390, "frontend_id": 390, + "difficulty_lvl": 2, + "acceptance": 0.45933, "videos": [ { "embedded_url": "https://www.youtube.com/embed/LVfj1KefZAQ", @@ -17924,15 +18177,15 @@ "companies": [ { "name": "Bloomberg", - "score": 10 + "score": 4 }, { "name": "Goldman Sachs", - "score": 10 + "score": 4 }, { "name": "Adobe", - "score": 1 + "score": 2 } ] }, @@ -17940,6 +18193,8 @@ "title": "Perfect Rectangle", "id": 391, "frontend_id": 391, + "difficulty_lvl": 3, + "acceptance": 0.33075, "videos": [ { "embedded_url": "https://www.youtube.com/embed/X8V4UyDcuYQ", @@ -17965,11 +18220,11 @@ "companies": [ { "name": "Apple", - "score": 10 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 2 } ] }, @@ -17977,6 +18232,8 @@ "title": "Is Subsequence", "id": 392, "frontend_id": 392, + "difficulty_lvl": 1, + "acceptance": 0.47265, "videos": [ { "embedded_url": "https://www.youtube.com/embed/99RVfqklbCE", @@ -18002,26 +18259,34 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Google", - "score": 6 + "score": 3 }, { "name": "Yandex", - "score": 6 + "score": 3 }, { "name": "Adobe", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "UTF-8 Validation", "id": 393, "frontend_id": 393, + "difficulty_lvl": 2, + "acceptance": 0.45044, "videos": [ { "embedded_url": "https://www.youtube.com/embed/doeurUy4aZU", @@ -18047,11 +18312,11 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 }, { "name": "Palantir Technologies", - "score": 6 + "score": 2 } ] }, @@ -18059,6 +18324,8 @@ "title": "Decode String", "id": 394, "frontend_id": 394, + "difficulty_lvl": 2, + "acceptance": 0.58263, "videos": [ { "embedded_url": "https://www.youtube.com/embed/qB0zZpBJlh8", @@ -18084,50 +18351,37 @@ "companies": [ { "name": "Bloomberg", - "score": 10 + "score": 33 }, { "name": "Google", - "score": 6 + "score": 19 }, { "name": "Microsoft", - "score": 4 + "score": 14 }, { "name": "Amazon", - "score": 3 + "score": 12 }, { "name": "Facebook", - "score": 3 - }, - { - "name": "Cisco", - "score": 2 - }, - { - "name": "Oracle", - "score": 1 - }, - { - "name": "Snapchat", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "tiktok", - "score": 1 + "score": 11 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Longest Substring with At Least K Repeating Characters", "id": 395, "frontend_id": 395, + "difficulty_lvl": 2, + "acceptance": 0.44804, "videos": [ { "embedded_url": "https://www.youtube.com/embed/bHZkCAcj3dc", @@ -18153,11 +18407,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -18165,6 +18419,8 @@ "title": "Rotate Function", "id": 396, "frontend_id": 396, + "difficulty_lvl": 2, + "acceptance": 0.41561, "videos": [ { "embedded_url": "https://www.youtube.com/embed/mUR13VBC8EQ", @@ -18190,11 +18446,11 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 3 }, { "name": "Apple", - "score": 6 + "score": 2 }, { "name": "Amazon", @@ -18206,6 +18462,8 @@ "title": "Integer Replacement", "id": 397, "frontend_id": 397, + "difficulty_lvl": 2, + "acceptance": 0.35294, "videos": [ { "embedded_url": "https://www.youtube.com/embed/5ksn2Myjlig", @@ -18231,7 +18489,7 @@ "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } ] }, @@ -18239,6 +18497,8 @@ "title": "Random Pick Index", "id": 398, "frontend_id": 398, + "difficulty_lvl": 2, + "acceptance": 0.62469, "videos": [ { "embedded_url": "https://www.youtube.com/embed/NBMHMgBHoKk", @@ -18264,15 +18524,15 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 21 }, { "name": "Google", - "score": 2 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 } ] }, @@ -18280,6 +18540,8 @@ "title": "Evaluate Division", "id": 399, "frontend_id": 399, + "difficulty_lvl": 2, + "acceptance": 0.61369, "videos": [ { "embedded_url": "https://www.youtube.com/embed/UcDZM6Ap5P4", @@ -18305,46 +18567,35 @@ "companies": [ { "name": "Uber", - "score": 10 + "score": 14 }, { "name": "Amazon", - "score": 7 + "score": 10 }, { "name": "Google", - "score": 6 + "score": 8 }, { "name": "Facebook", - "score": 6 + "score": 8 }, { "name": "Snapchat", - "score": 3 - }, - { - "name": "tiktok", - "score": 2 - }, - { - "name": "Adobe", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "BlackRock", - "score": 1 + "score": 5 } + ], + "languages": [ + "cpp" ] }, { "title": "Nth Digit", "id": 400, "frontend_id": 400, + "difficulty_lvl": 2, + "acceptance": 0.34234, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4QAGxDIVpdM", @@ -18370,7 +18621,7 @@ "companies": [ { "name": "Apple", - "score": 6 + "score": 3 } ] }, @@ -18378,6 +18629,8 @@ "title": "Binary Watch", "id": 401, "frontend_id": 401, + "difficulty_lvl": 1, + "acceptance": 0.52879, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Pdpug1FIDqQ", @@ -18403,7 +18656,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -18411,6 +18664,8 @@ "title": "Remove K Digits", "id": 402, "frontend_id": 402, + "difficulty_lvl": 2, + "acceptance": 0.30689, "videos": [ { "embedded_url": "https://www.youtube.com/embed/cFabMOnJaq0", @@ -18440,34 +18695,34 @@ }, { "name": "Microsoft", - "score": 2 + "score": 3 }, { "name": "Bloomberg", - "score": 2 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Adobe", - "score": 1 - }, - { - "name": "Facebook", - "score": 1 - }, - { - "name": "MakeMyTrip", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Frog Jump", "id": 403, "frontend_id": 403, + "difficulty_lvl": 3, + "acceptance": 0.43077, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4LvYp_d6Ydg", @@ -18493,7 +18748,7 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 6 }, { "name": "Microsoft", @@ -18501,15 +18756,15 @@ }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "ByteDance", - "score": 1 + "score": 2 }, { "name": "tiktok", - "score": 1 + "score": 2 } ] }, @@ -18517,6 +18772,8 @@ "title": "Sum of Left Leaves", "id": 404, "frontend_id": 404, + "difficulty_lvl": 1, + "acceptance": 0.57067, "videos": [ { "embedded_url": "https://www.youtube.com/embed/gPj3Fhekys8", @@ -18542,7 +18799,7 @@ "companies": [ { "name": "Adobe", - "score": 6 + "score": 2 } ] }, @@ -18550,6 +18807,8 @@ "title": "Convert a Number to Hexadecimal", "id": 405, "frontend_id": 405, + "difficulty_lvl": 1, + "acceptance": 0.47211, "videos": [ { "embedded_url": "https://www.youtube.com/embed/0rBhhx0ur98", @@ -18575,11 +18834,11 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -18587,6 +18846,8 @@ "title": "Queue Reconstruction by Height", "id": 406, "frontend_id": 406, + "difficulty_lvl": 2, + "acceptance": 0.73093, "videos": [ { "embedded_url": "https://www.youtube.com/embed/khddrw6Bfyw", @@ -18612,7 +18873,7 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 3 } ] }, @@ -18620,6 +18881,8 @@ "title": "Trapping Rain Water II", "id": 407, "frontend_id": 407, + "difficulty_lvl": 3, + "acceptance": 0.47612, "videos": [ { "embedded_url": "https://www.youtube.com/embed/iOzm4ht8uMQ", @@ -18645,7 +18908,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 4 } ] }, @@ -18653,6 +18916,8 @@ "title": "Valid Word Abbreviation", "id": 408, "frontend_id": 408, + "difficulty_lvl": 1, + "acceptance": 0.34859, "videos": [ { "embedded_url": "https://www.youtube.com/embed/pzCXi5HvKsQ", @@ -18678,18 +18943,23 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 114 }, { "name": "Google", - "score": 1 + "score": 3 } + ], + "languages": [ + "java" ] }, { "title": "Longest Palindrome", "id": 409, "frontend_id": 409, + "difficulty_lvl": 1, + "acceptance": 0.53978, "videos": [ { "embedded_url": "https://www.youtube.com/embed/J_Di2LmeLBQ", @@ -18710,12 +18980,16 @@ { "embedded_url": "https://www.youtube.com/embed/noaGOtGmCzs", "channel": "Naresh Gupta" + }, + { + "embedded_url": "https://www.youtube.com/embed/_g9jrLuAphs", + "channel": "NeetCodeIO" } ], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -18723,6 +18997,8 @@ "title": "Split Array Largest Sum", "id": 410, "frontend_id": 410, + "difficulty_lvl": 3, + "acceptance": 0.54024, "videos": [ { "embedded_url": "https://www.youtube.com/embed/YUF3_eBdzsk", @@ -18748,34 +19024,36 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 8 }, { "name": "Amazon", - "score": 7 + "score": 6 }, { "name": "tiktok", - "score": 7 + "score": 6 }, { "name": "Facebook", - "score": 6 + "score": 5 }, { "name": "ByteDance", - "score": 1 - }, - { - "name": "Apple", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python" ] }, { "title": "Minimum Unique Word Abbreviation", "id": 411, "frontend_id": 411, + "difficulty_lvl": 3, + "acceptance": 0.39511, "videos": [ { "embedded_url": "https://www.youtube.com/embed/rO0NGn3ztXo", @@ -18801,7 +19079,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -18809,6 +19087,8 @@ "title": "Fizz Buzz", "id": 412, "frontend_id": 412, + "difficulty_lvl": 1, + "acceptance": 0.70628, "videos": [ { "embedded_url": "https://www.youtube.com/embed/_Gof448HzAI", @@ -18834,15 +19114,15 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 3 }, { "name": "Microsoft", - "score": 10 + "score": 3 }, { "name": "Apple", - "score": 1 + "score": 2 } ] }, @@ -18850,6 +19130,8 @@ "title": "Arithmetic Slices", "id": 413, "frontend_id": 413, + "difficulty_lvl": 2, + "acceptance": 0.65035, "videos": [ { "embedded_url": "https://www.youtube.com/embed/D7PZZtvHnGo", @@ -18875,11 +19157,11 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Bloomberg", - "score": 6 + "score": 2 } ] }, @@ -18887,6 +19169,8 @@ "title": "Third Maximum Number", "id": 414, "frontend_id": 414, + "difficulty_lvl": 1, + "acceptance": 0.33652, "videos": [ { "embedded_url": "https://www.youtube.com/embed/7hbaFYuJY5Y", @@ -18912,15 +19196,15 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Apple", - "score": 6 + "score": 2 }, { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -18928,6 +19212,8 @@ "title": "Add Strings", "id": 415, "frontend_id": 415, + "difficulty_lvl": 1, + "acceptance": 0.52069, "videos": [ { "embedded_url": "https://www.youtube.com/embed/xlPIH9216Ak", @@ -18953,35 +19239,23 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 54 }, { "name": "Wayfair", - "score": 4 + "score": 20 }, { "name": "Microsoft", - "score": 2 + "score": 9 }, { "name": "Google", - "score": 2 + "score": 5 }, { "name": "Oracle", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Amazon", - "score": 1 - }, - { - "name": "Apple", - "score": 1 + "score": 4 } ] }, @@ -18989,6 +19263,8 @@ "title": "Partition Equal Subset Sum", "id": 416, "frontend_id": 416, + "difficulty_lvl": 2, + "acceptance": 0.46187, "videos": [ { "embedded_url": "https://www.youtube.com/embed/IsvocB5BJhw", @@ -19010,34 +19286,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 11 }, { "name": "Microsoft", - "score": 4 + "score": 5 }, { "name": "Amazon", - "score": 3 + "score": 4 }, { "name": "Apple", - "score": 1 + "score": 2 }, { "name": "Google", - "score": 1 - }, - { - "name": "Walmart Global Tech", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Pacific Atlantic Water Flow", "id": 417, "frontend_id": 417, + "difficulty_lvl": 2, + "acceptance": 0.54664, "videos": [ { "embedded_url": "https://www.youtube.com/embed/s-VkcjHqkGI", @@ -19067,22 +19347,30 @@ }, { "name": "Uber", - "score": 2 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Salesforce", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Sentence Screen Fitting", "id": 418, "frontend_id": 418, + "difficulty_lvl": 2, + "acceptance": 0.35622, "videos": [ { "embedded_url": "https://www.youtube.com/embed/1ChX4Cpz0bU", @@ -19104,7 +19392,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 8 } ] }, @@ -19112,6 +19400,8 @@ "title": "Battleships in a Board", "id": 419, "frontend_id": 419, + "difficulty_lvl": 2, + "acceptance": 0.74959, "videos": [ { "embedded_url": "https://www.youtube.com/embed/DCa04eCUhx0", @@ -19145,23 +19435,15 @@ }, { "name": "Facebook", - "score": 3 + "score": 4 }, { "name": "Microsoft", - "score": 3 + "score": 4 }, { "name": "Apple", - "score": 1 - }, - { - "name": "Amazon", - "score": 1 - }, - { - "name": "GoDaddy", - "score": 1 + "score": 2 } ] }, @@ -19169,6 +19451,8 @@ "title": "Strong Password Checker", "id": 420, "frontend_id": 420, + "difficulty_lvl": 3, + "acceptance": 0.13615, "videos": [ { "embedded_url": "https://www.youtube.com/embed/3j_eAw0B8ko", @@ -19194,11 +19478,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 6 }, { "name": "Google", - "score": 1 + "score": 3 } ] }, @@ -19206,6 +19490,8 @@ "title": "Maximum XOR of Two Numbers in an Array", "id": 421, "frontend_id": 421, + "difficulty_lvl": 2, + "acceptance": 0.53765, "videos": [ { "embedded_url": "https://www.youtube.com/embed/KgkOp17GzeY", @@ -19231,11 +19517,11 @@ "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 }, { "name": "Adobe", - "score": 6 + "score": 2 } ] }, @@ -19243,6 +19529,8 @@ "title": "Valid Word Square", "id": 422, "frontend_id": 422, + "difficulty_lvl": 1, + "acceptance": 0.40326, "videos": [ { "embedded_url": "https://www.youtube.com/embed/I4RaUEYvAwQ", @@ -19268,7 +19556,7 @@ "companies": [ { "name": "Bloomberg", - "score": 10 + "score": 2 }, { "name": "Google", @@ -19280,6 +19568,8 @@ "title": "Reconstruct Original Digits from English", "id": 423, "frontend_id": 423, + "difficulty_lvl": 2, + "acceptance": 0.51152, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ayFUcSDiXhI", @@ -19305,7 +19595,7 @@ "companies": [ { "name": "JPMorgan", - "score": 6 + "score": 69 } ] }, @@ -19313,6 +19603,8 @@ "title": "Longest Repeating Character Replacement", "id": 424, "frontend_id": 424, + "difficulty_lvl": 2, + "acceptance": 0.52365, "videos": [ { "embedded_url": "https://www.youtube.com/embed/gqXU1UyA8pk", @@ -19338,26 +19630,34 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 7 }, { "name": "Amazon", - "score": 8 + "score": 6 }, { "name": "Uber", - "score": 3 + "score": 4 }, { "name": "Adobe", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Word Squares", "id": 425, "frontend_id": 425, + "difficulty_lvl": 3, + "acceptance": 0.52977, "videos": [ { "embedded_url": "https://www.youtube.com/embed/unLYmWQ9MVI", @@ -19383,7 +19683,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 3 } ] }, @@ -19391,6 +19691,8 @@ "title": "All O`one Data Structure", "id": 432, "frontend_id": 432, + "difficulty_lvl": 3, + "acceptance": 0.36548, "videos": [ { "embedded_url": "https://www.youtube.com/embed/2tNO6oqY3d8", @@ -19412,12 +19714,28 @@ "embedded_url": "https://www.youtube.com/embed/1TK2a26zU6I", "channel": "Huifeng Guan" } + ], + "companies": [ + { + "name": "LinkedIn", + "score": 17 + }, + { + "name": "Amazon", + "score": 3 + }, + { + "name": "VMware", + "score": 2 + } ] }, { "title": "Minimum Genetic Mutation", "id": 433, "frontend_id": 433, + "difficulty_lvl": 2, + "acceptance": 0.5273, "videos": [ { "embedded_url": "https://www.youtube.com/embed/_uH8GJPOKXI", @@ -19439,12 +19757,15 @@ "embedded_url": "https://www.youtube.com/embed/QgOMTUgLclA", "channel": "CodeFreaks" } - ] + ], + "companies": [] }, { "title": "Number of Segments in a String", "id": 434, "frontend_id": 434, + "difficulty_lvl": 1, + "acceptance": 0.36748, "videos": [ { "embedded_url": "https://www.youtube.com/embed/aeRZNDh5_ew", @@ -19470,7 +19791,7 @@ "companies": [ { "name": "Apple", - "score": 6 + "score": 2 } ] }, @@ -19478,6 +19799,8 @@ "title": "Non-overlapping Intervals", "id": 435, "frontend_id": 435, + "difficulty_lvl": 2, + "acceptance": 0.51997, "videos": [ { "embedded_url": "https://www.youtube.com/embed/nONCGxWoUfM", @@ -19503,22 +19826,30 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 7 }, { "name": "Amazon", - "score": 5 + "score": 4 }, { "name": "Microsoft", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Find Right Interval", "id": 436, "frontend_id": 436, + "difficulty_lvl": 2, + "acceptance": 0.51253, "videos": [ { "embedded_url": "https://www.youtube.com/embed/VEBbumHmps8", @@ -19544,11 +19875,11 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Wish", - "score": 6 + "score": 2 } ] }, @@ -19556,6 +19887,8 @@ "title": "Path Sum III", "id": 437, "frontend_id": 437, + "difficulty_lvl": 2, + "acceptance": 0.47367, "videos": [ { "embedded_url": "https://www.youtube.com/embed/VDTZiggKlAE", @@ -19581,19 +19914,19 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 4 }, { "name": "tiktok", - "score": 10 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 3 }, { "name": "DoorDash", - "score": 1 + "score": 3 } ] }, @@ -19601,6 +19934,8 @@ "title": "Find All Anagrams in a String", "id": 438, "frontend_id": 438, + "difficulty_lvl": 2, + "acceptance": 0.50334, "videos": [ { "embedded_url": "https://www.youtube.com/embed/G8xtZy0fDKg", @@ -19626,50 +19961,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 15 }, { "name": "Microsoft", - "score": 7 + "score": 11 }, { "name": "Facebook", - "score": 3 + "score": 5 }, { "name": "Apple", - "score": 2 + "score": 4 }, { "name": "Adobe", - "score": 2 - }, - { - "name": "Uber", - "score": 2 - }, - { - "name": "Yahoo", - "score": 2 - }, - { - "name": "Oracle", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 2 - }, - { - "name": "Google", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Ternary Expression Parser", "id": 439, "frontend_id": 439, + "difficulty_lvl": 2, + "acceptance": 0.60169, "videos": [ { "embedded_url": "https://www.youtube.com/embed/LGwx6zakbSI", @@ -19691,7 +20014,7 @@ "companies": [ { "name": "Snapchat", - "score": 6 + "score": 1 } ] }, @@ -19699,6 +20022,8 @@ "title": "K-th Smallest in Lexicographical Order", "id": 440, "frontend_id": 440, + "difficulty_lvl": 3, + "acceptance": 0.31447, "videos": [ { "embedded_url": "https://www.youtube.com/embed/355Cq7Stuv4", @@ -19720,7 +20045,7 @@ "companies": [ { "name": "ByteDance", - "score": 10 + "score": 2 }, { "name": "Hulu", @@ -19732,6 +20057,8 @@ "title": "Arranging Coins", "id": 441, "frontend_id": 441, + "difficulty_lvl": 1, + "acceptance": 0.46291, "videos": [ { "embedded_url": "https://www.youtube.com/embed/5rHz_6s2Buw", @@ -19753,12 +20080,21 @@ "embedded_url": "https://www.youtube.com/embed/dntz-wpip30", "channel": "Programming Tutorials" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Find All Duplicates in an Array", "id": 442, "frontend_id": 442, + "difficulty_lvl": 2, + "acceptance": 0.7357, "videos": [ { "embedded_url": "https://www.youtube.com/embed/aMsSF1Il3IY", @@ -19784,23 +20120,23 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 5 }, { "name": "Microsoft", - "score": 7 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Adobe", - "score": 1 + "score": 2 }, { "name": "Apple", - "score": 1 + "score": 2 } ] }, @@ -19808,6 +20144,8 @@ "title": "String Compression", "id": 443, "frontend_id": 443, + "difficulty_lvl": 2, + "acceptance": 0.52821, "videos": [ { "embedded_url": "https://www.youtube.com/embed/6W1MDK7nPZs", @@ -19833,11 +20171,11 @@ "companies": [ { "name": "Expedia", - "score": 10 + "score": 8 }, { "name": "Amazon", - "score": 10 + "score": 8 }, { "name": "Microsoft", @@ -19850,22 +20188,6 @@ { "name": "Apple", "score": 6 - }, - { - "name": "Facebook", - "score": 5 - }, - { - "name": "Visa", - "score": 3 - }, - { - "name": "Yandex", - "score": 1 - }, - { - "name": "Redfin", - "score": 1 } ] }, @@ -19873,6 +20195,8 @@ "title": "Sequence Reconstruction", "id": 444, "frontend_id": 444, + "difficulty_lvl": 2, + "acceptance": 0.26947, "videos": [ { "embedded_url": "https://www.youtube.com/embed/wggaoezAR34", @@ -19898,7 +20222,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -19906,6 +20230,8 @@ "title": "Add Two Numbers II", "id": 445, "frontend_id": 445, + "difficulty_lvl": 2, + "acceptance": 0.60999, "videos": [ { "embedded_url": "https://www.youtube.com/embed/LKqUXBZTN-8", @@ -19931,11 +20257,11 @@ "companies": [ { "name": "Bloomberg", - "score": 10 + "score": 6 }, { "name": "Microsoft", - "score": 6 + "score": 4 }, { "name": "Amazon", @@ -19943,7 +20269,7 @@ }, { "name": "Oracle", - "score": 1 + "score": 2 } ] }, @@ -19951,6 +20277,8 @@ "title": "Arithmetic Slices II - Subsequence", "id": 446, "frontend_id": 446, + "difficulty_lvl": 3, + "acceptance": 0.46547, "videos": [ { "embedded_url": "https://www.youtube.com/embed/XjLT4TaXsgw", @@ -19972,12 +20300,35 @@ "embedded_url": "https://www.youtube.com/embed/cau0JE1q_ZA", "channel": "codestorywithMIK" } + ], + "companies": [ + { + "name": "Adobe", + "score": 2 + }, + { + "name": "Google", + "score": 2 + }, + { + "name": "Uber", + "score": 2 + }, + { + "name": "Baidu", + "score": 1 + } + ], + "languages": [ + "java" ] }, { "title": "Number of Boomerangs", "id": 447, "frontend_id": 447, + "difficulty_lvl": 2, + "acceptance": 0.55061, "videos": [ { "embedded_url": "https://www.youtube.com/embed/eXcfiIHMJec", @@ -20003,7 +20354,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 5 } ] }, @@ -20011,6 +20362,8 @@ "title": "Find All Numbers Disappeared in an Array", "id": 448, "frontend_id": 448, + "difficulty_lvl": 1, + "acceptance": 0.60194, "videos": [ { "embedded_url": "https://www.youtube.com/embed/8i-f24YFWC4", @@ -20036,26 +20389,34 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 7 }, { "name": "Amazon", - "score": 6 + "score": 5 }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "Apple", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Serialize and Deserialize BST", "id": 449, "frontend_id": 449, + "difficulty_lvl": 2, + "acceptance": 0.57208, "videos": [ { "embedded_url": "https://www.youtube.com/embed/lP2yP8Iy88c", @@ -20081,15 +20442,15 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "LinkedIn", - "score": 1 + "score": 2 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -20097,6 +20458,8 @@ "title": "Delete Node in a BST", "id": 450, "frontend_id": 450, + "difficulty_lvl": 2, + "acceptance": 0.50638, "videos": [ { "embedded_url": "https://www.youtube.com/embed/LFzAoJJt92M", @@ -20122,7 +20485,7 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 8 }, { "name": "Microsoft", @@ -20130,22 +20493,29 @@ }, { "name": "Oracle", - "score": 3 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 3 }, { "name": "LinkedIn", - "score": 1 + "score": 3 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Sort Characters By Frequency", "id": 451, "frontend_id": 451, + "difficulty_lvl": 2, + "acceptance": 0.7025, "videos": [ { "embedded_url": "https://www.youtube.com/embed/vltY5jxqcco", @@ -20171,23 +20541,23 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 5 }, { "name": "Facebook", - "score": 4 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Bloomberg", - "score": 1 + "score": 2 }, { "name": "Apple", - "score": 1 + "score": 2 } ] }, @@ -20195,6 +20565,8 @@ "title": "Minimum Number of Arrows to Burst Balloons", "id": 452, "frontend_id": 452, + "difficulty_lvl": 2, + "acceptance": 0.55427, "videos": [ { "embedded_url": "https://www.youtube.com/embed/_WIFehFkkig", @@ -20220,15 +20592,15 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 }, { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Goldman Sachs", - "score": 6 + "score": 2 } ] }, @@ -20236,6 +20608,8 @@ "title": "Minimum Moves to Equal Array Elements", "id": 453, "frontend_id": 453, + "difficulty_lvl": 2, + "acceptance": 0.56273, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Wo168YDPwzk", @@ -20261,19 +20635,19 @@ "companies": [ { "name": "Goldman Sachs", - "score": 10 + "score": 4 }, { "name": "Twitter", - "score": 1 + "score": 3 }, { "name": "Visa", - "score": 1 + "score": 3 }, { "name": "Mathworks", - "score": 1 + "score": 3 } ] }, @@ -20281,6 +20655,8 @@ "title": "4Sum II", "id": 454, "frontend_id": 454, + "difficulty_lvl": 2, + "acceptance": 0.57151, "videos": [ { "embedded_url": "https://www.youtube.com/embed/XHlA0KdvQBc", @@ -20306,7 +20682,7 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 6 }, { "name": "Facebook", @@ -20314,11 +20690,11 @@ }, { "name": "Adobe", - "score": 1 + "score": 2 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } ] }, @@ -20326,6 +20702,8 @@ "title": "Assign Cookies", "id": 455, "frontend_id": 455, + "difficulty_lvl": 1, + "acceptance": 0.49805, "videos": [ { "embedded_url": "https://www.youtube.com/embed/EX2jEKJnzw4", @@ -20351,14 +20729,19 @@ "companies": [ { "name": "Apple", - "score": 6 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "132 Pattern", "id": 456, "frontend_id": 456, + "difficulty_lvl": 2, + "acceptance": 0.32356, "videos": [ { "embedded_url": "https://www.youtube.com/embed/q5ANAl8Z458", @@ -20384,14 +20767,21 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 4 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Circular Array Loop", "id": 457, "frontend_id": 457, + "difficulty_lvl": 2, + "acceptance": 0.32963, "videos": [ { "embedded_url": "https://www.youtube.com/embed/cjeQwRNbiDo", @@ -20417,7 +20807,7 @@ "companies": [ { "name": "Goldman Sachs", - "score": 6 + "score": 2 } ] }, @@ -20425,6 +20815,8 @@ "title": "Poor Pigs", "id": 458, "frontend_id": 458, + "difficulty_lvl": 3, + "acceptance": 0.61947, "videos": [ { "embedded_url": "https://www.youtube.com/embed/9YSHcsprxh0", @@ -20446,12 +20838,15 @@ "embedded_url": "https://www.youtube.com/embed/I83XgeSiqsQ", "channel": "Tier 3" } - ] + ], + "companies": [] }, { "title": "Repeated Substring Pattern", "id": 459, "frontend_id": 459, + "difficulty_lvl": 1, + "acceptance": 0.43714, "videos": [ { "embedded_url": "https://www.youtube.com/embed/bClIZj66dVE", @@ -20477,18 +20872,23 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Facebook", - "score": 6 + "score": 2 } + ], + "languages": [ + "python" ] }, { "title": "LFU Cache", "id": 460, "frontend_id": 460, + "difficulty_lvl": 3, + "acceptance": 0.43409, "videos": [ { "embedded_url": "https://www.youtube.com/embed/bLEIHn-DgoA", @@ -20510,46 +20910,35 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 11 }, { "name": "Amazon", - "score": 7 + "score": 8 }, { "name": "Google", - "score": 3 + "score": 4 }, { "name": "Snapchat", - "score": 2 + "score": 3 }, { "name": "LinkedIn", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "VMware", - "score": 1 - }, - { - "name": "Walmart Global Tech", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript" ] }, { "title": "Hamming Distance", "id": 461, "frontend_id": 461, + "difficulty_lvl": 1, + "acceptance": 0.75116, "videos": [ { "embedded_url": "https://www.youtube.com/embed/5UKMvO5bXPI", @@ -20575,7 +20964,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -20583,6 +20972,8 @@ "title": "Minimum Moves to Equal Array Elements II", "id": 462, "frontend_id": 462, + "difficulty_lvl": 2, + "acceptance": 0.59965, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Wo168YDPwzk", @@ -20608,7 +20999,7 @@ "companies": [ { "name": "Microsoft", - "score": 6 + "score": 5 } ] }, @@ -20616,6 +21007,8 @@ "title": "Island Perimeter", "id": 463, "frontend_id": 463, + "difficulty_lvl": 1, + "acceptance": 0.69839, "videos": [ { "embedded_url": "https://www.youtube.com/embed/fISIuAFRM2s", @@ -20645,18 +21038,26 @@ }, { "name": "Google", - "score": 2 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Can I Win", "id": 464, "frontend_id": 464, + "difficulty_lvl": 2, + "acceptance": 0.29602, "videos": [ { "embedded_url": "https://www.youtube.com/embed/12daXQq4EyY", @@ -20682,7 +21083,7 @@ "companies": [ { "name": "LinkedIn", - "score": 6 + "score": 3 } ] }, @@ -20690,6 +21091,8 @@ "title": "Optimal Account Balancing", "id": 465, "frontend_id": 465, + "difficulty_lvl": 3, + "acceptance": 0.49395, "videos": [ { "embedded_url": "https://www.youtube.com/embed/I8lLGTgb9LU", @@ -20715,7 +21118,7 @@ "companies": [ { "name": "Uber", - "score": 10 + "score": 8 }, { "name": "Google", @@ -20723,11 +21126,11 @@ }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Affirm", - "score": 1 + "score": 2 } ] }, @@ -20735,6 +21138,8 @@ "title": "Count The Repetitions", "id": 466, "frontend_id": 466, + "difficulty_lvl": 3, + "acceptance": 0.2956, "videos": [ { "embedded_url": "https://www.youtube.com/embed/NAdQ9yd11-U", @@ -20760,7 +21165,7 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 3 } ] }, @@ -20768,6 +21173,8 @@ "title": "Unique Substrings in Wraparound String", "id": 467, "frontend_id": 467, + "difficulty_lvl": 2, + "acceptance": 0.38901, "videos": [ { "embedded_url": "https://www.youtube.com/embed/2nCTyDrRm4I", @@ -20789,7 +21196,7 @@ "companies": [ { "name": "Apple", - "score": 10 + "score": 2 }, { "name": "MAQ Software", @@ -20801,6 +21208,8 @@ "title": "Validate IP Address", "id": 468, "frontend_id": 468, + "difficulty_lvl": 2, + "acceptance": 0.26659, "videos": [ { "embedded_url": "https://www.youtube.com/embed/EB5FAwHqpm4", @@ -20826,15 +21235,15 @@ "companies": [ { "name": "Cisco", - "score": 10 + "score": 8 }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "Amazon", - "score": 1 + "score": 2 } ] }, @@ -20842,6 +21251,8 @@ "title": "Convex Polygon", "id": 469, "frontend_id": 469, + "difficulty_lvl": 2, + "acceptance": 0.39243, "videos": [ { "embedded_url": "https://www.youtube.com/embed/h6MxKmDimhg", @@ -20867,7 +21278,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -20875,6 +21286,8 @@ "title": "Encode String with Shortest Length", "id": 471, "frontend_id": 471, + "difficulty_lvl": 3, + "acceptance": 0.50535, "videos": [ { "embedded_url": "https://www.youtube.com/embed/fe2wvdUEmtQ", @@ -20896,7 +21309,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -20904,6 +21317,8 @@ "title": "Concatenated Words", "id": 472, "frontend_id": 472, + "difficulty_lvl": 3, + "acceptance": 0.49802, "videos": [ { "embedded_url": "https://www.youtube.com/embed/iHp7fjw1R28", @@ -20929,18 +21344,23 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 30 }, { "name": "Microsoft", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript" ] }, { "title": "Matchsticks to Square", "id": 473, "frontend_id": 473, + "difficulty_lvl": 2, + "acceptance": 0.40145, "videos": [ { "embedded_url": "https://www.youtube.com/embed/hUe0cUKV-YY", @@ -20966,14 +21386,22 @@ "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Ones and Zeroes", "id": 474, "frontend_id": 474, + "difficulty_lvl": 2, + "acceptance": 0.47, "videos": [ { "embedded_url": "https://www.youtube.com/embed/miZ3qV04b1g", @@ -20999,14 +21427,20 @@ "companies": [ { "name": "Apple", - "score": 6 + "score": 2 } + ], + "languages": [ + "python", + "cpp" ] }, { "title": "Heaters", "id": 475, "frontend_id": 475, + "difficulty_lvl": 2, + "acceptance": 0.36807, "videos": [ { "embedded_url": "https://www.youtube.com/embed/xR2SzAmiUpM", @@ -21032,11 +21466,11 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Microsoft", - "score": 6 + "score": 2 } ] }, @@ -21044,6 +21478,8 @@ "title": "Number Complement", "id": 476, "frontend_id": 476, + "difficulty_lvl": 1, + "acceptance": 0.67477, "videos": [ { "embedded_url": "https://www.youtube.com/embed/LA1BnKiarEQ", @@ -21069,11 +21505,11 @@ "companies": [ { "name": "Apple", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -21081,6 +21517,8 @@ "title": "Total Hamming Distance", "id": 477, "frontend_id": 477, + "difficulty_lvl": 2, + "acceptance": 0.52207, "videos": [ { "embedded_url": "https://www.youtube.com/embed/mZqlKi0uMlo", @@ -21106,11 +21544,11 @@ "companies": [ { "name": "Adobe", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -21118,6 +21556,8 @@ "title": "Largest Palindrome Product", "id": 479, "frontend_id": 479, + "difficulty_lvl": 3, + "acceptance": 0.32282, "videos": [ { "embedded_url": "https://www.youtube.com/embed/gfP8wKBPV64", @@ -21143,7 +21583,7 @@ "companies": [ { "name": "Yahoo", - "score": 6 + "score": 1 } ] }, @@ -21151,6 +21591,8 @@ "title": "Sliding Window Median", "id": 480, "frontend_id": 480, + "difficulty_lvl": 3, + "acceptance": 0.40265, "videos": [ { "embedded_url": "https://www.youtube.com/embed/KJ2EYhMQ1R0", @@ -21176,7 +21618,7 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 9 }, { "name": "Spotify", @@ -21184,11 +21626,11 @@ }, { "name": "Microsoft", - "score": 2 + "score": 3 }, { "name": "HBO", - "score": 1 + "score": 2 } ] }, @@ -21196,6 +21638,8 @@ "title": "Magical String", "id": 481, "frontend_id": 481, + "difficulty_lvl": 2, + "acceptance": 0.50862, "videos": [ { "embedded_url": "https://www.youtube.com/embed/TrLZ6TA9bKg", @@ -21221,7 +21665,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -21229,6 +21673,8 @@ "title": "License Key Formatting", "id": 482, "frontend_id": 482, + "difficulty_lvl": 1, + "acceptance": 0.43338, "videos": [ { "embedded_url": "https://www.youtube.com/embed/v0Cof91iWIk", @@ -21254,7 +21700,7 @@ "companies": [ { "name": "Capital One", - "score": 10 + "score": 18 }, { "name": "Google", @@ -21266,6 +21712,8 @@ "title": "Smallest Good Base", "id": 483, "frontend_id": 483, + "difficulty_lvl": 3, + "acceptance": 0.39166, "videos": [ { "embedded_url": "https://www.youtube.com/embed/GUQdQW_DEV8", @@ -21291,7 +21739,7 @@ "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } ] }, @@ -21299,6 +21747,8 @@ "title": "Find Permutation", "id": 484, "frontend_id": 484, + "difficulty_lvl": 2, + "acceptance": 0.66863, "videos": [ { "embedded_url": "https://www.youtube.com/embed/s7AvT7cGdSo", @@ -21324,7 +21774,7 @@ "companies": [ { "name": "Goldman Sachs", - "score": 10 + "score": 2 }, { "name": "Google", @@ -21336,6 +21786,8 @@ "title": "Max Consecutive Ones", "id": 485, "frontend_id": 485, + "difficulty_lvl": 1, + "acceptance": 0.57329, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Mo33MjjMlyA", @@ -21361,11 +21813,11 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Apple", - "score": 6 + "score": 2 } ] }, @@ -21373,6 +21825,8 @@ "title": "Predict the Winner", "id": 486, "frontend_id": 486, + "difficulty_lvl": 2, + "acceptance": 0.55392, "videos": [ { "embedded_url": "https://www.youtube.com/embed/CZdG83-Nt0s", @@ -21398,11 +21852,11 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Snapchat", - "score": 6 + "score": 2 } ] }, @@ -21410,6 +21864,8 @@ "title": "Max Consecutive Ones II", "id": 487, "frontend_id": 487, + "difficulty_lvl": 2, + "acceptance": 0.49787, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ix_TazzqHn0", @@ -21435,11 +21891,11 @@ "companies": [ { "name": "tiktok", - "score": 10 + "score": 3 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -21447,6 +21903,8 @@ "title": "Zuma Game", "id": 488, "frontend_id": 488, + "difficulty_lvl": 3, + "acceptance": 0.33511, "videos": [ { "embedded_url": "https://www.youtube.com/embed/KVlbMB7gRIk", @@ -21472,11 +21930,11 @@ "companies": [ { "name": "Salesforce", - "score": 10 + "score": 6 }, { "name": "Bloomberg", - "score": 6 + "score": 4 }, { "name": "Baidu", @@ -21488,6 +21946,8 @@ "title": "Kth Smallest Instructions", "id": 489, "frontend_id": 1643, + "difficulty_lvl": 3, + "acceptance": 0.47255, "videos": [ { "embedded_url": "https://www.youtube.com/embed/bprDe2jWgJs", @@ -21509,12 +21969,16 @@ "embedded_url": "https://www.youtube.com/embed/KABBoWk8gD0", "channel": "Andy Tu" } - ] + ], + "companies": [], + "rating": 2080 }, { "title": "The Maze", "id": 490, "frontend_id": 490, + "difficulty_lvl": 2, + "acceptance": 0.56216, "videos": [ { "embedded_url": "https://www.youtube.com/embed/mjDfgdGp-II", @@ -21540,31 +22004,23 @@ "companies": [ { "name": "ByteDance", - "score": 10 + "score": 4 }, { "name": "Google", - "score": 6 + "score": 3 }, { "name": "Snapchat", - "score": 6 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Facebook", - "score": 1 - }, - { - "name": "Microsoft", - "score": 1 - }, - { - "name": "Square", - "score": 1 + "score": 2 } ] }, @@ -21572,6 +22028,8 @@ "title": "Non-decreasing Subsequences", "id": 491, "frontend_id": 491, + "difficulty_lvl": 2, + "acceptance": 0.60294, "videos": [ { "embedded_url": "https://www.youtube.com/embed/UX7cY8RvDWw", @@ -21593,12 +22051,15 @@ "embedded_url": "https://www.youtube.com/embed/QzRkoC3lEX0", "channel": "Happy Coding" } - ] + ], + "companies": [] }, { "title": "Construct the Rectangle", "id": 492, "frontend_id": 492, + "difficulty_lvl": 1, + "acceptance": 0.55623, "videos": [ { "embedded_url": "https://www.youtube.com/embed/-Lb4SvVyPCM", @@ -21624,7 +22085,7 @@ "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } ] }, @@ -21632,6 +22093,8 @@ "title": "Reverse Pairs", "id": 493, "frontend_id": 493, + "difficulty_lvl": 3, + "acceptance": 0.30571, "videos": [ { "embedded_url": "https://www.youtube.com/embed/S6rsAlj_iB4", @@ -21653,7 +22116,7 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 3 } ] }, @@ -21661,6 +22124,8 @@ "title": "Target Sum", "id": 494, "frontend_id": 494, + "difficulty_lvl": 2, + "acceptance": 0.45836, "videos": [ { "embedded_url": "https://www.youtube.com/embed/g0npyaQtAQM", @@ -21694,22 +22159,30 @@ }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Adobe", - "score": 1 + "score": 2 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Teemo Attacking", "id": 495, "frontend_id": 495, + "difficulty_lvl": 1, + "acceptance": 0.5664, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4cUIbCBpAPs", @@ -21735,7 +22208,7 @@ "companies": [ { "name": "Salesforce", - "score": 10 + "score": 2 }, { "name": "Riot Games", @@ -21747,6 +22220,8 @@ "title": "Next Greater Element I", "id": 496, "frontend_id": 496, + "difficulty_lvl": 1, + "acceptance": 0.71559, "videos": [ { "embedded_url": "https://www.youtube.com/embed/68a1Dc_qVq4", @@ -21768,12 +22243,21 @@ "embedded_url": "https://www.youtube.com/embed/Du881K7Jtk8", "channel": "take U forward" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Diagonal Traverse", "id": 498, "frontend_id": 498, + "difficulty_lvl": 2, + "acceptance": 0.58511, "videos": [ { "embedded_url": "https://www.youtube.com/embed/NTF7sDU0IWA", @@ -21799,15 +22283,15 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 48 }, { "name": "Microsoft", - "score": 2 + "score": 6 }, { "name": "Google", - "score": 1 + "score": 2 } ] }, @@ -21815,6 +22299,8 @@ "title": "The Maze III", "id": 499, "frontend_id": 499, + "difficulty_lvl": 3, + "acceptance": 0.47817, "videos": [ { "embedded_url": "https://www.youtube.com/embed/HFLD3KkeVDE", @@ -21840,7 +22326,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -21848,6 +22334,8 @@ "title": "Keyboard Row", "id": 500, "frontend_id": 500, + "difficulty_lvl": 1, + "acceptance": 0.69791, "videos": [ { "embedded_url": "https://www.youtube.com/embed/YwS9TBPCHok", @@ -21873,7 +22361,7 @@ "companies": [ { "name": "Mathworks", - "score": 6 + "score": 2 } ] }, @@ -21881,6 +22369,8 @@ "title": "Find Mode in Binary Search Tree", "id": 501, "frontend_id": 501, + "difficulty_lvl": 1, + "acceptance": 0.49871, "videos": [ { "embedded_url": "https://www.youtube.com/embed/1FJDyBSfEbo", @@ -21902,12 +22392,18 @@ "embedded_url": "https://www.youtube.com/embed/0JWmmGeeuEs", "channel": "Abdullah Arshed" } + ], + "companies": [], + "languages": [ + "java" ] }, { "title": "IPO", "id": 502, "frontend_id": 502, + "difficulty_lvl": 3, + "acceptance": 0.4971, "videos": [ { "embedded_url": "https://www.youtube.com/embed/1IUzNJ6TPEM", @@ -21933,14 +22429,19 @@ "companies": [ { "name": "Uber", - "score": 6 + "score": 5 } + ], + "languages": [ + "python" ] }, { "title": "Next Greater Element II", "id": 503, "frontend_id": 503, + "difficulty_lvl": 2, + "acceptance": 0.63338, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ARkl69eBzhY", @@ -21962,12 +22463,15 @@ "embedded_url": "https://www.youtube.com/embed/Du881K7Jtk8", "channel": "take U forward" } - ] + ], + "companies": [] }, { "title": "Base 7", "id": 504, "frontend_id": 504, + "difficulty_lvl": 1, + "acceptance": 0.48964, "videos": [ { "embedded_url": "https://www.youtube.com/embed/HiOhzerTWQM", @@ -21993,7 +22497,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 3 } ] }, @@ -22001,6 +22505,8 @@ "title": "The Maze II", "id": 505, "frontend_id": 505, + "difficulty_lvl": 2, + "acceptance": 0.52666, "videos": [ { "embedded_url": "https://www.youtube.com/embed/fdixclqnT3s", @@ -22026,15 +22532,15 @@ "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 }, { "name": "Google", - "score": 6 + "score": 2 }, { "name": "ByteDance", - "score": 6 + "score": 2 } ] }, @@ -22042,6 +22548,8 @@ "title": "Relative Ranks", "id": 506, "frontend_id": 506, + "difficulty_lvl": 1, + "acceptance": 0.61672, "videos": [ { "embedded_url": "https://www.youtube.com/embed/tEtuJhOg-0E", @@ -22067,7 +22575,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -22075,6 +22583,8 @@ "title": "Perfect Number", "id": 507, "frontend_id": 507, + "difficulty_lvl": 1, + "acceptance": 0.37674, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Z3NOmwJv6Ys", @@ -22100,7 +22610,7 @@ "companies": [ { "name": "Adobe", - "score": 6 + "score": 2 } ] }, @@ -22108,6 +22618,8 @@ "title": "Most Frequent Subtree Sum", "id": 508, "frontend_id": 508, + "difficulty_lvl": 2, + "acceptance": 0.65384, "videos": [ { "embedded_url": "https://www.youtube.com/embed/nWDSb1lmXk0", @@ -22133,7 +22645,7 @@ "companies": [ { "name": "Apple", - "score": 6 + "score": 2 } ] }, @@ -22141,6 +22653,8 @@ "title": "Inorder Successor in BST II", "id": 509, "frontend_id": 510, + "difficulty_lvl": 2, + "acceptance": 0.60998, "videos": [ { "embedded_url": "https://www.youtube.com/embed/vo794ruCJnU", @@ -22162,12 +22676,16 @@ "embedded_url": "https://www.youtube.com/embed/lJvOmQ5AGrw", "channel": "Eric Programming" } - ] + ], + "companies": [], + "languages": [] }, { "title": "Count Subarrays With More Ones Than Zeros", "id": 510, "frontend_id": 2031, + "difficulty_lvl": 2, + "acceptance": 0.52126, "videos": [ { "embedded_url": "https://www.youtube.com/embed/vxKtD1c3xXs", @@ -22189,12 +22707,15 @@ "embedded_url": "https://www.youtube.com/embed/sUsojorcNDA", "channel": "wilfredarin" } - ] + ], + "companies": [] }, { "title": "All Paths from Source Lead to Destination", "id": 511, "frontend_id": 1059, + "difficulty_lvl": 2, + "acceptance": 0.38656, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ZlfXhtq_EFE", @@ -22216,12 +22737,15 @@ "embedded_url": "https://www.youtube.com/embed/FMiBKDXCCsQ", "channel": "Programming Live with Larry" } - ] + ], + "companies": [] }, { "title": "Maximum Alternating Subarray Sum", "id": 512, "frontend_id": 2036, + "difficulty_lvl": 2, + "acceptance": 0.40917, "videos": [ { "embedded_url": "https://www.youtube.com/embed/WHW-kt16710", @@ -22243,12 +22767,15 @@ "embedded_url": "https://www.youtube.com/embed/MVxQ0gASbPs", "channel": "Happy Coding" } - ] + ], + "companies": [] }, { "title": "Find Bottom Left Tree Value", "id": 513, "frontend_id": 513, + "difficulty_lvl": 2, + "acceptance": 0.67275, "videos": [ { "embedded_url": "https://www.youtube.com/embed/u_by_cTsNJA", @@ -22274,14 +22801,19 @@ "companies": [ { "name": "Yahoo", - "score": 6 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Freedom Trail", "id": 514, "frontend_id": 514, + "difficulty_lvl": 3, + "acceptance": 0.47122, "videos": [ { "embedded_url": "https://www.youtube.com/embed/L1T6pd2etRI", @@ -22302,12 +22834,16 @@ { "embedded_url": "https://www.youtube.com/embed/ZOWEOfhZ0L0", "channel": "Roel Van de Paar" + }, + { + "embedded_url": "https://www.youtube.com/embed/NOgnlTXidSs", + "channel": "NeetCodeIO" } ], "companies": [ { "name": "DE Shaw", - "score": 10 + "score": 3 }, { "name": "Google", @@ -22319,6 +22855,8 @@ "title": "Find Largest Value in Each Tree Row", "id": 515, "frontend_id": 515, + "difficulty_lvl": 2, + "acceptance": 0.64481, "videos": [ { "embedded_url": "https://www.youtube.com/embed/91Gok_PQY24", @@ -22344,14 +22882,19 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 18 } + ], + "languages": [ + "cpp" ] }, { "title": "Longest Palindromic Subsequence", "id": 516, "frontend_id": 516, + "difficulty_lvl": 2, + "acceptance": 0.62069, "videos": [ { "embedded_url": "https://www.youtube.com/embed/bUr8cNWI09Q", @@ -22377,11 +22920,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 6 }, { "name": "LinkedIn", - "score": 8 + "score": 5 }, { "name": "Microsoft", @@ -22389,22 +22932,23 @@ }, { "name": "Apple", - "score": 1 + "score": 2 }, { "name": "Bloomberg", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 + "score": 2 } + ], + "languages": [ + "python" ] }, { "title": "Super Washing Machines", "id": 517, "frontend_id": 517, + "difficulty_lvl": 3, + "acceptance": 0.40626, "videos": [ { "embedded_url": "https://www.youtube.com/embed/7xvqjefQkt0", @@ -22430,7 +22974,7 @@ "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } ] }, @@ -22438,6 +22982,8 @@ "title": "Coin Change II", "id": 518, "frontend_id": 518, + "difficulty_lvl": 2, + "acceptance": 0.6143, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Mjy4hd2xgrs", @@ -22459,12 +23005,21 @@ "embedded_url": "https://www.youtube.com/embed/hqMfMMyrTfI", "channel": "The Code Mate" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Widest Pair of Indices With Equal Range Sum", "id": 519, "frontend_id": 1983, + "difficulty_lvl": 2, + "acceptance": 0.54051, "videos": [ { "embedded_url": "https://www.youtube.com/embed/IsvocB5BJhw", @@ -22482,12 +23037,15 @@ "embedded_url": "https://www.youtube.com/embed/IZVnI2VRnVk", "channel": "Code Era" } - ] + ], + "companies": [] }, { "title": "Detect Capital", "id": 520, "frontend_id": 520, + "difficulty_lvl": 1, + "acceptance": 0.56826, "videos": [ { "embedded_url": "https://www.youtube.com/embed/hc6lUrPBmUE", @@ -22513,11 +23071,11 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -22525,6 +23083,8 @@ "title": "Longest Uncommon Subsequence I", "id": 521, "frontend_id": 521, + "difficulty_lvl": 1, + "acceptance": 0.60385, "videos": [ { "embedded_url": "https://www.youtube.com/embed/XLgReGbmmj0", @@ -22550,7 +23110,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -22558,6 +23118,8 @@ "title": "Longest Uncommon Subsequence II", "id": 522, "frontend_id": 522, + "difficulty_lvl": 2, + "acceptance": 0.40733, "videos": [ { "embedded_url": "https://www.youtube.com/embed/L3lYREldyqs", @@ -22583,7 +23145,7 @@ "companies": [ { "name": "Apple", - "score": 6 + "score": 2 } ] }, @@ -22591,6 +23153,8 @@ "title": "Continuous Subarray Sum", "id": 523, "frontend_id": 523, + "difficulty_lvl": 2, + "acceptance": 0.28499, "videos": [ { "embedded_url": "https://www.youtube.com/embed/OKcrLfR-8mE", @@ -22616,38 +23180,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 56 }, { "name": "Amazon", - "score": 2 + "score": 5 }, { "name": "ByteDance", - "score": 1 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Apple", - "score": 1 - }, - { - "name": "Walmart Global Tech", - "score": 1 - }, - { - "name": "tiktok", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Longest Word in Dictionary through Deleting", "id": 524, "frontend_id": 524, + "difficulty_lvl": 2, + "acceptance": 0.51045, "videos": [ { "embedded_url": "https://www.youtube.com/embed/G2y5bCDAzJk", @@ -22673,7 +23237,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 4 } ] }, @@ -22681,6 +23245,8 @@ "title": "Contiguous Array", "id": 525, "frontend_id": 525, + "difficulty_lvl": 2, + "acceptance": 0.4684, "videos": [ { "embedded_url": "https://www.youtube.com/embed/9ZyLjjk536U", @@ -22706,7 +23272,7 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 7 }, { "name": "Facebook", @@ -22714,11 +23280,11 @@ }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "Apple", - "score": 1 + "score": 2 } ] }, @@ -22726,6 +23292,8 @@ "title": "Beautiful Arrangement", "id": 526, "frontend_id": 526, + "difficulty_lvl": 2, + "acceptance": 0.64317, "videos": [ { "embedded_url": "https://www.youtube.com/embed/vhHrUeSdFGU", @@ -22751,7 +23319,7 @@ "companies": [ { "name": "Cisco", - "score": 6 + "score": 3 } ] }, @@ -22759,6 +23327,8 @@ "title": "Word Abbreviation", "id": 527, "frontend_id": 527, + "difficulty_lvl": 3, + "acceptance": 0.60726, "videos": [ { "embedded_url": "https://www.youtube.com/embed/lI1GGOBgmfc", @@ -22784,7 +23354,7 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 3 }, { "name": "Snapchat", @@ -22796,6 +23366,8 @@ "title": "Swapping Nodes in a Linked List", "id": 528, "frontend_id": 1721, + "difficulty_lvl": 2, + "acceptance": 0.68577, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4LsrgMyQIjQ", @@ -22821,22 +23393,30 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Facebook", - "score": 10 + "score": 3 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } + ], + "rating": 1387, + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Minesweeper", "id": 529, "frontend_id": 529, + "difficulty_lvl": 2, + "acceptance": 0.65901, "videos": [ { "embedded_url": "https://www.youtube.com/embed/1BJJvodXiUY", @@ -22858,11 +23438,11 @@ "companies": [ { "name": "Uber", - "score": 10 + "score": 7 }, { "name": "Facebook", - "score": 8 + "score": 6 }, { "name": "LiveRamp", @@ -22870,19 +23450,11 @@ }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "Amazon", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Docusign", - "score": 1 + "score": 2 } ] }, @@ -22890,6 +23462,8 @@ "title": "Minimum Absolute Difference in BST", "id": 530, "frontend_id": 530, + "difficulty_lvl": 1, + "acceptance": 0.58833, "videos": [ { "embedded_url": "https://www.youtube.com/embed/X_fkvWt8tY8", @@ -22915,7 +23489,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 3 } ] }, @@ -22923,6 +23497,8 @@ "title": "Lonely Pixel I", "id": 531, "frontend_id": 531, + "difficulty_lvl": 2, + "acceptance": 0.62148, "videos": [ { "embedded_url": "https://www.youtube.com/embed/5A9sPAD-34w", @@ -22944,11 +23520,11 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 3 }, { "name": "Nvidia", - "score": 10 + "score": 3 }, { "name": "Google", @@ -22960,6 +23536,8 @@ "title": "K-diff Pairs in an Array", "id": 532, "frontend_id": 532, + "difficulty_lvl": 2, + "acceptance": 0.41613, "videos": [ { "embedded_url": "https://www.youtube.com/embed/VTPasSPZVCY", @@ -22985,35 +23563,23 @@ "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Adobe", - "score": 6 + "score": 2 }, { "name": "Goldman Sachs", - "score": 6 + "score": 2 }, { "name": "Apple", - "score": 6 - }, - { - "name": "Uber", - "score": 6 - }, - { - "name": "DoorDash", - "score": 6 - }, - { - "name": "Zoho", - "score": 6 + "score": 2 } ] }, @@ -23021,6 +23587,8 @@ "title": "Lonely Pixel II", "id": 533, "frontend_id": 533, + "difficulty_lvl": 2, + "acceptance": 0.48475, "videos": [ { "embedded_url": "https://www.youtube.com/embed/_6sPJ7LRWPI", @@ -23042,7 +23610,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -23050,6 +23618,8 @@ "title": "Encode and Decode TinyURL", "id": 535, "frontend_id": 535, + "difficulty_lvl": 2, + "acceptance": 0.86075, "videos": [ { "embedded_url": "https://www.youtube.com/embed/VyBOaboQLGc", @@ -23075,22 +23645,30 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 5 }, { "name": "Amazon", - "score": 7 + "score": 4 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Construct Binary Tree from String", "id": 536, "frontend_id": 536, + "difficulty_lvl": 2, + "acceptance": 0.56305, "videos": [ { "embedded_url": "https://www.youtube.com/embed/BH_btihSwVM", @@ -23112,7 +23690,7 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 7 } ] }, @@ -23120,6 +23698,8 @@ "title": "Complex Number Multiplication", "id": 537, "frontend_id": 537, + "difficulty_lvl": 2, + "acceptance": 0.71508, "videos": [ { "embedded_url": "https://www.youtube.com/embed/p6mTI8OtE9s", @@ -23145,7 +23725,7 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } ] }, @@ -23153,6 +23733,8 @@ "title": "Convert BST to Greater Tree", "id": 538, "frontend_id": 538, + "difficulty_lvl": 2, + "acceptance": 0.68259, "videos": [ { "embedded_url": "https://www.youtube.com/embed/7vVEJwVvAlI", @@ -23174,22 +23756,27 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 3 }, { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } + ], + "languages": [ + "cpp" ] }, { "title": "Minimum Time Difference", "id": 539, "frontend_id": 539, + "difficulty_lvl": 2, + "acceptance": 0.56533, "videos": [ { "embedded_url": "https://www.youtube.com/embed/c5ecNf7JM1Q", @@ -23215,11 +23802,11 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 30 }, { "name": "Amazon", - "score": 1 + "score": 2 } ] }, @@ -23227,6 +23814,8 @@ "title": "Single Element in a Sorted Array", "id": 540, "frontend_id": 540, + "difficulty_lvl": 2, + "acceptance": 0.59041, "videos": [ { "embedded_url": "https://www.youtube.com/embed/HGtqdzyUJ3k", @@ -23252,7 +23841,7 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 9 }, { "name": "Facebook", @@ -23264,22 +23853,26 @@ }, { "name": "Google", - "score": 2 + "score": 3 }, { "name": "Apple", - "score": 1 - }, - { - "name": "Nvidia", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Reverse String II", "id": 541, "frontend_id": 541, + "difficulty_lvl": 1, + "acceptance": 0.50394, "videos": [ { "embedded_url": "https://www.youtube.com/embed/SUrrSVfk7pk", @@ -23305,7 +23898,7 @@ "companies": [ { "name": "Adobe", - "score": 6 + "score": 3 } ] }, @@ -23313,6 +23906,8 @@ "title": "01 Matrix", "id": 542, "frontend_id": 542, + "difficulty_lvl": 2, + "acceptance": 0.45491, "videos": [ { "embedded_url": "https://www.youtube.com/embed/hIvMZFqjs_A", @@ -23338,19 +23933,19 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 6 }, { "name": "Amazon", - "score": 10 + "score": 6 }, { "name": "Facebook", - "score": 1 + "score": 2 }, { "name": "Adobe", - "score": 1 + "score": 2 } ] }, @@ -23358,6 +23953,8 @@ "title": "Diameter of Binary Tree", "id": 543, "frontend_id": 543, + "difficulty_lvl": 1, + "acceptance": 0.5767, "videos": [ { "embedded_url": "https://www.youtube.com/embed/bkxqA8Rfv04", @@ -23383,34 +23980,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 89 }, { "name": "Amazon", - "score": 2 + "score": 12 }, { "name": "Bloomberg", - "score": 1 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 3 }, { "name": "Microsoft", - "score": 1 - }, - { - "name": "Apple", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Output Contest Matches", "id": 544, "frontend_id": 544, + "difficulty_lvl": 2, + "acceptance": 0.77011, "videos": [ { "embedded_url": "https://www.youtube.com/embed/GIYRRenUg4Y", @@ -23424,12 +24025,15 @@ "embedded_url": "https://www.youtube.com/embed/HAA8mgxlov8", "channel": "NeetCode" } - ] + ], + "companies": [] }, { "title": "Boundary of Binary Tree", "id": 545, "frontend_id": 545, + "difficulty_lvl": 2, + "acceptance": 0.44667, "videos": [ { "embedded_url": "https://www.youtube.com/embed/F76LIKzluKE", @@ -23455,19 +24059,19 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 12 }, { "name": "Microsoft", - "score": 7 + "score": 9 }, { "name": "Facebook", - "score": 2 + "score": 3 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } ] }, @@ -23475,6 +24079,8 @@ "title": "Remove Boxes", "id": 546, "frontend_id": 546, + "difficulty_lvl": 3, + "acceptance": 0.47671, "videos": [ { "embedded_url": "https://www.youtube.com/embed/NINZAQFW_AE", @@ -23500,7 +24106,7 @@ "companies": [ { "name": "Uber", - "score": 6 + "score": 2 } ] }, @@ -23508,6 +24114,8 @@ "title": "Number of Provinces", "id": 547, "frontend_id": 547, + "difficulty_lvl": 2, + "acceptance": 0.6535, "videos": [ { "embedded_url": "https://www.youtube.com/embed/S5UUvCTM0V4", @@ -23529,12 +24137,15 @@ "embedded_url": "https://www.youtube.com/embed/W3YyfjxKcA0", "channel": "Hello World" } - ] + ], + "companies": [] }, { "title": "Split Array with Equal Sum", "id": 548, "frontend_id": 548, + "difficulty_lvl": 3, + "acceptance": 0.50092, "videos": [ { "embedded_url": "https://www.youtube.com/embed/obhWqDfzwQQ", @@ -23560,7 +24171,7 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 3 } ] }, @@ -23568,6 +24179,8 @@ "title": "Binary Tree Longest Consecutive Sequence II", "id": 549, "frontend_id": 549, + "difficulty_lvl": 2, + "acceptance": 0.49464, "videos": [ { "embedded_url": "https://www.youtube.com/embed/T_jsUBqQjq4", @@ -23593,7 +24206,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 4 } ] }, @@ -23601,6 +24214,8 @@ "title": "Shortest Path to Get Food", "id": 550, "frontend_id": 1730, + "difficulty_lvl": 2, + "acceptance": 0.54307, "videos": [ { "embedded_url": "https://www.youtube.com/embed/bY4I3pCZLTg", @@ -23622,12 +24237,15 @@ "embedded_url": "https://www.youtube.com/embed/A-8ziQc_4pk", "channel": "Hua Hua" } - ] + ], + "companies": [] }, { "title": "Student Attendance Record I", "id": 551, "frontend_id": 551, + "difficulty_lvl": 1, + "acceptance": 0.48336, "videos": [ { "embedded_url": "https://www.youtube.com/embed/jxTylwzMyX0", @@ -23653,7 +24271,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 5 } ] }, @@ -23661,6 +24279,8 @@ "title": "Student Attendance Record II", "id": 552, "frontend_id": 552, + "difficulty_lvl": 3, + "acceptance": 0.41833, "videos": [ { "embedded_url": "https://www.youtube.com/embed/X9-6vWqNVto", @@ -23677,12 +24297,16 @@ { "embedded_url": "https://www.youtube.com/embed/zd20HrEb5dg", "channel": "Huifeng Guan" + }, + { + "embedded_url": "https://www.youtube.com/embed/BPIJ5ROX0i4", + "channel": "NeetCodeIO" } ], "companies": [ { "name": "Google", - "score": 6 + "score": 14 } ] }, @@ -23690,6 +24314,8 @@ "title": "Optimal Division", "id": 553, "frontend_id": 553, + "difficulty_lvl": 2, + "acceptance": 0.60154, "videos": [ { "embedded_url": "https://www.youtube.com/embed/SFNvfrvWxVQ", @@ -23715,7 +24341,7 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } ] }, @@ -23723,6 +24349,8 @@ "title": "Brick Wall", "id": 554, "frontend_id": 554, + "difficulty_lvl": 2, + "acceptance": 0.53981, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Kkmv2h48ekw", @@ -23748,18 +24376,26 @@ "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 }, { "name": "Grab", - "score": 6 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Split Concatenated Strings", "id": 555, "frontend_id": 555, + "difficulty_lvl": 2, + "acceptance": 0.4357, "videos": [ { "embedded_url": "https://www.youtube.com/embed/sWFQHfG_120", @@ -23781,7 +24417,7 @@ "companies": [ { "name": "Alibaba", - "score": 6 + "score": 1 } ] }, @@ -23789,6 +24425,8 @@ "title": "Next Greater Element III", "id": 556, "frontend_id": 556, + "difficulty_lvl": 2, + "acceptance": 0.33946, "videos": [ { "embedded_url": "https://www.youtube.com/embed/fOeD3CW2c7c", @@ -23810,12 +24448,15 @@ "embedded_url": "https://www.youtube.com/embed/J3wtMMUaAGY", "channel": "\u8d3e\u8003\u535a" } - ] + ], + "companies": [] }, { "title": "Reverse Words in a String III", "id": 557, "frontend_id": 557, + "difficulty_lvl": 1, + "acceptance": 0.81951, "videos": [ { "embedded_url": "https://www.youtube.com/embed/AqCXwq4BTlY", @@ -23841,31 +24482,23 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 5 }, { "name": "Amazon", - "score": 4 + "score": 3 }, { "name": "Bolt", - "score": 4 + "score": 3 }, { "name": "Yandex", - "score": 1 + "score": 2 }, { "name": "Facebook", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "PayTM", - "score": 1 + "score": 2 } ] }, @@ -23873,6 +24506,8 @@ "title": "Subarray Sum Equals K", "id": 560, "frontend_id": 560, + "difficulty_lvl": 2, + "acceptance": 0.43346, "videos": [ { "embedded_url": "https://www.youtube.com/embed/fFVZt-6sgyo", @@ -23898,50 +24533,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 141 }, { "name": "Amazon", - "score": 2 + "score": 19 }, { "name": "Google", - "score": 2 + "score": 15 }, { "name": "Microsoft", - "score": 2 + "score": 10 }, { "name": "Oracle", - "score": 1 - }, - { - "name": "tiktok", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Visa", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Quora", - "score": 1 + "score": 7 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Array Partition", "id": 561, "frontend_id": 561, + "difficulty_lvl": 1, + "acceptance": 0.77669, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ok6kZNyPVeU", @@ -23963,12 +24586,15 @@ "embedded_url": "https://www.youtube.com/embed/wDU72F6dhS4", "channel": "Hua Hua" } - ] + ], + "companies": [] }, { "title": "Longest Line of Consecutive One in Matrix", "id": 562, "frontend_id": 562, + "difficulty_lvl": 2, + "acceptance": 0.503, "videos": [ { "embedded_url": "https://www.youtube.com/embed/eWweg7QwB6A", @@ -23994,7 +24620,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 5 } ] }, @@ -24002,6 +24628,8 @@ "title": "Binary Tree Tilt", "id": 563, "frontend_id": 563, + "difficulty_lvl": 1, + "acceptance": 0.6061, "videos": [ { "embedded_url": "https://www.youtube.com/embed/h-Wo5TIzfjI", @@ -24027,7 +24655,7 @@ "companies": [ { "name": "Indeed", - "score": 6 + "score": 1 } ] }, @@ -24035,6 +24663,8 @@ "title": "Find the Closest Palindrome", "id": 564, "frontend_id": 564, + "difficulty_lvl": 3, + "acceptance": 0.2182, "videos": [ { "embedded_url": "https://www.youtube.com/embed/2vqs56N5CbM", @@ -24056,12 +24686,15 @@ "embedded_url": "https://www.youtube.com/embed/5td3of9Setw", "channel": "Harish" } - ] + ], + "companies": [] }, { "title": "Array Nesting", "id": 565, "frontend_id": 565, + "difficulty_lvl": 2, + "acceptance": 0.56331, "videos": [ { "embedded_url": "https://www.youtube.com/embed/HiuoGkBMJdc", @@ -24087,7 +24720,7 @@ "companies": [ { "name": "Adobe", - "score": 10 + "score": 3 }, { "name": "Apple", @@ -24099,6 +24732,8 @@ "title": "Reshape the Matrix", "id": 566, "frontend_id": 566, + "difficulty_lvl": 1, + "acceptance": 0.62974, "videos": [ { "embedded_url": "https://www.youtube.com/embed/JCb27sANkC0", @@ -24124,11 +24759,11 @@ "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 }, { "name": "Facebook", - "score": 6 + "score": 2 } ] }, @@ -24136,6 +24771,8 @@ "title": "Permutation in String", "id": 567, "frontend_id": 567, + "difficulty_lvl": 2, + "acceptance": 0.44186, "videos": [ { "embedded_url": "https://www.youtube.com/embed/UbyhOgBN834", @@ -24161,42 +24798,38 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 5 }, { "name": "Apple", - "score": 7 + "score": 4 }, { "name": "Yandex", - "score": 7 + "score": 4 }, { "name": "Oracle", - "score": 7 - }, - { - "name": "Amazon", "score": 4 }, { - "name": "Google", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "ByteDance", - "score": 1 + "name": "Amazon", + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Maximum Vacation Days", "id": 568, "frontend_id": 568, + "difficulty_lvl": 3, + "acceptance": 0.45247, "videos": [ { "embedded_url": "https://www.youtube.com/embed/uXDE665JjZ4", @@ -24222,7 +24855,7 @@ "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } ] }, @@ -24230,6 +24863,8 @@ "title": "Median Employee Salary", "id": 569, "frontend_id": 569, + "difficulty_lvl": 3, + "acceptance": 0.66695, "videos": [ { "embedded_url": "https://www.youtube.com/embed/CTS_5i0i278", @@ -24247,12 +24882,15 @@ "embedded_url": "https://www.youtube.com/embed/AUTAid5ouC8", "channel": "Michelle\u5c0f\u68a6\u60f3\u5bb6" } - ] + ], + "companies": [] }, { "title": "Managers with at Least 5 Direct Reports", "id": 570, "frontend_id": 570, + "difficulty_lvl": 2, + "acceptance": 0.59807, "videos": [ { "embedded_url": "https://www.youtube.com/embed/cBi77HIJOyQ", @@ -24274,12 +24912,15 @@ "embedded_url": "https://www.youtube.com/embed/8izyTPtHCo8", "channel": "Sanskar Suman" } - ] + ], + "companies": [] }, { "title": "Find Median Given Frequency of Numbers", "id": 571, "frontend_id": 571, + "difficulty_lvl": 3, + "acceptance": 0.4296, "videos": [ { "embedded_url": "https://www.youtube.com/embed/cmEKMt7peZ4", @@ -24301,12 +24942,15 @@ "embedded_url": "https://www.youtube.com/embed/QTR_NY752fQ", "channel": "Kuchar Jefferson College" } - ] + ], + "companies": [] }, { "title": "Subtree of Another Tree", "id": 572, "frontend_id": 572, + "difficulty_lvl": 1, + "acceptance": 0.46795, "videos": [ { "embedded_url": "https://www.youtube.com/embed/E36O5SWp-LE", @@ -24332,11 +24976,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 6 }, { "name": "Facebook", - "score": 8 + "score": 5 }, { "name": "Microsoft", @@ -24344,14 +24988,22 @@ }, { "name": "Google", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Squirrel Simulation", "id": 573, "frontend_id": 573, + "difficulty_lvl": 2, + "acceptance": 0.55282, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Q_6egRVh2Ds", @@ -24373,7 +25025,7 @@ "companies": [ { "name": "Square", - "score": 6 + "score": 1 } ] }, @@ -24381,6 +25033,8 @@ "title": "Winning Candidate", "id": 574, "frontend_id": 574, + "difficulty_lvl": 2, + "acceptance": 0.59997, "videos": [ { "embedded_url": "https://www.youtube.com/embed/7ZwnwSRE56Q", @@ -24402,12 +25056,15 @@ "embedded_url": "https://www.youtube.com/embed/bG9uS8SgBdk", "channel": "Sushant Burde" } - ] + ], + "companies": [] }, { "title": "Distribute Candies", "id": 575, "frontend_id": 575, + "difficulty_lvl": 1, + "acceptance": 0.66778, "videos": [ { "embedded_url": "https://www.youtube.com/embed/UIQ8hCs_E1M", @@ -24433,7 +25090,7 @@ "companies": [ { "name": "LiveRamp", - "score": 6 + "score": 1 } ] }, @@ -24441,6 +25098,8 @@ "title": "Out of Boundary Paths", "id": 576, "frontend_id": 576, + "difficulty_lvl": 2, + "acceptance": 0.44249, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Tezo7U6w2FY", @@ -24466,18 +25125,23 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Baidu", "score": 1 } + ], + "languages": [ + "java" ] }, { "title": "Employee Bonus", "id": 577, "frontend_id": 577, + "difficulty_lvl": 1, + "acceptance": 0.7412, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Q4ci5a2A0gY", @@ -24499,12 +25163,15 @@ "embedded_url": "https://www.youtube.com/embed/QML2wdAEx54", "channel": "Everyday Data Science" } - ] + ], + "companies": [] }, { "title": "Get Highest Answer Rate Question", "id": 578, "frontend_id": 578, + "difficulty_lvl": 2, + "acceptance": 0.40682, "videos": [ { "embedded_url": "https://www.youtube.com/embed/8pa7UPezd5w", @@ -24522,12 +25189,15 @@ "embedded_url": "https://www.youtube.com/embed/g9YQyYi4IQQ", "channel": "NeetCode" } - ] + ], + "companies": [] }, { "title": "Find Cumulative Salary of an Employee", "id": 579, "frontend_id": 579, + "difficulty_lvl": 3, + "acceptance": 0.45742, "videos": [ { "embedded_url": "https://www.youtube.com/embed/LDH03UeR3fI", @@ -24549,12 +25219,15 @@ "embedded_url": "https://www.youtube.com/embed/_FJyC5nF-Ro", "channel": "GoLearningPoint" } - ] + ], + "companies": [] }, { "title": "Count Student Number in Departments", "id": 580, "frontend_id": 580, + "difficulty_lvl": 2, + "acceptance": 0.58632, "videos": [ { "embedded_url": "https://www.youtube.com/embed/-UsnD4L5cuc", @@ -24576,12 +25249,15 @@ "embedded_url": "https://www.youtube.com/embed/ekp-ln5It-k", "channel": "Huifeng Guan" } - ] + ], + "companies": [] }, { "title": "Shortest Unsorted Continuous Subarray", "id": 581, "frontend_id": 581, + "difficulty_lvl": 2, + "acceptance": 0.36535, "videos": [ { "embedded_url": "https://www.youtube.com/embed/GvAtQOMr8CQ", @@ -24607,11 +25283,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 5 }, { "name": "Microsoft", - "score": 1 + "score": 3 } ] }, @@ -24619,6 +25295,8 @@ "title": "Kill Process", "id": 582, "frontend_id": 582, + "difficulty_lvl": 2, + "acceptance": 0.68896, "videos": [ { "embedded_url": "https://www.youtube.com/embed/PmUt5ctBUE0", @@ -24644,11 +25322,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 8 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -24656,6 +25334,8 @@ "title": "Delete Operation for Two Strings", "id": 583, "frontend_id": 583, + "difficulty_lvl": 2, + "acceptance": 0.60609, "videos": [ { "embedded_url": "https://www.youtube.com/embed/VSrsUkoG0bk", @@ -24681,7 +25361,7 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -24689,6 +25369,8 @@ "title": "Find Customer Referee", "id": 584, "frontend_id": 584, + "difficulty_lvl": 1, + "acceptance": 0.69095, "videos": [ { "embedded_url": "https://www.youtube.com/embed/PZSHGq9QlnE", @@ -24710,12 +25392,15 @@ "embedded_url": "https://www.youtube.com/embed/bePaYSGsJqY", "channel": "SANKHADIP DEBNATH" } - ] + ], + "companies": [] }, { "title": "Investments in 2016", "id": 585, "frontend_id": 585, + "difficulty_lvl": 2, + "acceptance": 0.48809, "videos": [ { "embedded_url": "https://www.youtube.com/embed/BVGhF9yaDU0", @@ -24725,12 +25410,15 @@ "embedded_url": "https://www.youtube.com/embed/sF5nV0CMny4", "channel": "Tech Timeout" } - ] + ], + "companies": [] }, { "title": "Customer Placing the Largest Number of Orders", "id": 586, "frontend_id": 586, + "difficulty_lvl": 1, + "acceptance": 0.66644, "videos": [ { "embedded_url": "https://www.youtube.com/embed/K_Z393-ZWDY", @@ -24752,12 +25440,15 @@ "embedded_url": "https://www.youtube.com/embed/Uz_d_zK0Mkg", "channel": "Moody Mansi\ud83d\ude09" } - ] + ], + "companies": [] }, { "title": "Erect the Fence", "id": 587, "frontend_id": 587, + "difficulty_lvl": 3, + "acceptance": 0.51925, "videos": [ { "embedded_url": "https://www.youtube.com/embed/iyg-bQrfVLo", @@ -24783,7 +25474,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -24791,6 +25482,8 @@ "title": "Design In-Memory File System", "id": 588, "frontend_id": 588, + "difficulty_lvl": 3, + "acceptance": 0.48525, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Eb8GRDxyhfI", @@ -24816,27 +25509,23 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 16 }, { "name": "Microsoft", - "score": 6 + "score": 10 }, { "name": "DoorDash", - "score": 2 + "score": 4 }, { "name": "Salesforce", - "score": 2 + "score": 3 }, { "name": "Google", - "score": 2 - }, - { - "name": "Goldman Sachs", - "score": 1 + "score": 3 } ] }, @@ -24844,6 +25533,8 @@ "title": "Tag Validator", "id": 591, "frontend_id": 591, + "difficulty_lvl": 3, + "acceptance": 0.37424, "videos": [ { "embedded_url": "https://www.youtube.com/embed/H2gn23w9hs8", @@ -24869,11 +25560,11 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Airbnb", - "score": 6 + "score": 2 } ] }, @@ -24881,6 +25572,8 @@ "title": "Fraction Addition and Subtraction", "id": 592, "frontend_id": 592, + "difficulty_lvl": 2, + "acceptance": 0.52678, "videos": [ { "embedded_url": "https://www.youtube.com/embed/WK208I4EPF4", @@ -24906,7 +25599,7 @@ "companies": [ { "name": "Goldman Sachs", - "score": 6 + "score": 5 } ] }, @@ -24914,6 +25607,8 @@ "title": "Valid Square", "id": 593, "frontend_id": 593, + "difficulty_lvl": 2, + "acceptance": 0.43915, "videos": [ { "embedded_url": "https://www.youtube.com/embed/B51j1jjTVWk", @@ -24939,15 +25634,15 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 4 }, { "name": "Pure Storage", - "score": 1 + "score": 2 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -24955,6 +25650,8 @@ "title": "Longest Harmonious Subsequence", "id": 594, "frontend_id": 594, + "difficulty_lvl": 1, + "acceptance": 0.53827, "videos": [ { "embedded_url": "https://www.youtube.com/embed/cimAJJXmyBE", @@ -24980,7 +25677,7 @@ "companies": [ { "name": "LiveRamp", - "score": 6 + "score": 1 } ] }, @@ -24988,6 +25685,8 @@ "title": "Big Countries", "id": 595, "frontend_id": 595, + "difficulty_lvl": 1, + "acceptance": 0.69036, "videos": [ { "embedded_url": "https://www.youtube.com/embed/71YQZS_SN6Q", @@ -25009,12 +25708,15 @@ "embedded_url": "https://www.youtube.com/embed/8pkEOtpOlR4", "channel": "Everyday Data Science" } - ] + ], + "companies": [] }, { "title": "Classes More Than 5 Students", "id": 596, "frontend_id": 596, + "difficulty_lvl": 1, + "acceptance": 0.49768, "videos": [ { "embedded_url": "https://www.youtube.com/embed/bJOXJaV0QB0", @@ -25036,12 +25738,15 @@ "embedded_url": "https://www.youtube.com/embed/5CEUNZ3m6uM", "channel": "Michelle\u5c0f\u68a6\u60f3\u5bb6" } - ] + ], + "companies": [] }, { "title": "Friend Requests I: Overall Acceptance Rate", "id": 597, "frontend_id": 597, + "difficulty_lvl": 1, + "acceptance": 0.42212, "videos": [ { "embedded_url": "https://www.youtube.com/embed/3ntsbHSI8Gs", @@ -25059,12 +25764,15 @@ "embedded_url": "https://www.youtube.com/embed/cXvUxPJKZGo", "channel": "Cloudvala " } - ] + ], + "companies": [] }, { "title": "Range Addition II", "id": 598, "frontend_id": 598, + "difficulty_lvl": 1, + "acceptance": 0.55544, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Osl6MC3D-fI", @@ -25090,7 +25798,7 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -25098,6 +25806,8 @@ "title": "Minimum Index Sum of Two Lists", "id": 599, "frontend_id": 599, + "difficulty_lvl": 1, + "acceptance": 0.53934, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Px6Kzdunjks", @@ -25123,11 +25833,11 @@ "companies": [ { "name": "Oracle", - "score": 10 + "score": 2 }, { "name": "Apple", - "score": 10 + "score": 2 }, { "name": "Yelp", @@ -25139,6 +25849,8 @@ "title": "Non-negative Integers without Consecutive Ones", "id": 600, "frontend_id": 600, + "difficulty_lvl": 3, + "acceptance": 0.39452, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Pdeje3QH8G8", @@ -25164,7 +25876,7 @@ "companies": [ { "name": "Pocket Gems", - "score": 6 + "score": 1 } ] }, @@ -25172,6 +25884,8 @@ "title": "Human Traffic of Stadium", "id": 601, "frontend_id": 601, + "difficulty_lvl": 3, + "acceptance": 0.48864, "videos": [ { "embedded_url": "https://www.youtube.com/embed/tDfAo7uw-3w", @@ -25193,12 +25907,15 @@ "embedded_url": "https://www.youtube.com/embed/9Q0VVL5VTyY", "channel": "Cloud Concepts By Chandra" } - ] + ], + "companies": [] }, { "title": "Friend Requests II: Who Has the Most Friends", "id": 602, "frontend_id": 602, + "difficulty_lvl": 2, + "acceptance": 0.58235, "videos": [ { "embedded_url": "https://www.youtube.com/embed/UAFppQ2dh1g", @@ -25216,12 +25933,15 @@ "embedded_url": "https://www.youtube.com/embed/3ntsbHSI8Gs", "channel": "Carter MacLennan" } - ] + ], + "companies": [] }, { "title": "Consecutive Available Seats", "id": 603, "frontend_id": 603, + "difficulty_lvl": 1, + "acceptance": 0.66861, "videos": [ { "embedded_url": "https://www.youtube.com/embed/kKt3gukedtI", @@ -25243,12 +25963,15 @@ "embedded_url": "https://www.youtube.com/embed/pSyimWJ-3Oo", "channel": "Rohan-Paul-AI" } - ] + ], + "companies": [] }, { "title": "Design Compressed String Iterator", "id": 604, "frontend_id": 604, + "difficulty_lvl": 1, + "acceptance": 0.39601, "videos": [ { "embedded_url": "https://www.youtube.com/embed/MyOAszqPIcc", @@ -25274,7 +25997,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -25282,6 +26005,8 @@ "title": "Can Place Flowers", "id": 605, "frontend_id": 605, + "difficulty_lvl": 1, + "acceptance": 0.31009, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ZGxqqjljpUI", @@ -25307,30 +26032,38 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 21 }, { "name": "Facebook", - "score": 6 + "score": 13 }, { "name": "Amazon", - "score": 2 + "score": 3 }, { "name": "Bloomberg", - "score": 2 + "score": 3 }, { "name": "Yahoo", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Construct String from Binary Tree", "id": 606, "frontend_id": 606, + "difficulty_lvl": 1, + "acceptance": 0.64451, "videos": [ { "embedded_url": "https://www.youtube.com/embed/b1WpYxnuebQ", @@ -25356,14 +26089,20 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 } + ], + "languages": [ + "python", + "java" ] }, { "title": "Sales Person", "id": 607, "frontend_id": 607, + "difficulty_lvl": 1, + "acceptance": 0.67496, "videos": [ { "embedded_url": "https://www.youtube.com/embed/dz1SmsAD8bU", @@ -25385,12 +26124,15 @@ "embedded_url": "https://www.youtube.com/embed/yJtofKs-9ck", "channel": "WinEi" } - ] + ], + "companies": [] }, { "title": "Tree Node", "id": 608, "frontend_id": 608, + "difficulty_lvl": 2, + "acceptance": 0.71475, "videos": [ { "embedded_url": "https://www.youtube.com/embed/jfE0d4hR--s", @@ -25412,12 +26154,15 @@ "embedded_url": "https://www.youtube.com/embed/4wPlA_InnGY", "channel": "Coding Beats" } - ] + ], + "companies": [] }, { "title": "Find Duplicate File in System", "id": 609, "frontend_id": 609, + "difficulty_lvl": 2, + "acceptance": 0.67655, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4KGl6PMwVXE", @@ -25443,11 +26188,11 @@ "companies": [ { "name": "Dropbox", - "score": 10 + "score": 6 }, { "name": "Apple", - "score": 1 + "score": 2 } ] }, @@ -25455,6 +26200,8 @@ "title": "Triangle Judgement", "id": 610, "frontend_id": 610, + "difficulty_lvl": 1, + "acceptance": 0.70651, "videos": [ { "embedded_url": "https://www.youtube.com/embed/0cUQ7gNE5iI", @@ -25476,12 +26223,15 @@ "embedded_url": "https://www.youtube.com/embed/r57krxNdbNo", "channel": "PinkWitch \u8bf8\u845b\u7b71\u6696 TV" } - ] + ], + "companies": [] }, { "title": "Valid Triangle Number", "id": 611, "frontend_id": 611, + "difficulty_lvl": 2, + "acceptance": 0.50683, "videos": [ { "embedded_url": "https://www.youtube.com/embed/3Jo1NdD8xX4", @@ -25507,15 +26257,15 @@ "companies": [ { "name": "LinkedIn", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Bloomberg", - "score": 6 + "score": 2 } ] }, @@ -25523,6 +26273,8 @@ "title": "Shortest Distance in a Plane", "id": 612, "frontend_id": 612, + "difficulty_lvl": 2, + "acceptance": 0.62323, "videos": [ { "embedded_url": "https://www.youtube.com/embed/0k-J7tbqVM8", @@ -25536,12 +26288,15 @@ "embedded_url": "https://www.youtube.com/embed/60RbWlDFsmI", "channel": "Techdose" } - ] + ], + "companies": [] }, { "title": "Shortest Distance in a Line", "id": 613, "frontend_id": 613, + "difficulty_lvl": 1, + "acceptance": 0.80647, "videos": [ { "embedded_url": "https://www.youtube.com/embed/OscFxVKq2s8", @@ -25559,12 +26314,15 @@ "embedded_url": "https://www.youtube.com/embed/YMKpDBmDJQE", "channel": "Nick White" } - ] + ], + "companies": [] }, { "title": "Second Degree Follower", "id": 614, "frontend_id": 614, + "difficulty_lvl": 2, + "acceptance": 0.37727, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4BMMPP11PxA", @@ -25582,12 +26340,15 @@ "embedded_url": "https://www.youtube.com/embed/5WMhKtpBeXE", "channel": "JYS" } - ] + ], + "companies": [] }, { "title": "Average Salary: Departments VS Company", "id": 615, "frontend_id": 615, + "difficulty_lvl": 3, + "acceptance": 0.56084, "videos": [ { "embedded_url": "https://www.youtube.com/embed/_r1-ZZWi4WM", @@ -25609,12 +26370,15 @@ "embedded_url": "https://www.youtube.com/embed/9GEkH9Dh_6I", "channel": "Algorithms Casts" } - ] + ], + "companies": [] }, { "title": "Add Bold Tag in String", "id": 616, "frontend_id": 616, + "difficulty_lvl": 2, + "acceptance": 0.49053, "videos": [ { "embedded_url": "https://www.youtube.com/embed/WXb3ItOlRfQ", @@ -25640,7 +26404,7 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 13 } ] }, @@ -25648,6 +26412,8 @@ "title": "Merge Two Binary Trees", "id": 617, "frontend_id": 617, + "difficulty_lvl": 1, + "acceptance": 0.78722, "videos": [ { "embedded_url": "https://www.youtube.com/embed/QHH6rIK3dDQ", @@ -25673,7 +26439,7 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 6 }, { "name": "Amazon", @@ -25685,14 +26451,22 @@ }, { "name": "Uber", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Students Report By Geography", "id": 618, "frontend_id": 618, + "difficulty_lvl": 3, + "acceptance": 0.63711, "videos": [ { "embedded_url": "https://www.youtube.com/embed/QLcbWrx6U2k", @@ -25706,12 +26480,15 @@ "embedded_url": "https://www.youtube.com/embed/cClOEG-_dns", "channel": "code_report" } - ] + ], + "companies": [] }, { "title": "Biggest Single Number", "id": 619, "frontend_id": 619, + "difficulty_lvl": 1, + "acceptance": 0.54383, "videos": [ { "embedded_url": "https://www.youtube.com/embed/zUCvVVuVeFg", @@ -25733,12 +26510,15 @@ "embedded_url": "https://www.youtube.com/embed/JxrhRetUVsA", "channel": "Yuyin" } - ] + ], + "companies": [] }, { "title": "Not Boring Movies", "id": 620, "frontend_id": 620, + "difficulty_lvl": 1, + "acceptance": 0.72492, "videos": [ { "embedded_url": "https://www.youtube.com/embed/8d3FBUpSZeI", @@ -25760,12 +26540,15 @@ "embedded_url": "https://www.youtube.com/embed/cWC3Xip8KEM", "channel": "Programming Live with Larry" } - ] + ], + "companies": [] }, { "title": "Task Scheduler", "id": 621, "frontend_id": 621, + "difficulty_lvl": 2, + "acceptance": 0.56995, "videos": [ { "embedded_url": "https://www.youtube.com/embed/s8p8ukTyA2I", @@ -25791,30 +26574,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 3 }, { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Uber", - "score": 1 + "score": 2 }, { "name": "Rubrik", - "score": 1 + "score": 2 }, { "name": "Microsoft", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Add One Row to Tree", "id": 623, "frontend_id": 623, + "difficulty_lvl": 2, + "acceptance": 0.59476, "videos": [ { "embedded_url": "https://www.youtube.com/embed/7xCErgdc9sw", @@ -25840,7 +26631,7 @@ "companies": [ { "name": "Gilt Groupe", - "score": 6 + "score": 1 } ] }, @@ -25848,6 +26639,8 @@ "title": "Maximum Distance in Arrays", "id": 624, "frontend_id": 624, + "difficulty_lvl": 2, + "acceptance": 0.4155, "videos": [ { "embedded_url": "https://www.youtube.com/embed/U_kYQUwiemM", @@ -25873,7 +26666,7 @@ "companies": [ { "name": "Yahoo", - "score": 6 + "score": 1 } ] }, @@ -25881,6 +26674,8 @@ "title": "Minimum Factorization", "id": 625, "frontend_id": 625, + "difficulty_lvl": 2, + "acceptance": 0.33508, "videos": [ { "embedded_url": "https://www.youtube.com/embed/CQI690bhGY8", @@ -25906,7 +26701,7 @@ "companies": [ { "name": "Tencent", - "score": 6 + "score": 1 } ] }, @@ -25914,6 +26709,8 @@ "title": "Exchange Seats", "id": 626, "frontend_id": 626, + "difficulty_lvl": 2, + "acceptance": 0.68517, "videos": [ { "embedded_url": "https://www.youtube.com/embed/fLvGRA0sdYw", @@ -25935,12 +26732,15 @@ "embedded_url": "https://www.youtube.com/embed/yNpZBNEvIw8", "channel": "Carter MacLennan" } - ] + ], + "companies": [] }, { "title": "Swap Salary", "id": 627, "frontend_id": 627, + "difficulty_lvl": 1, + "acceptance": 0.82949, "videos": [ { "embedded_url": "https://www.youtube.com/embed/T_ebtxEvZvI", @@ -25962,12 +26762,15 @@ "embedded_url": "https://www.youtube.com/embed/EIH3xFsl24g", "channel": "Frederik M\u00fcller" } - ] + ], + "companies": [] }, { "title": "Maximum Product of Three Numbers", "id": 628, "frontend_id": 628, + "difficulty_lvl": 1, + "acceptance": 0.45476, "videos": [ { "embedded_url": "https://www.youtube.com/embed/9A4Bebss1WQ", @@ -25993,7 +26796,7 @@ "companies": [ { "name": "Salesforce", - "score": 6 + "score": 7 } ] }, @@ -26001,6 +26804,8 @@ "title": "K Inverse Pairs Array", "id": 629, "frontend_id": 629, + "difficulty_lvl": 3, + "acceptance": 0.42565, "videos": [ { "embedded_url": "https://www.youtube.com/embed/eA9gdCPhYJY", @@ -26026,7 +26831,7 @@ "companies": [ { "name": "ByteDance", - "score": 10 + "score": 2 }, { "name": "Works Applications", @@ -26038,6 +26843,8 @@ "title": "Course Schedule III", "id": 630, "frontend_id": 630, + "difficulty_lvl": 3, + "acceptance": 0.40118, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ey8FxYsFAMU", @@ -26063,7 +26870,7 @@ "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } ] }, @@ -26071,6 +26878,8 @@ "title": "Design Excel Sum Formula", "id": 631, "frontend_id": 631, + "difficulty_lvl": 3, + "acceptance": 0.43462, "videos": [ { "embedded_url": "https://www.youtube.com/embed/zfozWv9kNeA", @@ -26092,11 +26901,11 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 3 }, { "name": "Opendoor", - "score": 6 + "score": 3 } ] }, @@ -26104,6 +26913,8 @@ "title": "Smallest Range Covering Elements from K Lists", "id": 632, "frontend_id": 632, + "difficulty_lvl": 3, + "acceptance": 0.61623, "videos": [ { "embedded_url": "https://www.youtube.com/embed/zwKGbJEngcw", @@ -26125,12 +26936,15 @@ "embedded_url": "https://www.youtube.com/embed/0Krt6Ht39sk", "channel": "Pair Programmer" } - ] + ], + "companies": [] }, { "title": "Sum of Square Numbers", "id": 633, "frontend_id": 633, + "difficulty_lvl": 2, + "acceptance": 0.34192, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ph9orJ_zNRw", @@ -26151,16 +26965,20 @@ { "embedded_url": "https://www.youtube.com/embed/QJVpQ8ZYD6I", "channel": "code Explainer" + }, + { + "embedded_url": "https://www.youtube.com/embed/B0UrG_X2faA", + "channel": "NeetCodeIO" } ], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Bloomberg", - "score": 6 + "score": 2 } ] }, @@ -26168,6 +26986,8 @@ "title": "Find the Derangement of An Array", "id": 634, "frontend_id": 634, + "difficulty_lvl": 2, + "acceptance": 0.42014, "videos": [ { "embedded_url": "https://www.youtube.com/embed/054ZFl3GaIk", @@ -26193,7 +27013,7 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 2 }, { "name": "IXL", @@ -26205,6 +27025,8 @@ "title": "Design Log Storage System", "id": 635, "frontend_id": 635, + "difficulty_lvl": 2, + "acceptance": 0.62197, "videos": [ { "embedded_url": "https://www.youtube.com/embed/JBogDOmVIIM", @@ -26230,7 +27052,7 @@ "companies": [ { "name": "Twitter", - "score": 6 + "score": 5 } ] }, @@ -26238,6 +27060,8 @@ "title": "Exclusive Time of Functions", "id": 636, "frontend_id": 636, + "difficulty_lvl": 2, + "acceptance": 0.61314, "videos": [ { "embedded_url": "https://www.youtube.com/embed/dsusgzffTDA", @@ -26263,23 +27087,23 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 33 }, { "name": "LinkedIn", - "score": 3 + "score": 8 }, { "name": "Microsoft", - "score": 1 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 3 }, { "name": "DoorDash", - "score": 1 + "score": 2 } ] }, @@ -26287,6 +27111,8 @@ "title": "Average of Levels in Binary Tree", "id": 637, "frontend_id": 637, + "difficulty_lvl": 1, + "acceptance": 0.71847, "videos": [ { "embedded_url": "https://www.youtube.com/embed/NW3aCTwdXxs", @@ -26312,22 +27138,28 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 5 }, { "name": "Amazon", - "score": 7 + "score": 4 }, { "name": "Microsoft", - "score": 1 + "score": 2 } + ], + "languages": [ + "cpp", + "java" ] }, { "title": "Shopping Offers", "id": 638, "frontend_id": 638, + "difficulty_lvl": 2, + "acceptance": 0.5273, "videos": [ { "embedded_url": "https://www.youtube.com/embed/t6atP4Yv7_4", @@ -26353,19 +27185,19 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 3 }, { "name": "Apple", - "score": 1 + "score": 2 }, { "name": "Facebook", - "score": 1 + "score": 2 }, { "name": "Amazon", - "score": 1 + "score": 2 } ] }, @@ -26373,6 +27205,8 @@ "title": "Decode Ways II", "id": 639, "frontend_id": 639, + "difficulty_lvl": 3, + "acceptance": 0.30419, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Pdgg7eIGb2U", @@ -26398,7 +27232,7 @@ "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } ] }, @@ -26406,6 +27240,8 @@ "title": "Solve the Equation", "id": 640, "frontend_id": 640, + "difficulty_lvl": 2, + "acceptance": 0.43567, "videos": [ { "embedded_url": "https://www.youtube.com/embed/MnWKzQ3Cx4M", @@ -26431,11 +27267,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 3 } ] }, @@ -26443,6 +27279,8 @@ "title": "Design Search Autocomplete System", "id": 642, "frontend_id": 642, + "difficulty_lvl": 3, + "acceptance": 0.4865, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Zm3-cGKKFLg", @@ -26468,11 +27306,11 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 9 }, { "name": "Amazon", - "score": 10 + "score": 9 }, { "name": "Microsoft", @@ -26480,15 +27318,11 @@ }, { "name": "LinkedIn", - "score": 1 + "score": 2 }, { "name": "Twitter", - "score": 1 - }, - { - "name": "Snapchat", - "score": 1 + "score": 2 } ] }, @@ -26496,6 +27330,8 @@ "title": "Maximum Average Subarray I", "id": 643, "frontend_id": 643, + "difficulty_lvl": 1, + "acceptance": 0.4336, "videos": [ { "embedded_url": "https://www.youtube.com/embed/zgJuTtKzSek", @@ -26521,7 +27357,7 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 7 } ] }, @@ -26529,6 +27365,8 @@ "title": "Maximum Average Subarray II", "id": 644, "frontend_id": 644, + "difficulty_lvl": 3, + "acceptance": 0.36249, "videos": [ { "embedded_url": "https://www.youtube.com/embed/zgJuTtKzSek", @@ -26554,7 +27392,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -26562,6 +27400,8 @@ "title": "Set Mismatch", "id": 645, "frontend_id": 645, + "difficulty_lvl": 1, + "acceptance": 0.4251, "videos": [ { "embedded_url": "https://www.youtube.com/embed/u6Dt9av66yM", @@ -26587,7 +27427,7 @@ "companies": [ { "name": "Adobe", - "score": 6 + "score": 3 } ] }, @@ -26595,6 +27435,8 @@ "title": "Maximum Length of Pair Chain", "id": 646, "frontend_id": 646, + "difficulty_lvl": 2, + "acceptance": 0.56852, "videos": [ { "embedded_url": "https://www.youtube.com/embed/dgNdDMMb8Rk", @@ -26620,11 +27462,11 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Flipkart", - "score": 6 + "score": 2 } ] }, @@ -26632,6 +27474,8 @@ "title": "Palindromic Substrings", "id": 647, "frontend_id": 647, + "difficulty_lvl": 2, + "acceptance": 0.67434, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4RACzI5-du8", @@ -26657,22 +27501,30 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 24 }, { "name": "Twitter", - "score": 1 + "score": 2 }, { "name": "Expedia", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Replace Words", "id": 648, "frontend_id": 648, + "difficulty_lvl": 2, + "acceptance": 0.62695, "videos": [ { "embedded_url": "https://www.youtube.com/embed/n6Zx5MqihAs", @@ -26698,7 +27550,7 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 } ] }, @@ -26706,6 +27558,8 @@ "title": "Dota2 Senate", "id": 649, "frontend_id": 649, + "difficulty_lvl": 2, + "acceptance": 0.47877, "videos": [ { "embedded_url": "https://www.youtube.com/embed/zZA5KskfMuQ", @@ -26731,7 +27585,7 @@ "companies": [ { "name": "Valve", - "score": 6 + "score": 1 } ] }, @@ -26739,6 +27593,8 @@ "title": "2 Keys Keyboard", "id": 650, "frontend_id": 650, + "difficulty_lvl": 2, + "acceptance": 0.53689, "videos": [ { "embedded_url": "https://www.youtube.com/embed/anHoebBokmg", @@ -26764,11 +27620,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Microsoft", - "score": 1 + "score": 3 } ] }, @@ -26776,6 +27632,8 @@ "title": "4 Keys Keyboard", "id": 651, "frontend_id": 651, + "difficulty_lvl": 2, + "acceptance": 0.56031, "videos": [ { "embedded_url": "https://www.youtube.com/embed/c_y7H7qZJRU", @@ -26801,7 +27659,7 @@ "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } ] }, @@ -26809,6 +27667,8 @@ "title": "Find Duplicate Subtrees", "id": 652, "frontend_id": 652, + "difficulty_lvl": 2, + "acceptance": 0.59087, "videos": [ { "embedded_url": "https://www.youtube.com/embed/kn0Z5_qPPzY", @@ -26834,15 +27694,15 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 13 }, { "name": "Amazon", - "score": 5 + "score": 7 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } ] }, @@ -26850,6 +27710,8 @@ "title": "Two Sum IV - Input is a BST", "id": 653, "frontend_id": 653, + "difficulty_lvl": 1, + "acceptance": 0.61095, "videos": [ { "embedded_url": "https://www.youtube.com/embed/AswWgktaeDk", @@ -26871,12 +27733,24 @@ "embedded_url": "https://www.youtube.com/embed/GweveyNC3lw", "channel": "Tech Adora by Nivedita" } + ], + "companies": [ + { + "name": "Amazon", + "score": 2 + }, + { + "name": "Uber", + "score": 2 + } ] }, { "title": "Maximum Binary Tree", "id": 654, "frontend_id": 654, + "difficulty_lvl": 2, + "acceptance": 0.84973, "videos": [ { "embedded_url": "https://www.youtube.com/embed/l1OlA5ifFAg", @@ -26902,7 +27776,7 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -26910,6 +27784,8 @@ "title": "Print Binary Tree", "id": 655, "frontend_id": 655, + "difficulty_lvl": 2, + "acceptance": 0.62437, "videos": [ { "embedded_url": "https://www.youtube.com/embed/qzBsfwBv3ZQ", @@ -26935,11 +27811,11 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 } ] }, @@ -26947,6 +27823,8 @@ "title": "Coin Path", "id": 656, "frontend_id": 656, + "difficulty_lvl": 3, + "acceptance": 0.31939, "videos": [ { "embedded_url": "https://www.youtube.com/embed/H9bfqozjoqs", @@ -26964,7 +27842,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -26972,6 +27850,8 @@ "title": "Robot Return to Origin", "id": 657, "frontend_id": 657, + "difficulty_lvl": 1, + "acceptance": 0.75387, "videos": [ { "embedded_url": "https://www.youtube.com/embed/lk5L_GsZFSw", @@ -26993,12 +27873,15 @@ "embedded_url": "https://www.youtube.com/embed/sIhnayeCwoE", "channel": "Matt Upham | Tech + Coding" } - ] + ], + "companies": [] }, { "title": "Find K Closest Elements", "id": 658, "frontend_id": 658, + "difficulty_lvl": 2, + "acceptance": 0.46891, "videos": [ { "embedded_url": "https://www.youtube.com/embed/o-YDQzHoaKM", @@ -27020,38 +27903,36 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 21 }, { "name": "Google", - "score": 2 + "score": 4 }, { "name": "tiktok", - "score": 2 + "score": 4 }, { "name": "Amazon", - "score": 2 + "score": 3 }, { "name": "Uber", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python" ] }, { "title": "Split Array into Consecutive Subsequences", "id": 659, "frontend_id": 659, + "difficulty_lvl": 2, + "acceptance": 0.50871, "videos": [ { "embedded_url": "https://www.youtube.com/embed/48dVSYcab0U", @@ -27077,11 +27958,11 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Bloomberg", - "score": 6 + "score": 2 } ] }, @@ -27089,6 +27970,8 @@ "title": "Remove 9", "id": 660, "frontend_id": 660, + "difficulty_lvl": 3, + "acceptance": 0.57305, "videos": [ { "embedded_url": "https://www.youtube.com/embed/yubRKwixN-U", @@ -27106,7 +27989,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -27114,6 +27997,8 @@ "title": "Image Smoother", "id": 661, "frontend_id": 661, + "difficulty_lvl": 1, + "acceptance": 0.5561, "videos": [ { "embedded_url": "https://www.youtube.com/embed/E1RUiL2uSc0", @@ -27139,14 +28024,19 @@ "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Maximum Width of Binary Tree", "id": 662, "frontend_id": 662, + "difficulty_lvl": 2, + "acceptance": 0.42616, "videos": [ { "embedded_url": "https://www.youtube.com/embed/FPzLE2L7uHs", @@ -27172,11 +28062,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 6 }, { "name": "Google", - "score": 6 + "score": 4 }, { "name": "Microsoft", @@ -27188,14 +28078,19 @@ }, { "name": "Bloomberg", - "score": 1 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Equal Tree Partition", "id": 663, "frontend_id": 663, + "difficulty_lvl": 2, + "acceptance": 0.4143, "videos": [ { "embedded_url": "https://www.youtube.com/embed/cZaoUEg89M0", @@ -27221,7 +28116,7 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -27229,6 +28124,8 @@ "title": "Strange Printer", "id": 664, "frontend_id": 664, + "difficulty_lvl": 3, + "acceptance": 0.55317, "videos": [ { "embedded_url": "https://www.youtube.com/embed/fIOZkIH5PZU", @@ -27254,11 +28151,11 @@ "companies": [ { "name": "Walmart Global Tech", - "score": 10 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 3 } ] }, @@ -27266,6 +28163,8 @@ "title": "Non-decreasing Array", "id": 665, "frontend_id": 665, + "difficulty_lvl": 2, + "acceptance": 0.24386, "videos": [ { "embedded_url": "https://www.youtube.com/embed/RegQckCegDk", @@ -27291,14 +28190,22 @@ "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Path Sum IV", "id": 666, "frontend_id": 666, + "difficulty_lvl": 2, + "acceptance": 0.59635, "videos": [ { "embedded_url": "https://www.youtube.com/embed/58YvvnKcczA", @@ -27320,7 +28227,7 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 2 }, { "name": "Alibaba", @@ -27332,6 +28239,8 @@ "title": "Beautiful Arrangement II", "id": 667, "frontend_id": 667, + "difficulty_lvl": 2, + "acceptance": 0.59921, "videos": [ { "embedded_url": "https://www.youtube.com/embed/BiQlqgmJ0BM", @@ -27357,7 +28266,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -27365,6 +28274,8 @@ "title": "Kth Smallest Number in Multiplication Table", "id": 668, "frontend_id": 668, + "difficulty_lvl": 3, + "acceptance": 0.51432, "videos": [ { "embedded_url": "https://www.youtube.com/embed/N-7biZf7a0I", @@ -27390,7 +28301,7 @@ "companies": [ { "name": "Rubrik", - "score": 6 + "score": 4 } ] }, @@ -27398,6 +28309,8 @@ "title": "Trim a Binary Search Tree", "id": 669, "frontend_id": 669, + "difficulty_lvl": 2, + "acceptance": 0.66332, "videos": [ { "embedded_url": "https://www.youtube.com/embed/jwt5mTjEXGc", @@ -27423,26 +28336,33 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Facebook", - "score": 10 + "score": 3 }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "Yahoo", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "java" ] }, { "title": "Maximum Swap", "id": 670, "frontend_id": 670, + "difficulty_lvl": 2, + "acceptance": 0.47837, "videos": [ { "embedded_url": "https://www.youtube.com/embed/arecn8VuQL0", @@ -27468,19 +28388,19 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 36 }, { "name": "tiktok", - "score": 3 + "score": 8 }, { "name": "Amazon", - "score": 2 + "score": 4 }, { "name": "ByteDance", - "score": 1 + "score": 2 } ] }, @@ -27488,6 +28408,8 @@ "title": "Second Minimum Node In a Binary Tree", "id": 671, "frontend_id": 671, + "difficulty_lvl": 1, + "acceptance": 0.44199, "videos": [ { "embedded_url": "https://www.youtube.com/embed/zex8_82T46U", @@ -27513,7 +28435,7 @@ "companies": [ { "name": "LinkedIn", - "score": 6 + "score": 11 } ] }, @@ -27521,6 +28443,8 @@ "title": "Bulb Switcher II", "id": 672, "frontend_id": 672, + "difficulty_lvl": 2, + "acceptance": 0.50403, "videos": [ { "embedded_url": "https://www.youtube.com/embed/wx272jQLwkA", @@ -27546,7 +28470,7 @@ "companies": [ { "name": "Microsoft", - "score": 6 + "score": 1 } ] }, @@ -27554,6 +28478,8 @@ "title": "Number of Longest Increasing Subsequence", "id": 673, "frontend_id": 673, + "difficulty_lvl": 2, + "acceptance": 0.47376, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Tuc-rjJbsXU", @@ -27575,18 +28501,23 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Google", - "score": 6 + "score": 2 } + ], + "languages": [ + "python" ] }, { "title": "Longest Continuous Increasing Subsequence", "id": 674, "frontend_id": 674, + "difficulty_lvl": 1, + "acceptance": 0.49465, "videos": [ { "embedded_url": "https://www.youtube.com/embed/jSvoE-_Yhs4", @@ -27612,7 +28543,7 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 4 } ] }, @@ -27620,6 +28551,8 @@ "title": "Cut Off Trees for Golf Event", "id": 675, "frontend_id": 675, + "difficulty_lvl": 3, + "acceptance": 0.34101, "videos": [ { "embedded_url": "https://www.youtube.com/embed/vMnBMiL9zzg", @@ -27645,11 +28578,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Apple", - "score": 1 + "score": 2 } ] }, @@ -27657,6 +28590,8 @@ "title": "Implement Magic Dictionary", "id": 676, "frontend_id": 676, + "difficulty_lvl": 2, + "acceptance": 0.56982, "videos": [ { "embedded_url": "https://www.youtube.com/embed/uIhnPHuz7pE", @@ -27682,11 +28617,11 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 } ] }, @@ -27694,6 +28629,8 @@ "title": "Map Sum Pairs", "id": 677, "frontend_id": 677, + "difficulty_lvl": 2, + "acceptance": 0.56726, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Z7dkugscqLA", @@ -27719,7 +28656,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -27727,6 +28664,8 @@ "title": "Valid Parenthesis String", "id": 678, "frontend_id": 678, + "difficulty_lvl": 2, + "acceptance": 0.34329, "videos": [ { "embedded_url": "https://www.youtube.com/embed/QhPdNS143Qg", @@ -27756,26 +28695,34 @@ }, { "name": "Amazon", - "score": 4 + "score": 5 }, { "name": "Facebook", - "score": 2 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 3 }, { "name": "Yahoo", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "24 Game", "id": 679, "frontend_id": 679, + "difficulty_lvl": 3, + "acceptance": 0.49224, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ET_HIyJTl1E", @@ -27801,11 +28748,11 @@ "companies": [ { "name": "HRT", - "score": 10 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 } ] }, @@ -27813,6 +28760,8 @@ "title": "Valid Palindrome II", "id": 680, "frontend_id": 680, + "difficulty_lvl": 1, + "acceptance": 0.39436, "videos": [ { "embedded_url": "https://www.youtube.com/embed/JrxRYBwG6EI", @@ -27838,38 +28787,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 252 }, { "name": "Amazon", - "score": 1 + "score": 5 }, { "name": "Microsoft", - "score": 1 + "score": 3 }, { "name": "Apple", - "score": 1 + "score": 3 }, { "name": "Bloomberg", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 - }, - { - "name": "Walmart Global Tech", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Next Closest Time", "id": 681, "frontend_id": 681, + "difficulty_lvl": 2, + "acceptance": 0.46409, "videos": [ { "embedded_url": "https://www.youtube.com/embed/99Gw7Hezii8", @@ -27891,12 +28840,15 @@ "embedded_url": "https://www.youtube.com/embed/tGpJegBlgOw", "channel": "Nihao, MrZhang" } - ] + ], + "companies": [] }, { "title": "Baseball Game", "id": 682, "frontend_id": 682, + "difficulty_lvl": 1, + "acceptance": 0.74899, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Id_tqGdsZQI", @@ -27922,14 +28874,22 @@ "companies": [ { "name": "Uber", - "score": 6 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "K Empty Slots", "id": 683, "frontend_id": 683, + "difficulty_lvl": 3, + "acceptance": 0.37002, "videos": [ { "embedded_url": "https://www.youtube.com/embed/KxyeTeBuWko", @@ -27951,7 +28911,7 @@ "companies": [ { "name": "Nvidia", - "score": 10 + "score": 2 }, { "name": "Google", @@ -27963,6 +28923,8 @@ "title": "Redundant Connection", "id": 684, "frontend_id": 684, + "difficulty_lvl": 2, + "acceptance": 0.62441, "videos": [ { "embedded_url": "https://www.youtube.com/embed/FXWRE67PLL0", @@ -27988,18 +28950,26 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Microsoft", - "score": 6 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Redundant Connection II", "id": 685, "frontend_id": 685, + "difficulty_lvl": 3, + "acceptance": 0.34112, "videos": [ { "embedded_url": "https://www.youtube.com/embed/U7_ynlauYh0", @@ -28025,7 +28995,7 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -28033,6 +29003,8 @@ "title": "Repeated String Match", "id": 686, "frontend_id": 686, + "difficulty_lvl": 2, + "acceptance": 0.34372, "videos": [ { "embedded_url": "https://www.youtube.com/embed/1WGtcErMPrQ", @@ -28058,7 +29030,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -28066,6 +29038,8 @@ "title": "Longest Univalue Path", "id": 687, "frontend_id": 687, + "difficulty_lvl": 2, + "acceptance": 0.40653, "videos": [ { "embedded_url": "https://www.youtube.com/embed/AxKs4XVyAss", @@ -28091,11 +29065,11 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Microsoft", - "score": 6 + "score": 2 } ] }, @@ -28103,6 +29077,8 @@ "title": "Knight Probability in Chessboard", "id": 688, "frontend_id": 688, + "difficulty_lvl": 2, + "acceptance": 0.56254, "videos": [ { "embedded_url": "https://www.youtube.com/embed/54nJhM2AZv4", @@ -28128,7 +29104,7 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 3 } ] }, @@ -28136,6 +29112,8 @@ "title": "Maximum Sum of 3 Non-Overlapping Subarrays", "id": 689, "frontend_id": 689, + "difficulty_lvl": 3, + "acceptance": 0.49028, "videos": [ { "embedded_url": "https://www.youtube.com/embed/sSjz_Cf4Bkw", @@ -28157,7 +29135,7 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 3 } ] }, @@ -28165,6 +29143,8 @@ "title": "Employee Importance", "id": 690, "frontend_id": 690, + "difficulty_lvl": 2, + "acceptance": 0.65934, "videos": [ { "embedded_url": "https://www.youtube.com/embed/3FZRnVJ98X0", @@ -28190,11 +29170,11 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 6 }, { "name": "Apple", - "score": 1 + "score": 2 } ] }, @@ -28202,6 +29182,8 @@ "title": "Stickers to Spell Word", "id": 691, "frontend_id": 691, + "difficulty_lvl": 3, + "acceptance": 0.46246, "videos": [ { "embedded_url": "https://www.youtube.com/embed/hsomLb6mUdI", @@ -28227,7 +29209,7 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 3 } ] }, @@ -28235,6 +29217,8 @@ "title": "Top K Frequent Words", "id": 692, "frontend_id": 692, + "difficulty_lvl": 2, + "acceptance": 0.5739, "videos": [ { "embedded_url": "https://www.youtube.com/embed/cupg2TGIkyM", @@ -28260,39 +29244,23 @@ "companies": [ { "name": "Uber", - "score": 10 + "score": 17 }, { "name": "Amazon", - "score": 7 + "score": 12 }, { "name": "Microsoft", - "score": 5 + "score": 8 }, { "name": "Google", - "score": 4 + "score": 7 }, { "name": "Bloomberg", - "score": 2 - }, - { - "name": "Facebook", - "score": 2 - }, - { - "name": "Yahoo", - "score": 2 - }, - { - "name": "Apple", - "score": 2 - }, - { - "name": "Two Sigma", - "score": 1 + "score": 4 } ] }, @@ -28300,6 +29268,8 @@ "title": "Binary Number with Alternating Bits", "id": 693, "frontend_id": 693, + "difficulty_lvl": 1, + "acceptance": 0.61767, "videos": [ { "embedded_url": "https://www.youtube.com/embed/9QFBqtvip9E", @@ -28325,7 +29295,7 @@ "companies": [ { "name": "Yahoo", - "score": 6 + "score": 1 } ] }, @@ -28333,6 +29303,8 @@ "title": "Number of Distinct Islands", "id": 694, "frontend_id": 694, + "difficulty_lvl": 2, + "acceptance": 0.60864, "videos": [ { "embedded_url": "https://www.youtube.com/embed/7zmgQSJghpo", @@ -28358,7 +29330,7 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 8 }, { "name": "Microsoft", @@ -28366,11 +29338,11 @@ }, { "name": "Bloomberg", - "score": 1 + "score": 2 }, { "name": "DoorDash", - "score": 1 + "score": 2 } ] }, @@ -28378,6 +29350,8 @@ "title": "Max Area of Island", "id": 695, "frontend_id": 695, + "difficulty_lvl": 2, + "acceptance": 0.7187, "videos": [ { "embedded_url": "https://www.youtube.com/embed/iJGr1OtmH0c", @@ -28403,46 +29377,38 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 19 }, { "name": "Facebook", - "score": 10 + "score": 18 }, { "name": "Microsoft", - "score": 5 + "score": 10 }, { "name": "Google", - "score": 5 + "score": 9 }, { "name": "Qualtrics", - "score": 2 - }, - { - "name": "LinkedIn", - "score": 2 - }, - { - "name": "Apple", - "score": 2 - }, - { - "name": "Dropbox", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Count Binary Substrings", "id": 696, "frontend_id": 696, + "difficulty_lvl": 1, + "acceptance": 0.65402, "videos": [ { "embedded_url": "https://www.youtube.com/embed/MGPHPadxhtQ", @@ -28464,12 +29430,15 @@ "embedded_url": "https://www.youtube.com/embed/rhotywtQ1KE", "channel": "code Explainer" } - ] + ], + "companies": [] }, { "title": "Degree of an Array", "id": 697, "frontend_id": 697, + "difficulty_lvl": 1, + "acceptance": 0.55987, "videos": [ { "embedded_url": "https://www.youtube.com/embed/7wT5sFELf7Q", @@ -28495,31 +29464,23 @@ "companies": [ { "name": "Expedia", - "score": 10 + "score": 5 }, { "name": "Athenahealth", - "score": 7 + "score": 4 }, { "name": "Walmart Global Tech", - "score": 4 + "score": 3 }, { "name": "Mathworks", - "score": 4 + "score": 3 }, { "name": "IBM", - "score": 4 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "Nvidia", - "score": 1 + "score": 3 } ] }, @@ -28527,6 +29488,8 @@ "title": "Partition to K Equal Sum Subsets", "id": 698, "frontend_id": 698, + "difficulty_lvl": 2, + "acceptance": 0.39131, "videos": [ { "embedded_url": "https://www.youtube.com/embed/mBk4I0X46oI", @@ -28556,18 +29519,24 @@ }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Amazon", - "score": 1 + "score": 2 } + ], + "languages": [ + "python", + "java" ] }, { "title": "Falling Squares", "id": 699, "frontend_id": 699, + "difficulty_lvl": 3, + "acceptance": 0.44757, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ygxcNixDtFI", @@ -28589,12 +29558,15 @@ "embedded_url": "https://www.youtube.com/embed/bahebearrDc", "channel": "NeetCode" } - ] + ], + "companies": [] }, { "title": "Number of Distinct Islands II", "id": 711, "frontend_id": 711, + "difficulty_lvl": 3, + "acceptance": 0.52207, "videos": [ { "embedded_url": "https://www.youtube.com/embed/7zmgQSJghpo", @@ -28612,12 +29584,15 @@ "embedded_url": "https://www.youtube.com/embed/u617H2WwR5g", "channel": "Eric Programming" } - ] + ], + "companies": [] }, { "title": "Minimum ASCII Delete Sum for Two Strings", "id": 712, "frontend_id": 712, + "difficulty_lvl": 2, + "acceptance": 0.649, "videos": [ { "embedded_url": "https://www.youtube.com/embed/GPePWKCEy24", @@ -28639,11 +29614,11 @@ "companies": [ { "name": "TripleByte", - "score": 10 + "score": 4 }, { "name": "Activision", - "score": 1 + "score": 2 } ] }, @@ -28651,6 +29626,8 @@ "title": "Subarray Product Less Than K", "id": 713, "frontend_id": 713, + "difficulty_lvl": 2, + "acceptance": 0.46249, "videos": [ { "embedded_url": "https://www.youtube.com/embed/7rGxOMEBWKE", @@ -28676,22 +29653,27 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 3 }, { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Goldman Sachs", - "score": 1 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Best Time to Buy and Sell Stock with Transaction Fee", "id": 714, "frontend_id": 714, + "difficulty_lvl": 2, + "acceptance": 0.67749, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Ew_R-ZfhPEc", @@ -28717,11 +29699,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Facebook", - "score": 1 + "score": 2 } ] }, @@ -28729,6 +29711,8 @@ "title": "Range Module", "id": 715, "frontend_id": 715, + "difficulty_lvl": 3, + "acceptance": 0.44516, "videos": [ { "embedded_url": "https://www.youtube.com/embed/OLoBBLvU2KY", @@ -28750,12 +29734,15 @@ "embedded_url": "https://www.youtube.com/embed/LV_KASL1smE", "channel": "Unofficial Sendoh" } - ] + ], + "companies": [] }, { "title": "Max Stack", "id": 716, "frontend_id": 716, + "difficulty_lvl": 3, + "acceptance": 0.45127, "videos": [ { "embedded_url": "https://www.youtube.com/embed/BcZzdkvCQ0s", @@ -28777,31 +29764,23 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 33 }, { "name": "Microsoft", - "score": 1 + "score": 3 }, { "name": "Facebook", - "score": 1 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 3 }, { "name": "VMware", - "score": 1 - }, - { - "name": "Yandex", - "score": 1 - }, - { - "name": "Lyft", - "score": 1 + "score": 3 } ] }, @@ -28809,6 +29788,8 @@ "title": "1-bit and 2-bit Characters", "id": 717, "frontend_id": 717, + "difficulty_lvl": 1, + "acceptance": 0.4539, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4gJ3cZ5OqjY", @@ -28834,7 +29815,7 @@ "companies": [ { "name": "Apple", - "score": 6 + "score": 2 } ] }, @@ -28842,6 +29823,8 @@ "title": "Maximum Length of Repeated Subarray", "id": 718, "frontend_id": 718, + "difficulty_lvl": 2, + "acceptance": 0.51135, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Zg3HBicw4LU", @@ -28867,15 +29850,15 @@ "companies": [ { "name": "Karat", - "score": 10 + "score": 16 }, { "name": "Indeed", - "score": 2 + "score": 8 }, { "name": "Wayfair", - "score": 1 + "score": 7 } ] }, @@ -28883,6 +29866,8 @@ "title": "Find K-th Smallest Pair Distance", "id": 719, "frontend_id": 719, + "difficulty_lvl": 3, + "acceptance": 0.37008, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ym93rTBR4j8", @@ -28908,7 +29893,7 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 3 } ] }, @@ -28916,6 +29901,8 @@ "title": "Longest Word in Dictionary", "id": 720, "frontend_id": 720, + "difficulty_lvl": 2, + "acceptance": 0.52076, "videos": [ { "embedded_url": "https://www.youtube.com/embed/waIgDZZp9Wc", @@ -28949,6 +29936,8 @@ "title": "Accounts Merge", "id": 721, "frontend_id": 721, + "difficulty_lvl": 2, + "acceptance": 0.56498, "videos": [ { "embedded_url": "https://www.youtube.com/embed/6st4IxEF-90", @@ -28974,38 +29963,36 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 34 }, { "name": "Apple", - "score": 2 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 3 }, { "name": "Twitter", - "score": 1 + "score": 3 }, { "name": "Amazon", - "score": 1 - }, - { - "name": "LinkedIn", - "score": 1 - }, - { - "name": "Pinterest", - "score": 1 + "score": 2 } + ], + "languages": [ + "python", + "java" ] }, { "title": "Remove Comments", "id": 722, "frontend_id": 722, + "difficulty_lvl": 2, + "acceptance": 0.3839, "videos": [ { "embedded_url": "https://www.youtube.com/embed/9rYElaS_-6U", @@ -29023,12 +30010,15 @@ "embedded_url": "https://www.youtube.com/embed/4NXPbm4regg", "channel": "H William Polenz" } - ] + ], + "companies": [] }, { "title": "Candy Crush", "id": 723, "frontend_id": 723, + "difficulty_lvl": 2, + "acceptance": 0.76651, "videos": [ { "embedded_url": "https://www.youtube.com/embed/IcyOjlzySXI", @@ -29054,7 +30044,7 @@ "companies": [ { "name": "Bloomberg", - "score": 10 + "score": 7 }, { "name": "Capital One", @@ -29062,11 +30052,11 @@ }, { "name": "Facebook", - "score": 1 + "score": 2 }, { "name": "eBay", - "score": 1 + "score": 2 } ] }, @@ -29074,6 +30064,8 @@ "title": "Find Pivot Index", "id": 724, "frontend_id": 724, + "difficulty_lvl": 1, + "acceptance": 0.55607, "videos": [ { "embedded_url": "https://www.youtube.com/embed/u89i60lYx8U", @@ -29099,46 +30091,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 14 }, { "name": "Goldman Sachs", - "score": 6 + "score": 9 }, { "name": "Apple", - "score": 2 + "score": 3 }, { "name": "Amazon", - "score": 2 + "score": 3 }, { "name": "Google", - "score": 1 - }, - { - "name": "Microsoft", - "score": 1 - }, - { - "name": "Cisco", - "score": 1 - }, - { - "name": "Expedia", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Split Linked List in Parts", "id": 725, "frontend_id": 725, + "difficulty_lvl": 2, + "acceptance": 0.57503, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Fev38Ys6LHw", @@ -29164,22 +30148,27 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Oracle", - "score": 6 + "score": 2 }, { "name": "Apple", - "score": 6 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Number of Atoms", "id": 726, "frontend_id": 726, + "difficulty_lvl": 3, + "acceptance": 0.52385, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ld_W5tvJJsk", @@ -29200,13 +30189,20 @@ { "embedded_url": "https://www.youtube.com/embed/1rp7kIKlajI", "channel": "WorkWithGoogler" + }, + { + "embedded_url": "https://www.youtube.com/embed/iuK05gGBzJc", + "channel": "NeetCodeIO" } - ] + ], + "companies": [] }, { "title": "Minimum Window Subsequence", "id": 727, "frontend_id": 727, + "difficulty_lvl": 3, + "acceptance": 0.43153, "videos": [ { "embedded_url": "https://www.youtube.com/embed/PYEb5UFwz2M", @@ -29232,7 +30228,7 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -29240,19 +30236,21 @@ "title": "Self Dividing Numbers", "id": 728, "frontend_id": 728, + "difficulty_lvl": 1, + "acceptance": 0.78048, "videos": [], "companies": [ { "name": "Adobe", - "score": 10 + "score": 2 }, { "name": "Bloomberg", - "score": 10 + "score": 2 }, { "name": "Amazon", - "score": 10 + "score": 2 }, { "name": "Epic Systems", @@ -29264,55 +30262,75 @@ "title": "My Calendar I", "id": 729, "frontend_id": 729, + "difficulty_lvl": 2, + "acceptance": 0.56691, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Uber", - "score": 10 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 3 } + ], + "languages": [ + "python", + "java" ] }, { "title": "Count Different Palindromic Subsequences", "id": 730, "frontend_id": 730, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.44599, + "videos": [], + "companies": [] }, { "title": "My Calendar II", "id": 731, "frontend_id": 731, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.55089, + "videos": [], + "companies": [] }, { "title": "My Calendar III", "id": 732, "frontend_id": 732, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.71538, + "videos": [], + "companies": [] }, { "title": "Flood Fill", "id": 733, "frontend_id": 733, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.62806, + "videos": [], + "companies": [] }, { "title": "Sentence Similarity", "id": 734, "frontend_id": 734, + "difficulty_lvl": 1, + "acceptance": 0.44035, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 2 }, { "name": "Google", @@ -29324,6 +30342,8 @@ "title": "Asteroid Collision", "id": 735, "frontend_id": 735, + "difficulty_lvl": 2, + "acceptance": 0.45629, "videos": [ { "embedded_url": "https://www.youtube.com/embed/LN7KjRszjk4", @@ -29333,57 +30353,52 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 14 }, { "name": "Facebook", - "score": 7 + "score": 10 }, { "name": "DoorDash", - "score": 4 + "score": 7 }, { "name": "tiktok", - "score": 3 + "score": 5 }, { "name": "Lyft", - "score": 2 - }, - { - "name": "Microsoft", - "score": 2 - }, - { - "name": "Oracle", - "score": 1 - }, - { - "name": "Hotstar", - "score": 1 - }, - { - "name": "Goldman Sachs", - "score": 1 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Parse Lisp Expression", "id": 736, "frontend_id": 736, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.51449, + "videos": [], + "companies": [] }, { "title": "Sentence Similarity II", "id": 737, "frontend_id": 737, + "difficulty_lvl": 2, + "acceptance": 0.49257, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -29391,11 +30406,13 @@ "title": "Monotone Increasing Digits", "id": 738, "frontend_id": 738, + "difficulty_lvl": 2, + "acceptance": 0.47436, "videos": [], "companies": [ { "name": "SAP", - "score": 10 + "score": 9 }, { "name": "Microsoft", @@ -29411,6 +30428,8 @@ "title": "Daily Temperatures", "id": 739, "frontend_id": 739, + "difficulty_lvl": 2, + "acceptance": 0.66044, "videos": [ { "embedded_url": "https://www.youtube.com/embed/cTBiBSnjO3c", @@ -29420,34 +30439,38 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 17 }, { "name": "Amazon", - "score": 6 + "score": 10 }, { "name": "Microsoft", - "score": 3 + "score": 5 }, { "name": "C3 IoT", - "score": 2 + "score": 3 }, { "name": "Uber", - "score": 1 - }, - { - "name": "Salesforce", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Delete and Earn", "id": 740, "frontend_id": 740, + "difficulty_lvl": 2, + "acceptance": 0.56694, "videos": [ { "embedded_url": "https://www.youtube.com/embed/7FCemBxvGw0", @@ -29457,33 +30480,42 @@ "companies": [ { "name": "Goldman Sachs", - "score": 10 + "score": 11 }, { "name": "Amazon", - "score": 4 + "score": 5 }, { "name": "Google", - "score": 1 + "score": 2 } + ], + "languages": [ + "python", + "cpp" ] }, { "title": "Cherry Pickup", "id": 741, "frontend_id": 741, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.36324, + "videos": [], + "companies": [] }, { "title": "To Lower Case", "id": 742, "frontend_id": 709, + "difficulty_lvl": 1, + "acceptance": 0.82638, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -29491,18 +30523,23 @@ "title": "Closest Leaf in a Binary Tree", "id": 743, "frontend_id": 742, + "difficulty_lvl": 2, + "acceptance": 0.4599, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 3 } - ] + ], + "languages": [] }, { "title": "Network Delay Time", "id": 744, "frontend_id": 743, + "difficulty_lvl": 2, + "acceptance": 0.52483, "videos": [ { "embedded_url": "https://www.youtube.com/embed/EaphyqKU4PQ", @@ -29512,31 +30549,39 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 8 }, { "name": "Amazon", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Find Smallest Letter Greater Than Target", "id": 745, "frontend_id": 744, + "difficulty_lvl": 1, + "acceptance": 0.50922, "videos": [], "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 4 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } ] }, @@ -29544,12 +30589,20 @@ "title": "Prefix and Suffix Search", "id": 746, "frontend_id": 745, - "videos": [] + "rating": 1358, + "difficulty_lvl": 3, + "acceptance": 0.41069, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Min Cost Climbing Stairs", "id": 747, "frontend_id": 746, + "rating": 1358, + "difficulty_lvl": 1, + "acceptance": 0.6389, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ktmzAZWkEZ0", @@ -29559,33 +30612,46 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 5 }, { "name": "Adobe", - "score": 7 + "score": 4 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Largest Number At Least Twice of Others", "id": 748, "frontend_id": 747, - "videos": [] + "rating": 1189, + "difficulty_lvl": 1, + "acceptance": 0.47652, + "videos": [], + "companies": [] }, { "title": "Shortest Completing Word", "id": 749, "frontend_id": 748, + "rating": 1373, + "difficulty_lvl": 1, + "acceptance": 0.59192, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -29593,17 +30659,24 @@ "title": "Contain Virus", "id": 750, "frontend_id": 749, - "videos": [] + "rating": 2277, + "difficulty_lvl": 3, + "acceptance": 0.51044, + "videos": [], + "companies": [] }, { "title": "Number Of Corner Rectangles", "id": 751, "frontend_id": 750, + "rating": 1652, + "difficulty_lvl": 2, + "acceptance": 0.67621, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 1 } ] }, @@ -29611,34 +30684,54 @@ "title": "IP to CIDR", "id": 752, "frontend_id": 751, - "videos": [] + "rating": 2025, + "difficulty_lvl": 2, + "acceptance": 0.54295, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Open the Lock", "id": 753, "frontend_id": 752, + "rating": 1878, + "difficulty_lvl": 2, + "acceptance": 0.55774, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Pzg3bCDY87w", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "python", + "java" ] }, { "title": "Cracking the Safe", "id": 754, "frontend_id": 753, - "videos": [] + "rating": 2274, + "difficulty_lvl": 3, + "acceptance": 0.56075, + "videos": [], + "companies": [] }, { "title": "Reach a Number", "id": 755, "frontend_id": 754, + "rating": 1880, + "difficulty_lvl": 2, + "acceptance": 0.42737, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 5 } ] }, @@ -29646,6 +30739,9 @@ "title": "Pour Water", "id": 756, "frontend_id": 755, + "rating": 1832, + "difficulty_lvl": 2, + "acceptance": 0.46536, "videos": [], "companies": [ { @@ -29658,15 +30754,18 @@ "title": "Pyramid Transition Matrix", "id": 757, "frontend_id": 756, + "rating": 1990, + "difficulty_lvl": 2, + "acceptance": 0.52482, "videos": [], "companies": [ { "name": "Google", - "score": 10 + "score": 2 }, { "name": "Amazon", - "score": 10 + "score": 2 }, { "name": "Airbnb", @@ -29678,17 +30777,24 @@ "title": "Convert Binary Search Tree to Sorted Doubly Linked List", "id": 758, "frontend_id": 426, - "videos": [] + "rating": 1547, + "difficulty_lvl": 2, + "acceptance": 0.64663, + "videos": [], + "companies": [] }, { "title": "Set Intersection Size At Least Two", "id": 759, "frontend_id": 757, + "rating": 2379, + "difficulty_lvl": 3, + "acceptance": 0.439, "videos": [], "companies": [ { "name": "Uber", - "score": 10 + "score": 7 }, { "name": "Drawbridge", @@ -29700,11 +30806,14 @@ "title": "Bold Words in String", "id": 760, "frontend_id": 758, + "rating": 1547, + "difficulty_lvl": 2, + "acceptance": 0.50994, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -29712,17 +30821,24 @@ "title": "Employee Free Time", "id": 761, "frontend_id": 759, - "videos": [] + "rating": 1710, + "difficulty_lvl": 3, + "acceptance": 0.71905, + "videos": [], + "companies": [] }, { "title": "Find Anagram Mappings", "id": 762, "frontend_id": 760, + "rating": 1173, + "difficulty_lvl": 1, + "acceptance": 0.8342, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -29730,17 +30846,25 @@ "title": "Special Binary String", "id": 763, "frontend_id": 761, - "videos": [] + "rating": 2292, + "difficulty_lvl": 3, + "acceptance": 0.6061, + "videos": [], + "companies": [], + "languages": [] }, { "title": "N-ary Tree Level Order Traversal", "id": 764, "frontend_id": 429, + "rating": 1753, + "difficulty_lvl": 2, + "acceptance": 0.7071, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 3 } ] }, @@ -29748,29 +30872,36 @@ "title": "Serialize and Deserialize N-ary Tree", "id": 765, "frontend_id": 428, - "videos": [] + "rating": 1999, + "difficulty_lvl": 3, + "acceptance": 0.66186, + "videos": [], + "companies": [] }, { "title": "Flatten a Multilevel Doubly Linked List", "id": 766, "frontend_id": 430, + "rating": 1249, + "difficulty_lvl": 2, + "acceptance": 0.59697, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 10 + "score": 28 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Oracle", - "score": 1 + "score": 2 } ] }, @@ -29778,18 +30909,25 @@ "title": "Prime Number of Set Bits in Binary Representation", "id": 767, "frontend_id": 762, + "rating": 1383, + "difficulty_lvl": 1, + "acceptance": 0.68411, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } - ] + ], + "languages": [] }, { "title": "Partition Labels", "id": 768, "frontend_id": 763, + "rating": 1443, + "difficulty_lvl": 2, + "acceptance": 0.79745, "videos": [ { "embedded_url": "https://www.youtube.com/embed/B7m8UmZE-vw", @@ -29799,23 +30937,32 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Largest Plus Sign", "id": 769, "frontend_id": 764, + "rating": 1753, + "difficulty_lvl": 2, + "acceptance": 0.48203, "videos": [], "companies": [ { "name": "Uber", - "score": 6 + "score": 3 } ] }, @@ -29823,11 +30970,14 @@ "title": "Couples Holding Hands", "id": 770, "frontend_id": 765, + "rating": 1999, + "difficulty_lvl": 3, + "acceptance": 0.56685, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } ] }, @@ -29835,34 +30985,48 @@ "title": "Encode N-ary Tree to Binary Tree", "id": 771, "frontend_id": 431, - "videos": [] + "rating": 1165, + "difficulty_lvl": 3, + "acceptance": 0.79006, + "videos": [], + "companies": [] }, { "title": "Construct Quad Tree", "id": 772, "frontend_id": 427, + "difficulty_lvl": 2, + "acceptance": 0.74779, "videos": [ { "embedded_url": "https://www.youtube.com/embed/UQ-1sBMV0v4", "channel": "NeetCodeIO" } - ] + ], + "companies": [] }, { "title": "Logical OR of Two Binary Grids Represented as Quad-Trees", "id": 773, "frontend_id": 558, - "videos": [] + "rating": 1815, + "difficulty_lvl": 2, + "acceptance": 0.48894, + "videos": [], + "companies": [] }, { "title": "Maximum Depth of N-ary Tree", "id": 774, "frontend_id": 559, + "rating": 2084, + "difficulty_lvl": 1, + "acceptance": 0.71766, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } ] }, @@ -29870,11 +31034,14 @@ "title": "N-ary Tree Preorder Traversal", "id": 775, "frontend_id": 589, + "rating": 1517, + "difficulty_lvl": 1, + "acceptance": 0.75899, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 3 } ] }, @@ -29882,11 +31049,14 @@ "title": "N-ary Tree Postorder Traversal", "id": 776, "frontend_id": 590, + "rating": 1810, + "difficulty_lvl": 1, + "acceptance": 0.7753, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -29894,15 +31064,18 @@ "title": "Toeplitz Matrix", "id": 777, "frontend_id": 766, + "rating": 1249, + "difficulty_lvl": 1, + "acceptance": 0.68429, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 30 }, { "name": "Bloomberg", - "score": 1 + "score": 3 } ] }, @@ -29910,6 +31083,9 @@ "title": "Reorganize String", "id": 778, "frontend_id": 767, + "rating": 1681, + "difficulty_lvl": 2, + "acceptance": 0.5303, "videos": [ { "embedded_url": "https://www.youtube.com/embed/2g_b1aYTHeg", @@ -29919,49 +31095,58 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 17 }, { "name": "Facebook", - "score": 5 + "score": 9 }, { "name": "Google", - "score": 2 + "score": 4 }, { "name": "eBay", - "score": 2 + "score": 3 }, { "name": "Uber", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 + "score": 2 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Max Chunks To Make Sorted II", "id": 779, "frontend_id": 768, - "videos": [] + "rating": 1788, + "difficulty_lvl": 3, + "acceptance": 0.52776, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Max Chunks To Make Sorted", "id": 780, "frontend_id": 769, + "rating": 1566, + "difficulty_lvl": 2, + "acceptance": 0.58229, "videos": [], "companies": [ { "name": "Wayfair", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -29969,25 +31154,32 @@ "title": "Basic Calculator IV", "id": 781, "frontend_id": 770, - "videos": [] + "rating": 2863, + "difficulty_lvl": 3, + "acceptance": 0.54875, + "videos": [], + "companies": [] }, { "title": "Jewels and Stones", "id": 782, "frontend_id": 771, + "rating": 1165, + "difficulty_lvl": 1, + "acceptance": 0.88279, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Adobe", - "score": 1 + "score": 2 }, { "name": "Google", - "score": 1 + "score": 2 } ] }, @@ -29995,18 +31187,25 @@ "title": "Search in a Binary Search Tree", "id": 783, "frontend_id": 700, + "rating": 1303, + "difficulty_lvl": 1, + "acceptance": 0.78404, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Insert into a Binary Search Tree", "id": 784, "frontend_id": 701, + "rating": 1342, + "difficulty_lvl": 2, + "acceptance": 0.73997, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Cpg8f79luEA", @@ -30016,46 +31215,72 @@ "companies": [ { "name": "LinkedIn", - "score": 10 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Goldman Sachs", - "score": 1 + "score": 2 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Basic Calculator III", "id": 785, "frontend_id": 772, - "videos": [] + "rating": 1625, + "difficulty_lvl": 3, + "acceptance": 0.49165, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Search in a Sorted Array of Unknown Size", "id": 786, "frontend_id": 702, - "videos": [] + "rating": 2169, + "difficulty_lvl": 2, + "acceptance": 0.71564, + "videos": [], + "companies": [] }, { "title": "Sliding Puzzle", "id": 787, "frontend_id": 773, - "videos": [] + "rating": 1815, + "difficulty_lvl": 3, + "acceptance": 0.64274, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Minimize Max Distance to Gas Station", "id": 788, "frontend_id": 774, - "videos": [] + "rating": 2084, + "difficulty_lvl": 3, + "acceptance": 0.51885, + "videos": [], + "companies": [] }, { "title": "Kth Largest Element in a Stream", "id": 789, "frontend_id": 703, + "rating": 1612, + "difficulty_lvl": 1, + "acceptance": 0.56662, "videos": [ { "embedded_url": "https://www.youtube.com/embed/hOjcdrqMoQ8", @@ -30065,35 +31290,44 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Google", - "score": 10 + "score": 4 }, { "name": "Adobe", - "score": 10 + "score": 4 }, { "name": "Facebook", - "score": 6 + "score": 3 }, { "name": "LinkedIn", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Global and Local Inversions", "id": 790, "frontend_id": 775, + "rating": 1517, + "difficulty_lvl": 2, + "acceptance": 0.42809, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -30101,11 +31335,14 @@ "title": "Split BST", "id": 791, "frontend_id": 776, + "rating": 1810, + "difficulty_lvl": 2, + "acceptance": 0.83201, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 3 } ] }, @@ -30113,6 +31350,9 @@ "title": "Binary Search", "id": 792, "frontend_id": 704, + "rating": 1695, + "difficulty_lvl": 1, + "acceptance": 0.56501, "videos": [ { "embedded_url": "https://www.youtube.com/embed/s4DPM8ct1pI", @@ -30122,107 +31362,133 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 13 }, { "name": "Apple", - "score": 4 + "score": 5 }, { "name": "Google", - "score": 3 + "score": 4 }, { "name": "Microsoft", - "score": 3 + "score": 4 }, { "name": "Bloomberg", - "score": 2 - }, - { - "name": "Adobe", - "score": 2 - }, - { - "name": "Facebook", - "score": 1 - }, - { - "name": "Uber", - "score": 1 - }, - { - "name": "Yahoo", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Swap Adjacent in LR String", "id": 793, "frontend_id": 777, - "videos": [] + "rating": 1939, + "difficulty_lvl": 2, + "acceptance": 0.36774, + "videos": [], + "companies": [] }, { "title": "Swim in Rising Water", "id": 794, "frontend_id": 778, + "rating": 2097, + "difficulty_lvl": 3, + "acceptance": 0.6009, "videos": [ { "embedded_url": "https://www.youtube.com/embed/amvrKlMLuGY", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "K-th Symbol in Grammar", "id": 795, "frontend_id": 779, + "rating": 1571, + "difficulty_lvl": 2, + "acceptance": 0.41724, "videos": [], "companies": [ { "name": "Adobe", - "score": 6 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Reaching Points", "id": 796, "frontend_id": 780, - "videos": [] + "rating": 1897, + "difficulty_lvl": 3, + "acceptance": 0.3271, + "videos": [], + "companies": [] }, { "title": "Rabbits in Forest", "id": 797, "frontend_id": 781, + "rating": 1453, + "difficulty_lvl": 2, + "acceptance": 0.54222, "videos": [], "companies": [ { "name": "Adobe", - "score": 6 + "score": 2 }, { "name": "Swiggy", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Transform to Chessboard", "id": 798, "frontend_id": 782, - "videos": [] + "rating": 2430, + "difficulty_lvl": 3, + "acceptance": 0.51413, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Minimum Distance Between BST Nodes", "id": 799, "frontend_id": 783, + "rating": 1303, + "difficulty_lvl": 1, + "acceptance": 0.59469, "videos": [ { "embedded_url": "https://www.youtube.com/embed/joxx4hTYwcw", @@ -30232,23 +31498,29 @@ "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 }, { "name": "Microsoft", - "score": 6 + "score": 2 } + ], + "languages": [ + "python" ] }, { "title": "Letter Case Permutation", "id": 800, "frontend_id": 784, + "rating": 1342, + "difficulty_lvl": 2, + "acceptance": 0.73919, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } ] }, @@ -30256,38 +31528,63 @@ "title": "Is Graph Bipartite?", "id": 801, "frontend_id": 785, - "videos": [] + "rating": 1625, + "difficulty_lvl": 2, + "acceptance": 0.5485, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "K-th Smallest Prime Fraction", "id": 802, "frontend_id": 786, - "videos": [] + "rating": 2169, + "difficulty_lvl": 2, + "acceptance": 0.52503, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Cheapest Flights Within K Stops", "id": 803, "frontend_id": 787, + "rating": 1786, + "difficulty_lvl": 2, + "acceptance": 0.37219, "videos": [ { "embedded_url": "https://www.youtube.com/embed/5eIK3zUdYmE", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Rotated Digits", "id": 804, "frontend_id": 788, + "rating": 1397, + "difficulty_lvl": 2, + "acceptance": 0.56538, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 2 } ] }, @@ -30295,33 +31592,46 @@ "title": "Escape The Ghosts", "id": 805, "frontend_id": 789, + "rating": 1612, + "difficulty_lvl": 2, + "acceptance": 0.61152, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } + ], + "languages": [ + "javascript" ] }, { "title": "Domino and Tromino Tiling", "id": 806, "frontend_id": 790, - "videos": [] + "rating": 1830, + "difficulty_lvl": 2, + "acceptance": 0.52023, + "videos": [], + "companies": [] }, { "title": "Custom Sort String", "id": 807, "frontend_id": 791, + "rating": 1424, + "difficulty_lvl": 2, + "acceptance": 0.68922, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 67 }, { "name": "tiktok", - "score": 1 + "score": 2 } ] }, @@ -30329,15 +31639,18 @@ "title": "Number of Matching Subsequences", "id": 808, "frontend_id": 792, + "rating": 1695, + "difficulty_lvl": 2, + "acceptance": 0.51439, "videos": [], "companies": [ { "name": "Google", - "score": 10 + "score": 15 }, { "name": "Roblox", - "score": 1 + "score": 2 } ] }, @@ -30345,45 +31658,60 @@ "title": "Preimage Size of Factorial Zeroes Function", "id": 809, "frontend_id": 793, - "videos": [] + "rating": 2100, + "difficulty_lvl": 3, + "acceptance": 0.43512, + "videos": [], + "companies": [] }, { "title": "Valid Tic-Tac-Toe State", "id": 810, "frontend_id": 794, - "videos": [] + "rating": 1545, + "difficulty_lvl": 2, + "acceptance": 0.34971, + "videos": [], + "companies": [] }, { "title": "Number of Subarrays with Bounded Maximum", "id": 811, "frontend_id": 795, - "videos": [] + "rating": 1817, + "difficulty_lvl": 2, + "acceptance": 0.52828, + "videos": [], + "companies": [] }, { "title": "Rotate String", "id": 812, "frontend_id": 796, + "rating": 1167, + "difficulty_lvl": 1, + "acceptance": 0.56026, "videos": [], "companies": [ { "name": "Zoom", - "score": 10 + "score": 4 }, { "name": "Goldman Sachs", - "score": 6 + "score": 3 }, { "name": "Apple", - "score": 1 + "score": 2 }, { "name": "LinkedIn", - "score": 1 + "score": 2 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -30391,54 +31719,83 @@ "title": "All Paths From Source to Target", "id": 813, "frontend_id": 797, - "videos": [] + "rating": 1383, + "difficulty_lvl": 2, + "acceptance": 0.82368, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Smallest Rotation with Highest Score", "id": 814, "frontend_id": 798, - "videos": [] + "rating": 2130, + "difficulty_lvl": 3, + "acceptance": 0.50478, + "videos": [], + "companies": [] }, { "title": "Champagne Tower", "id": 815, "frontend_id": 799, + "rating": 1856, + "difficulty_lvl": 2, + "acceptance": 0.51571, "videos": [], "companies": [ { "name": "Uber", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Adobe", - "score": 6 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Design HashSet", "id": 816, "frontend_id": 705, + "rating": 1708, + "difficulty_lvl": 1, + "acceptance": 0.67209, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Microsoft", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Design HashMap", "id": 817, "frontend_id": 706, + "rating": 1429, + "difficulty_lvl": 1, + "acceptance": 0.64492, "videos": [ { "embedded_url": "https://www.youtube.com/embed/cNWsgbKwwoU", @@ -30452,43 +31809,40 @@ }, { "name": "Microsoft", - "score": 5 + "score": 6 }, { "name": "LinkedIn", - "score": 4 + "score": 5 }, { "name": "Oracle", - "score": 2 + "score": 4 }, { "name": "Salesforce", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Goldman Sachs", - "score": 1 - }, - { - "name": "Walmart Global Tech", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Similar RGB Color", "id": 818, "frontend_id": 800, + "rating": 1564, + "difficulty_lvl": 1, + "acceptance": 0.6706, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -30496,34 +31850,52 @@ "title": "Minimum Swaps To Make Sequences Increasing", "id": 819, "frontend_id": 801, - "videos": [] + "rating": 2066, + "difficulty_lvl": 3, + "acceptance": 0.39493, + "videos": [], + "companies": [] }, { "title": "Find Eventual Safe States", "id": 820, "frontend_id": 802, + "rating": 1962, + "difficulty_lvl": 2, + "acceptance": 0.61302, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Re_v0j0CRsg", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "java" ] }, { "title": "Bricks Falling When Hit", "id": 821, "frontend_id": 803, - "videos": [] + "rating": 2765, + "difficulty_lvl": 3, + "acceptance": 0.34484, + "videos": [], + "companies": [] }, { "title": "Unique Morse Code Words", "id": 822, "frontend_id": 804, + "rating": 1308, + "difficulty_lvl": 1, + "acceptance": 0.82651, "videos": [], "companies": [ { "name": "Square", - "score": 6 + "score": 2 } ] }, @@ -30531,27 +31903,38 @@ "title": "Split Array With Same Average", "id": 823, "frontend_id": 805, - "videos": [] + "rating": 1983, + "difficulty_lvl": 3, + "acceptance": 0.25503, + "videos": [], + "companies": [] }, { "title": "Number of Lines To Write String", "id": 824, "frontend_id": 806, - "videos": [] + "rating": 1301, + "difficulty_lvl": 1, + "acceptance": 0.66953, + "videos": [], + "companies": [] }, { "title": "Max Increase to Keep City Skyline", "id": 825, "frontend_id": 807, + "rating": 1376, + "difficulty_lvl": 2, + "acceptance": 0.85963, "videos": [], "companies": [ { "name": "Google", - "score": 10 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 } ] }, @@ -30559,25 +31942,32 @@ "title": "Soup Servings", "id": 826, "frontend_id": 808, - "videos": [] + "rating": 2397, + "difficulty_lvl": 2, + "acceptance": 0.55502, + "videos": [], + "companies": [] }, { "title": "Expressive Words", "id": 827, "frontend_id": 809, + "rating": 1605, + "difficulty_lvl": 2, + "acceptance": 0.46132, "videos": [], "companies": [ { "name": "Cisco", - "score": 10 + "score": 11 }, { "name": "Google", - "score": 2 + "score": 3 }, { "name": "Facebook", - "score": 1 + "score": 2 } ] }, @@ -30585,33 +31975,40 @@ "title": "Chalkboard XOR Game", "id": 828, "frontend_id": 810, - "videos": [] + "rating": 2341, + "difficulty_lvl": 3, + "acceptance": 0.56875, + "videos": [], + "companies": [] }, { "title": "Subdomain Visit Count", "id": 829, "frontend_id": 811, + "rating": 1378, + "difficulty_lvl": 2, + "acceptance": 0.75645, "videos": [], "companies": [ { "name": "Karat", - "score": 10 + "score": 40 }, { "name": "Indeed", - "score": 6 + "score": 25 }, { "name": "Wayfair", - "score": 3 + "score": 9 }, { "name": "Intuit", - "score": 1 + "score": 2 }, { "name": "Walmart Global Tech", - "score": 1 + "score": 2 } ] }, @@ -30619,11 +32016,14 @@ "title": "Largest Triangle Area", "id": 830, "frontend_id": 812, + "rating": 1543, + "difficulty_lvl": 1, + "acceptance": 0.60031, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -30631,21 +32031,28 @@ "title": "Largest Sum of Averages", "id": 831, "frontend_id": 813, - "videos": [] + "rating": 1937, + "difficulty_lvl": 2, + "acceptance": 0.53036, + "videos": [], + "companies": [] }, { "title": "Binary Tree Pruning", "id": 832, "frontend_id": 814, + "rating": 1380, + "difficulty_lvl": 2, + "acceptance": 0.72355, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 4 }, { "name": "Apple", - "score": 1 + "score": 2 } ] }, @@ -30653,17 +32060,25 @@ "title": "Bus Routes", "id": 833, "frontend_id": 815, - "videos": [] + "rating": 1964, + "difficulty_lvl": 3, + "acceptance": 0.45523, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Ambiguous Coordinates", "id": 834, "frontend_id": 816, + "rating": 1708, + "difficulty_lvl": 2, + "acceptance": 0.56405, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -30671,23 +32086,34 @@ "title": "Linked List Components", "id": 835, "frontend_id": 817, - "videos": [] + "rating": 1429, + "difficulty_lvl": 2, + "acceptance": 0.57313, + "videos": [], + "companies": [] }, { "title": "Race Car", "id": 836, "frontend_id": 818, - "videos": [] + "rating": 2392, + "difficulty_lvl": 3, + "acceptance": 0.43488, + "videos": [], + "companies": [] }, { "title": "Most Common Word", "id": 837, "frontend_id": 819, + "rating": 1298, + "difficulty_lvl": 1, + "acceptance": 0.44547, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -30695,21 +32121,32 @@ "title": "Design Linked List", "id": 838, "frontend_id": 707, - "videos": [] + "rating": 1638, + "difficulty_lvl": 2, + "acceptance": 0.27677, + "videos": [], + "companies": [], + "languages": [ + "python", + "java" + ] }, { "title": "Short Encoding of Words", "id": 839, "frontend_id": 820, + "rating": 1632, + "difficulty_lvl": 2, + "acceptance": 0.60533, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "HBO", - "score": 6 + "score": 2 } ] }, @@ -30717,15 +32154,18 @@ "title": "Shortest Distance to a Character", "id": 841, "frontend_id": 821, + "rating": 1266, + "difficulty_lvl": 1, + "acceptance": 0.71308, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 }, { "name": "Apple", - "score": 6 + "score": 2 } ] }, @@ -30733,17 +32173,24 @@ "title": "Card Flipping Game", "id": 842, "frontend_id": 822, - "videos": [] + "rating": 1594, + "difficulty_lvl": 2, + "acceptance": 0.46361, + "videos": [], + "companies": [] }, { "title": "Binary Trees With Factors", "id": 843, "frontend_id": 823, + "rating": 1900, + "difficulty_lvl": 2, + "acceptance": 0.49624, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -30751,17 +32198,27 @@ "title": "Insert into a Sorted Circular Linked List", "id": 850, "frontend_id": 708, - "videos": [] + "rating": 2236, + "difficulty_lvl": 2, + "acceptance": 0.34655, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Goat Latin", "id": 851, "frontend_id": 824, + "rating": 1272, + "difficulty_lvl": 1, + "acceptance": 0.67867, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 5 } ] }, @@ -30769,41 +32226,66 @@ "title": "Friends Of Appropriate Ages", "id": 852, "frontend_id": 825, - "videos": [] + "rating": 1697, + "difficulty_lvl": 2, + "acceptance": 0.46357, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Most Profit Assigning Work", "id": 853, "frontend_id": 826, - "videos": [] + "rating": 1709, + "difficulty_lvl": 2, + "acceptance": 0.45154, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Making A Large Island", "id": 854, "frontend_id": 827, - "videos": [] + "rating": 1934, + "difficulty_lvl": 3, + "acceptance": 0.45389, + "videos": [], + "companies": [] }, { "title": "Count Unique Characters of All Substrings of a Given String", "id": 855, "frontend_id": 828, - "videos": [] + "rating": 2034, + "difficulty_lvl": 3, + "acceptance": 0.51778, + "videos": [], + "companies": [] }, { "title": "Consecutive Numbers Sum", "id": 856, "frontend_id": 829, - "videos": [] + "rating": 1694, + "difficulty_lvl": 3, + "acceptance": 0.41633, + "videos": [], + "companies": [] }, { "title": "Positions of Large Groups", "id": 857, "frontend_id": 830, + "rating": 1252, + "difficulty_lvl": 1, + "acceptance": 0.519, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 3 } ] }, @@ -30811,18 +32293,29 @@ "title": "Masking Personal Information", "id": 858, "frontend_id": 831, - "videos": [] + "rating": 1451, + "difficulty_lvl": 2, + "acceptance": 0.47759, + "videos": [], + "companies": [] }, { "title": "Design Circular Deque", "id": 859, "frontend_id": 641, - "videos": [] + "rating": 1341, + "difficulty_lvl": 2, + "acceptance": 0.5698, + "videos": [], + "companies": [] }, { "title": "Design Circular Queue", "id": 860, "frontend_id": 622, + "rating": 1286, + "difficulty_lvl": 2, + "acceptance": 0.51355, "videos": [ { "embedded_url": "https://www.youtube.com/embed/aBbsfn863oA", @@ -30832,39 +32325,42 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 4 }, { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Microsoft", - "score": 10 + "score": 4 }, { "name": "Airbnb", - "score": 1 + "score": 3 }, { "name": "Nvidia", - "score": 1 - }, - { - "name": "Apple", - "score": 1 + "score": 3 } + ], + "languages": [ + "python", + "java" ] }, { "title": "Flipping an Image", "id": 861, "frontend_id": 832, + "rating": 1243, + "difficulty_lvl": 1, + "acceptance": 0.81071, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 3 } ] }, @@ -30872,43 +32368,64 @@ "title": "Find And Replace in String", "id": 862, "frontend_id": 833, - "videos": [] + "rating": 1461, + "difficulty_lvl": 2, + "acceptance": 0.53869, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Sum of Distances in Tree", "id": 863, "frontend_id": 834, - "videos": [] + "rating": 2197, + "difficulty_lvl": 3, + "acceptance": 0.5913, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Image Overlap", "id": 864, "frontend_id": 835, - "videos": [] + "rating": 1970, + "difficulty_lvl": 2, + "acceptance": 0.63751, + "videos": [], + "companies": [] }, { "title": "Robot Room Cleaner", "id": 865, "frontend_id": 489, - "videos": [] + "rating": 1534, + "difficulty_lvl": 3, + "acceptance": 0.76555, + "videos": [], + "companies": [] }, { "title": "Rectangle Overlap", "id": 866, "frontend_id": 836, + "rating": 1443, + "difficulty_lvl": 1, + "acceptance": 0.44092, "videos": [], "companies": [ { "name": "ServiceNow", - "score": 6 + "score": 2 }, { "name": "Facebook", - "score": 6 + "score": 2 }, { "name": "Docusign", - "score": 6 + "score": 2 } ] }, @@ -30916,12 +32433,19 @@ "title": "New 21 Game", "id": 867, "frontend_id": 837, - "videos": [] + "rating": 2350, + "difficulty_lvl": 2, + "acceptance": 0.45327, + "videos": [], + "companies": [] }, { "title": "Push Dominoes", "id": 868, "frontend_id": 838, + "rating": 1638, + "difficulty_lvl": 2, + "acceptance": 0.57041, "videos": [ { "embedded_url": "https://www.youtube.com/embed/evUFsOb_iLY", @@ -30931,25 +32455,37 @@ "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Similar String Groups", "id": 869, "frontend_id": 839, - "videos": [] + "rating": 2054, + "difficulty_lvl": 3, + "acceptance": 0.54479, + "videos": [], + "companies": [] }, { "title": "Magic Squares In Grid", "id": 870, "frontend_id": 840, + "rating": 1426, + "difficulty_lvl": 2, + "acceptance": 0.3871, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 3 } ] }, @@ -30957,15 +32493,18 @@ "title": "Keys and Rooms", "id": 871, "frontend_id": 841, + "rating": 1412, + "difficulty_lvl": 2, + "acceptance": 0.71934, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 6 }, { "name": "Hotstar", - "score": 1 + "score": 2 } ] }, @@ -30973,23 +32512,34 @@ "title": "Split Array into Fibonacci Sequence", "id": 872, "frontend_id": 842, - "videos": [] + "rating": 1780, + "difficulty_lvl": 2, + "acceptance": 0.38602, + "videos": [], + "companies": [] }, { "title": "Guess the Word", "id": 873, "frontend_id": 843, - "videos": [] + "rating": 2078, + "difficulty_lvl": 3, + "acceptance": 0.40603, + "videos": [], + "companies": [] }, { "title": "Backspace String Compare", "id": 874, "frontend_id": 844, + "rating": 1228, + "difficulty_lvl": 1, + "acceptance": 0.48063, "videos": [], "companies": [ { "name": "IBM", - "score": 10 + "score": 6 }, { "name": "Google", @@ -31006,14 +32556,6 @@ { "name": "Visa", "score": 3 - }, - { - "name": "Bloomberg", - "score": 1 - }, - { - "name": "tiktok", - "score": 1 } ] }, @@ -31021,34 +32563,57 @@ "title": "Longest Mountain in Array", "id": 875, "frontend_id": 845, - "videos": [] + "rating": 1437, + "difficulty_lvl": 2, + "acceptance": 0.40174, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Hand of Straights", "id": 876, "frontend_id": 846, + "rating": 1565, + "difficulty_lvl": 2, + "acceptance": 0.55999, "videos": [ { "embedded_url": "https://www.youtube.com/embed/amnrMCVd2YI", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Shortest Path Visiting All Nodes", "id": 877, "frontend_id": 847, - "videos": [] + "rating": 2201, + "difficulty_lvl": 3, + "acceptance": 0.60694, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Shifting Letters", "id": 878, "frontend_id": 848, + "rating": 1353, + "difficulty_lvl": 2, + "acceptance": 0.44951, "videos": [], "companies": [ { "name": "Oracle", - "score": 6 + "score": 2 } ] }, @@ -31056,11 +32621,14 @@ "title": "Maximize Distance to Closest Person", "id": 879, "frontend_id": 849, + "rating": 1383, + "difficulty_lvl": 2, + "acceptance": 0.47722, "videos": [], "companies": [ { "name": "Yandex", - "score": 10 + "score": 8 }, { "name": "Microsoft", @@ -31068,11 +32636,11 @@ }, { "name": "Google", - "score": 1 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 3 } ] }, @@ -31080,18 +32648,30 @@ "title": "Rectangle Area II", "id": 880, "frontend_id": 850, - "videos": [] + "rating": 2236, + "difficulty_lvl": 3, + "acceptance": 0.54043, + "videos": [], + "companies": [] }, { "title": "Loud and Rich", "id": 881, "frontend_id": 851, - "videos": [] + "rating": 1783, + "difficulty_lvl": 2, + "acceptance": 0.58678, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Peak Index in a Mountain Array", "id": 882, "frontend_id": 852, + "rating": 1182, + "difficulty_lvl": 2, + "acceptance": 0.6903, "videos": [], "companies": [ { @@ -31100,66 +32680,90 @@ }, { "name": "Bloomberg", - "score": 2 + "score": 3 }, { "name": "Apple", - "score": 2 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Car Fleet", "id": 883, "frontend_id": 853, + "rating": 1678, + "difficulty_lvl": 2, + "acceptance": 0.50228, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Pr6T-3yB9RM", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "K-Similar Strings", "id": 884, "frontend_id": 854, - "videos": [] + "rating": 2377, + "difficulty_lvl": 3, + "acceptance": 0.39892, + "videos": [], + "companies": [] }, { "title": "Exam Room", "id": 885, "frontend_id": 855, - "videos": [] + "rating": 2067, + "difficulty_lvl": 2, + "acceptance": 0.43355, + "videos": [], + "companies": [] }, { "title": "Score of Parentheses", "id": 886, "frontend_id": 856, + "rating": 1563, + "difficulty_lvl": 2, + "acceptance": 0.64456, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Facebook", - "score": 10 + "score": 4 }, { "name": "Bloomberg", - "score": 6 + "score": 3 }, { "name": "Infosys", - "score": 1 + "score": 2 }, { "name": "tiktok", - "score": 1 + "score": 2 } ] }, @@ -31167,27 +32771,43 @@ "title": "Minimum Cost to Hire K Workers", "id": 887, "frontend_id": 857, - "videos": [] + "rating": 2260, + "difficulty_lvl": 3, + "acceptance": 0.5263, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/f879mUH6vJk", + "channel": "NeetCodeIO" + } + ], + "companies": [] }, { "title": "Mirror Reflection", "id": 888, "frontend_id": 858, - "videos": [] + "rating": 1881, + "difficulty_lvl": 2, + "acceptance": 0.62855, + "videos": [], + "companies": [] }, { "title": "Buddy Strings", "id": 889, "frontend_id": 859, + "rating": 1341, + "difficulty_lvl": 1, + "acceptance": 0.3287, "videos": [], "companies": [ { "name": "DoorDash", - "score": 10 + "score": 13 }, { "name": "Facebook", - "score": 1 + "score": 2 } ] }, @@ -31195,19 +32815,22 @@ "title": "Lemonade Change", "id": 890, "frontend_id": 860, + "rating": 1286, + "difficulty_lvl": 1, + "acceptance": 0.52993, "videos": [], "companies": [ { "name": "Atlassian", - "score": 10 + "score": 4 }, { "name": "Amazon", - "score": 6 + "score": 3 }, { "name": "Apple", - "score": 1 + "score": 2 } ] }, @@ -31215,11 +32838,19 @@ "title": "Score After Flipping Matrix", "id": 891, "frontend_id": 861, - "videos": [], + "rating": 1818, + "difficulty_lvl": 2, + "acceptance": 0.74853, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/FbhzRA5den8", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Amazon", - "score": 10 + "score": 2 }, { "name": "IIT Bombay", @@ -31231,59 +32862,93 @@ "title": "Shortest Subarray with Sum at Least K", "id": 892, "frontend_id": 862, - "videos": [] + "rating": 2307, + "difficulty_lvl": 3, + "acceptance": 0.25932, + "videos": [], + "companies": [], + "languages": [ + "python" + ] }, { "title": "All Nodes Distance K in Binary Tree", "id": 893, "frontend_id": 863, - "videos": [] + "rating": 1663, + "difficulty_lvl": 2, + "acceptance": 0.63961, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Random Pick with Blacklist", "id": 894, "frontend_id": 710, - "videos": [] + "rating": 1784, + "difficulty_lvl": 3, + "acceptance": 0.33524, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Shortest Path to Get All Keys", "id": 895, "frontend_id": 864, - "videos": [] + "rating": 2259, + "difficulty_lvl": 3, + "acceptance": 0.54274, + "videos": [], + "companies": [] }, { "title": "Smallest Subtree with all the Deepest Nodes", "id": 896, "frontend_id": 865, - "videos": [] + "rating": 1534, + "difficulty_lvl": 2, + "acceptance": 0.69227, + "videos": [], + "companies": [] }, { "title": "Prime Palindrome", "id": 897, "frontend_id": 866, - "videos": [] + "rating": 1938, + "difficulty_lvl": 2, + "acceptance": 0.25758, + "videos": [], + "companies": [] }, { "title": "Transpose Matrix", "id": 898, "frontend_id": 867, + "rating": 1259, + "difficulty_lvl": 1, + "acceptance": 0.65257, "videos": [], "companies": [ { "name": "Apple", - "score": 10 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "Citadel", - "score": 1 + "score": 2 } ] }, @@ -31291,11 +32956,14 @@ "title": "Binary Gap", "id": 899, "frontend_id": 868, + "rating": 1307, + "difficulty_lvl": 1, + "acceptance": 0.6245, "videos": [], "companies": [ { "name": "Twitter", - "score": 6 + "score": "eBay" } ] }, @@ -31303,71 +32971,114 @@ "title": "Reordered Power of 2", "id": 900, "frontend_id": 869, - "videos": [] + "rating": 1505, + "difficulty_lvl": 2, + "acceptance": 0.63197, + "videos": [], + "companies": [] }, { "title": "Advantage Shuffle", "id": 901, "frontend_id": 870, + "rating": 1648, + "difficulty_lvl": 2, + "acceptance": 0.52, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Minimum Number of Refueling Stops", "id": 902, "frontend_id": 871, - "videos": [] + "rating": 2074, + "difficulty_lvl": 3, + "acceptance": 0.3976, + "videos": [], + "companies": [] }, { "title": "Implement Rand10() Using Rand7()", "id": 903, "frontend_id": 470, - "videos": [] + "rating": 2433, + "difficulty_lvl": 2, + "acceptance": 0.46116, + "videos": [], + "companies": [] }, { "title": "Leaf-Similar Trees", "id": 904, "frontend_id": 872, + "rating": 1288, + "difficulty_lvl": 1, + "acceptance": 0.67772, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Length of Longest Fibonacci Subsequence", "id": 905, "frontend_id": 873, - "videos": [] + "rating": 1911, + "difficulty_lvl": 2, + "acceptance": 0.48205, + "videos": [], + "companies": [] }, { "title": "Walking Robot Simulation", "id": 906, "frontend_id": 874, - "videos": [] + "rating": 1846, + "difficulty_lvl": 2, + "acceptance": 0.39262, + "videos": [], + "companies": [] }, { "title": "Koko Eating Bananas", "id": 907, "frontend_id": 875, + "rating": 1766, + "difficulty_lvl": 2, + "acceptance": 0.50549, "videos": [ { "embedded_url": "https://www.youtube.com/embed/U2SozAs9RzA", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Middle of the Linked List", "id": 908, "frontend_id": 876, + "rating": 1232, + "difficulty_lvl": 1, + "acceptance": 0.7634, "videos": [ { "embedded_url": "https://www.youtube.com/embed/A2_ldqM4QcY", @@ -31377,38 +33088,39 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 5 }, { "name": "Adobe", - "score": 7 + "score": 4 }, { "name": "Facebook", - "score": 4 + "score": 3 }, { "name": "Google", - "score": 4 + "score": 3 }, { "name": "Microsoft", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Qualcomm", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Stone Game", "id": 909, "frontend_id": 877, + "rating": 1590, + "difficulty_lvl": 2, + "acceptance": 0.70099, "videos": [ { "embedded_url": "https://www.youtube.com/embed/uhgdXOlGYqE", @@ -31418,83 +33130,97 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } + ], + "languages": [ + "cpp" ] }, { "title": "Nth Magical Number", "id": 910, "frontend_id": 878, - "videos": [] + "rating": 1897, + "difficulty_lvl": 3, + "acceptance": 0.35287, + "videos": [], + "companies": [] }, { "title": "Profitable Schemes", "id": 911, "frontend_id": 879, - "videos": [] + "rating": 2204, + "difficulty_lvl": 3, + "acceptance": 0.49059, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Random Pick with Weight", "id": 912, "frontend_id": 528, + "difficulty_lvl": 2, + "acceptance": 0.46141, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 140 }, { "name": "Google", - "score": 3 + "score": 27 }, { "name": "Uber", - "score": 2 + "score": 13 }, { "name": "Amazon", - "score": 2 + "score": 11 }, { "name": "LinkedIn", - "score": 1 - }, - { - "name": "Twitter", - "score": 1 - }, - { - "name": "Microsoft", - "score": 1 - }, - { - "name": "Apple", - "score": 1 + "score": 8 } - ] + ], + "languages": [] }, { "title": "Random Flip Matrix", "id": 913, "frontend_id": 519, - "videos": [] + "rating": 2567, + "difficulty_lvl": 2, + "acceptance": 0.40338, + "videos": [], + "companies": [] }, { "title": "Random Point in Non-overlapping Rectangles", "id": 914, "frontend_id": 497, - "videos": [] + "rating": 1371, + "difficulty_lvl": 2, + "acceptance": 0.39478, + "videos": [], + "companies": [] }, { "title": "Generate Random Point in a Circle", "id": 915, "frontend_id": 478, + "rating": 1501, + "difficulty_lvl": 2, + "acceptance": 0.39548, "videos": [], "companies": [ { "name": "Leap Motion", - "score": 6 + "score": 1 } ] }, @@ -31502,18 +33228,27 @@ "title": "Decoded String at Index", "id": 916, "frontend_id": 880, + "rating": 2011, + "difficulty_lvl": 2, + "acceptance": 0.28484, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Boats to Save People", "id": 917, "frontend_id": 881, + "rating": 1530, + "difficulty_lvl": 2, + "acceptance": 0.56007, "videos": [ { "embedded_url": "https://www.youtube.com/embed/XbaxWuHIWUs", @@ -31523,71 +33258,85 @@ "companies": [ { "name": "Salesforce", - "score": 10 + "score": 5 }, { "name": "Amazon", - "score": 7 + "score": 4 }, { "name": "Intuit", - "score": 4 + "score": 3 }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "Uber", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Reachable Nodes In Subdivided Graph", "id": 918, "frontend_id": 882, - "videos": [] + "rating": 2328, + "difficulty_lvl": 3, + "acceptance": 0.50077, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Projection Area of 3D Shapes", "id": 919, "frontend_id": 883, - "videos": [] + "rating": 1425, + "difficulty_lvl": 1, + "acceptance": 0.71521, + "videos": [], + "companies": [] }, { "title": "Uncommon Words from Two Sentences", "id": 920, "frontend_id": 884, + "rating": 1259, + "difficulty_lvl": 1, + "acceptance": 0.6649, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Spiral Matrix III", "id": 921, "frontend_id": 885, + "rating": 1678, + "difficulty_lvl": 2, + "acceptance": 0.73966, "videos": [], "companies": [ { "name": "Tesla", - "score": 6 + "score": 2 } ] }, @@ -31595,27 +33344,38 @@ "title": "Possible Bipartition", "id": 922, "frontend_id": 886, - "videos": [] + "rating": 1795, + "difficulty_lvl": 2, + "acceptance": 0.50226, + "videos": [], + "companies": [] }, { "title": "Super Egg Drop", "id": 923, "frontend_id": 887, - "videos": [] + "rating": 2377, + "difficulty_lvl": 3, + "acceptance": 0.27276, + "videos": [], + "companies": [] }, { "title": "Fair Candy Swap", "id": 924, "frontend_id": 888, + "rating": 1334, + "difficulty_lvl": 1, + "acceptance": 0.60916, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Uber", - "score": 6 + "score": 2 } ] }, @@ -31623,17 +33383,24 @@ "title": "Construct Binary Tree from Preorder and Postorder Traversal", "id": 925, "frontend_id": 889, - "videos": [] + "rating": 1732, + "difficulty_lvl": 2, + "acceptance": 0.71209, + "videos": [], + "companies": [] }, { "title": "Find and Replace Pattern", "id": 926, "frontend_id": 890, + "rating": 1414, + "difficulty_lvl": 2, + "acceptance": 0.77268, "videos": [], "companies": [ { "name": "Apple", - "score": 6 + "score": 2 } ] }, @@ -31641,17 +33408,24 @@ "title": "Sum of Subsequence Widths", "id": 927, "frontend_id": 891, - "videos": [] + "rating": 2183, + "difficulty_lvl": 3, + "acceptance": 0.36949, + "videos": [], + "companies": [] }, { "title": "Surface Area of 3D Shapes", "id": 928, "frontend_id": 892, + "rating": 1508, + "difficulty_lvl": 1, + "acceptance": 0.64422, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -31659,29 +33433,44 @@ "title": "Groups of Special-Equivalent Strings", "id": 929, "frontend_id": 893, + "rating": 1590, + "difficulty_lvl": 2, + "acceptance": 0.71203, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 1 } - ] + ], + "languages": [] }, { "title": "All Possible Full Binary Trees", "id": 930, "frontend_id": 894, + "rating": 1784, + "difficulty_lvl": 2, + "acceptance": 0.82779, "videos": [ { "embedded_url": "https://www.youtube.com/embed/nZtrZPTTCAo", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "python", + "java" ] }, { "title": "Maximum Frequency Stack", "id": 931, "frontend_id": 895, + "rating": 2028, + "difficulty_lvl": 3, + "acceptance": 0.66546, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Z6idIicFDOE", @@ -31691,63 +33480,63 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 5 }, { "name": "Apple", - "score": 7 + "score": 4 }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "LinkedIn", - "score": 1 + "score": 2 }, { "name": "Facebook", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "Twitter", - "score": 1 - }, - { - "name": "MindTickle", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript" ] }, { "title": "Monotonic Array", "id": 932, "frontend_id": 896, + "rating": 1259, + "difficulty_lvl": 1, + "acceptance": 0.58526, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 12 }, { "name": "Amazon", - "score": 1 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Increasing Order Search Tree", "id": 933, "frontend_id": 897, + "rating": 1473, + "difficulty_lvl": 1, + "acceptance": 0.78282, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 } ] }, @@ -31755,23 +33544,34 @@ "title": "Bitwise ORs of Subarrays", "id": 934, "frontend_id": 898, - "videos": [] + "rating": 2133, + "difficulty_lvl": 2, + "acceptance": 0.37723, + "videos": [], + "companies": [] }, { "title": "Orderly Queue", "id": 935, "frontend_id": 899, - "videos": [] + "rating": 2097, + "difficulty_lvl": 3, + "acceptance": 0.66031, + "videos": [], + "companies": [] }, { "title": "RLE Iterator", "id": 936, "frontend_id": 900, + "rating": 1532, + "difficulty_lvl": 2, + "acceptance": 0.59374, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 3 } ] }, @@ -31779,6 +33579,9 @@ "title": "Online Stock Span", "id": 937, "frontend_id": 901, + "rating": 1709, + "difficulty_lvl": 2, + "acceptance": 0.65426, "videos": [ { "embedded_url": "https://www.youtube.com/embed/slYh0ZNEqSw", @@ -31788,34 +33591,51 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 6 }, { "name": "Bloomberg", - "score": 1 + "score": 2 }, { "name": "Adobe", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Numbers At Most N Given Digit Set", "id": 938, "frontend_id": 902, - "videos": [] + "rating": 1990, + "difficulty_lvl": 3, + "acceptance": 0.41844, + "videos": [], + "companies": [] }, { "title": "Valid Permutations for DI Sequence", "id": 939, "frontend_id": 903, - "videos": [] + "rating": 2433, + "difficulty_lvl": 3, + "acceptance": 0.57542, + "videos": [], + "companies": [] }, { "title": "Fruit Into Baskets", "id": 940, "frontend_id": 904, + "rating": 1516, + "difficulty_lvl": 2, + "acceptance": 0.43737, "videos": [ { "embedded_url": "https://www.youtube.com/embed/yYtaV0G3mWQ", @@ -31825,67 +33645,114 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 4 } + ], + "languages": [ + "javascript", + "python", + "java" ] }, { "title": "Sort Array By Parity", "id": 941, "frontend_id": 905, - "videos": [] + "rating": 1178, + "difficulty_lvl": 1, + "acceptance": 0.75497, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Super Palindromes", "id": 942, "frontend_id": 906, - "videos": [] + "rating": 2140, + "difficulty_lvl": 3, + "acceptance": 0.389, + "videos": [], + "companies": [] }, { "title": "Sum of Subarray Minimums", "id": 943, "frontend_id": 907, - "videos": [] + "rating": 1976, + "difficulty_lvl": 2, + "acceptance": 0.35385, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Smallest Range I", "id": 944, "frontend_id": 908, + "rating": 1299, + "difficulty_lvl": 1, + "acceptance": 0.68693, "videos": [], "companies": [ { "name": "Adobe", - "score": 6 + "score": 1 } - ] + ], + "languages": [] }, { "title": "Snakes and Ladders", "id": 945, "frontend_id": 909, + "rating": 2020, + "difficulty_lvl": 2, + "acceptance": 0.44596, "videos": [ { "embedded_url": "https://www.youtube.com/embed/6lH4nO3JfLk", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "python", + "java" ] }, { "title": "Smallest Range II", "id": 946, "frontend_id": 910, - "videos": [] + "rating": 2135, + "difficulty_lvl": 2, + "acceptance": 0.35547, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Online Election", "id": 947, "frontend_id": 911, - "videos": [] + "rating": 2001, + "difficulty_lvl": 2, + "acceptance": 0.51956, + "videos": [], + "companies": [] }, { "title": "Sort an Array", "id": 948, "frontend_id": 912, + "rating": 1762, + "difficulty_lvl": 2, + "acceptance": 0.58385, "videos": [ { "embedded_url": "https://www.youtube.com/embed/MsYZSinhuFo", @@ -31895,29 +33762,42 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Cat and Mouse", "id": 949, "frontend_id": 913, - "videos": [] + "rating": 2567, + "difficulty_lvl": 3, + "acceptance": 0.34483, + "videos": [], + "companies": [] }, { "title": "X of a Kind in a Deck of Cards", "id": 950, "frontend_id": 914, + "rating": 1371, + "difficulty_lvl": 1, + "acceptance": 0.30607, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -31925,75 +33805,110 @@ "title": "Partition Array into Disjoint Intervals", "id": 951, "frontend_id": 915, - "videos": [] + "rating": 1501, + "difficulty_lvl": 2, + "acceptance": 0.4848, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Word Subsets", "id": 952, "frontend_id": 916, - "videos": [] + "rating": 1624, + "difficulty_lvl": 2, + "acceptance": 0.5315, + "videos": [], + "companies": [] }, { "title": "Reverse Only Letters", "id": 953, "frontend_id": 917, + "rating": 1229, + "difficulty_lvl": 1, + "acceptance": 0.6268, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Maximum Sum Circular Subarray", "id": 954, "frontend_id": 918, + "rating": 1777, + "difficulty_lvl": 2, + "acceptance": 0.435, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 6 }, { "name": "Google", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "java" ] }, { "title": "Complete Binary Tree Inserter", "id": 955, "frontend_id": 919, - "videos": [] + "rating": 1691, + "difficulty_lvl": 2, + "acceptance": 0.6457, + "videos": [], + "companies": [] }, { "title": "Number of Music Playlists", "id": 956, "frontend_id": 920, - "videos": [] + "rating": 2400, + "difficulty_lvl": 3, + "acceptance": 0.61296, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Minimum Add to Make Parentheses Valid", "id": 957, "frontend_id": 921, + "rating": 1242, + "difficulty_lvl": 2, + "acceptance": 0.75322, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 100 }, { "name": "Microsoft", - "score": 1 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 3 }, { "name": "Twitter", - "score": 1 + "score": 2 } ] }, @@ -32001,27 +33916,34 @@ "title": "Sort Array By Parity II", "id": 958, "frontend_id": 922, + "rating": 1174, + "difficulty_lvl": 1, + "acceptance": 0.70559, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } - ] + ], + "languages": [] }, { "title": "3Sum With Multiplicity", "id": 959, "frontend_id": 923, + "rating": 1711, + "difficulty_lvl": 2, + "acceptance": 0.45271, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Adobe", - "score": 6 + "score": 2 } ] }, @@ -32029,17 +33951,24 @@ "title": "Minimize Malware Spread", "id": 960, "frontend_id": 924, - "videos": [] + "rating": 1869, + "difficulty_lvl": 3, + "acceptance": 0.42068, + "videos": [], + "companies": [] }, { "title": "Long Pressed Name", "id": 961, "frontend_id": 925, + "rating": 1271, + "difficulty_lvl": 1, + "acceptance": 0.32786, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -32047,24 +33976,42 @@ "title": "Flip String to Monotone Increasing", "id": 962, "frontend_id": 926, - "videos": [] + "rating": 1602, + "difficulty_lvl": 2, + "acceptance": 0.61433, + "videos": [], + "companies": [], + "languages": [ + "javascript" + ] }, { "title": "Three Equal Parts", "id": 963, "frontend_id": 927, - "videos": [] + "rating": 1994, + "difficulty_lvl": 3, + "acceptance": 0.39582, + "videos": [], + "companies": [] }, { "title": "Minimize Malware Spread II", "id": 964, "frontend_id": 928, - "videos": [] + "rating": 1985, + "difficulty_lvl": 3, + "acceptance": 0.42835, + "videos": [], + "companies": [] }, { "title": "Unique Email Addresses", "id": 965, "frontend_id": 929, + "rating": 1199, + "difficulty_lvl": 1, + "acceptance": 0.67027, "videos": [ { "embedded_url": "https://www.youtube.com/embed/TC_xLIWl7qY", @@ -32076,41 +34023,65 @@ "name": "Intuit", "score": 6 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Binary Subarrays With Sum", "id": 966, "frontend_id": 930, - "videos": [] + "rating": 1592, + "difficulty_lvl": 2, + "acceptance": 0.54005, + "videos": [], + "companies": [] }, { "title": "Minimum Falling Path Sum", "id": 967, "frontend_id": 931, + "rating": 1573, + "difficulty_lvl": 2, + "acceptance": 0.66774, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } + ], + "languages": [ + "python", + "java" ] }, { "title": "Beautiful Array", "id": 968, "frontend_id": 932, - "videos": [] + "rating": 2294, + "difficulty_lvl": 2, + "acceptance": 0.65329, + "videos": [], + "companies": [] }, { "title": "Number of Recent Calls", "id": 969, "frontend_id": 933, + "rating": 1338, + "difficulty_lvl": 1, + "acceptance": 0.73359, "videos": [], "companies": [ { "name": "Yandex", - "score": 10 + "score": 3 }, { "name": "Bloomberg", @@ -32122,17 +34093,27 @@ "title": "Shortest Bridge", "id": 971, "frontend_id": 934, + "rating": 1826, + "difficulty_lvl": 2, + "acceptance": 0.5773, "videos": [ { "embedded_url": "https://www.youtube.com/embed/gkINMhbbIbU", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "javascript" ] }, { "title": "Knight Dialer", "id": 972, "frontend_id": 935, + "rating": 1690, + "difficulty_lvl": 2, + "acceptance": 0.51023, "videos": [], "companies": [ { @@ -32145,87 +34126,120 @@ }, { "name": "Amazon", - "score": 2 + "score": 3 }, { "name": "Twilio", - "score": 1 + "score": 2 }, { "name": "Microsoft", - "score": 1 - }, - { - "name": "Snapchat", - "score": 1 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Stamping The Sequence", "id": 973, "frontend_id": 936, - "videos": [] + "rating": 2583, + "difficulty_lvl": 3, + "acceptance": 0.62665, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Reorder Data in Log Files", "id": 974, "frontend_id": 937, - "videos": [] + "rating": 1387, + "difficulty_lvl": 2, + "acceptance": 0.56345, + "videos": [], + "companies": [], + "languages": [ + "javascript" + ] }, { "title": "Range Sum of BST", "id": 975, "frontend_id": 938, + "rating": 1335, + "difficulty_lvl": 1, + "acceptance": 0.85878, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 149 }, { "name": "Amazon", - "score": 1 + "score": 4 }, { "name": "Apple", - "score": 1 + "score": 3 } + ], + "languages": [ + "java" ] }, { "title": "Minimum Area Rectangle", "id": 976, "frontend_id": 939, - "videos": [] + "rating": 1752, + "difficulty_lvl": 2, + "acceptance": 0.53025, + "videos": [], + "companies": [] }, { "title": "Distinct Subsequences II", "id": 977, "frontend_id": 940, - "videos": [] + "rating": 1985, + "difficulty_lvl": 3, + "acceptance": 0.4335, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Valid Mountain Array", "id": 978, "frontend_id": 941, + "rating": 1208, + "difficulty_lvl": 1, + "acceptance": 0.33342, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } - ] + ], + "languages": [] }, { "title": "DI String Match", "id": 979, "frontend_id": 942, + "rating": 1444, + "difficulty_lvl": 1, + "acceptance": 0.77692, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } ] }, @@ -32233,73 +34247,119 @@ "title": "Find the Shortest Superstring", "id": 980, "frontend_id": 943, - "videos": [] + "rating": 2186, + "difficulty_lvl": 3, + "acceptance": 0.44048, + "videos": [], + "companies": [] }, { "title": "Delete Columns to Make Sorted", "id": 981, "frontend_id": 944, + "rating": 1396, + "difficulty_lvl": 1, + "acceptance": 0.74665, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } - ] + ], + "languages": [] }, { "title": "Minimum Increment to Make Array Unique", "id": 982, "frontend_id": 945, - "videos": [] + "rating": 1448, + "difficulty_lvl": 2, + "acceptance": 0.51663, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/XPPs2Wj2YSk", + "channel": "NeetCodeIO" + } + ], + "companies": [] }, { "title": "Validate Stack Sequences", "id": 983, "frontend_id": 946, + "rating": 1462, + "difficulty_lvl": 2, + "acceptance": 0.69387, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "tiktok", - "score": 1 + "score": 2 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Most Stones Removed with Same Row or Column", "id": 984, "frontend_id": 947, - "videos": [] + "rating": 2035, + "difficulty_lvl": 2, + "acceptance": 0.58861, + "videos": [], + "companies": [] }, { "title": "Bag of Tokens", "id": 985, "frontend_id": 948, - "videos": [] + "rating": 1762, + "difficulty_lvl": 2, + "acceptance": 0.52142, + "videos": [], + "companies": [] }, { "title": "Largest Time for Given Digits", "id": 986, "frontend_id": 949, - "videos": [] + "rating": 1495, + "difficulty_lvl": 2, + "acceptance": 0.35104, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Reveal Cards In Increasing Order", "id": 987, "frontend_id": 950, - "videos": [], + "rating": 1686, + "difficulty_lvl": 2, + "acceptance": 0.77848, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/i2QrUdwWlak", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Adobe", - "score": 6 + "score": 2 } ] }, @@ -32307,6 +34367,9 @@ "title": "Flip Equivalent Binary Trees", "id": 988, "frontend_id": 951, + "rating": 1477, + "difficulty_lvl": 2, + "acceptance": 0.66817, "videos": [ { "embedded_url": "https://www.youtube.com/embed/izRDc1il9Pk", @@ -32316,49 +34379,68 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Largest Component Size by Common Factor", "id": 989, "frontend_id": 952, - "videos": [] + "rating": 2272, + "difficulty_lvl": 3, + "acceptance": 0.40233, + "videos": [], + "companies": [] }, { "title": "Verifying an Alien Dictionary", "id": 990, "frontend_id": 953, + "rating": 1300, + "difficulty_lvl": 1, + "acceptance": 0.54575, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 21 }, { "name": "Uber", - "score": 2 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "LinkedIn", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Array of Doubled Pairs", "id": 991, "frontend_id": 954, + "rating": 1548, + "difficulty_lvl": 2, + "acceptance": 0.39086, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 3 } ] }, @@ -32366,30 +34448,45 @@ "title": "Delete Columns to Make Sorted II", "id": 992, "frontend_id": 955, - "videos": [] + "rating": 1876, + "difficulty_lvl": 2, + "acceptance": 0.3483, + "videos": [], + "companies": [] }, { "title": "Tallest Billboard", "id": 993, "frontend_id": 956, - "videos": [] + "rating": 2381, + "difficulty_lvl": 3, + "acceptance": 0.52692, + "videos": [], + "companies": [] }, { "title": "Prison Cells After N Days", "id": 994, "frontend_id": 957, + "rating": 1392, + "difficulty_lvl": 2, + "acceptance": 0.39018, "videos": [], "companies": [ { "name": "SAP", - "score": 6 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Check Completeness of a Binary Tree", "id": 998, "frontend_id": 958, + "rating": 1703, + "difficulty_lvl": 2, + "acceptance": 0.56258, "videos": [ { "embedded_url": "https://www.youtube.com/embed/olbiZ-EOSig", @@ -32399,31 +34496,45 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 11 } + ], + "languages": [ + "cpp" ] }, { "title": "Regions Cut By Slashes", "id": 999, "frontend_id": 959, - "videos": [] + "rating": 2136, + "difficulty_lvl": 2, + "acceptance": 0.69235, + "videos": [], + "companies": [] }, { "title": "Delete Columns to Make Sorted III", "id": 1000, "frontend_id": 960, - "videos": [] + "rating": 2247, + "difficulty_lvl": 3, + "acceptance": 0.57149, + "videos": [], + "companies": [] }, { "title": "N-Repeated Element in Size 2N Array", "id": 1001, "frontend_id": 961, + "rating": 1162, + "difficulty_lvl": 1, + "acceptance": 0.76198, "videos": [], "companies": [ { "name": "Akamai", - "score": 6 + "score": 1 } ] }, @@ -32431,29 +34542,44 @@ "title": "Maximum Width Ramp", "id": 1002, "frontend_id": 962, - "videos": [] + "rating": 1608, + "difficulty_lvl": 2, + "acceptance": 0.49008, + "videos": [], + "companies": [] }, { "title": "Minimum Area Rectangle II", "id": 1003, "frontend_id": 963, - "videos": [] + "rating": 1991, + "difficulty_lvl": 2, + "acceptance": 0.54662, + "videos": [], + "companies": [] }, { "title": "Least Operators to Express Number", "id": 1004, "frontend_id": 964, - "videos": [] + "rating": 2594, + "difficulty_lvl": 3, + "acceptance": 0.4805, + "videos": [], + "companies": [] }, { "title": "Univalued Binary Tree", "id": 1005, "frontend_id": 965, + "rating": 1178, + "difficulty_lvl": 1, + "acceptance": 0.70044, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 3 } ] }, @@ -32461,11 +34587,14 @@ "title": "Vowel Spellchecker", "id": 1006, "frontend_id": 966, + "rating": 1795, + "difficulty_lvl": 2, + "acceptance": 0.51315, "videos": [], "companies": [ { "name": "Thumbtack", - "score": 6 + "score": 1 } ] }, @@ -32473,29 +34602,44 @@ "title": "Numbers With Same Consecutive Differences", "id": 1007, "frontend_id": 967, - "videos": [] + "rating": 1433, + "difficulty_lvl": 2, + "acceptance": 0.57555, + "videos": [], + "companies": [] }, { "title": "Binary Tree Cameras", "id": 1008, "frontend_id": 968, - "videos": [] + "rating": 2124, + "difficulty_lvl": 3, + "acceptance": 0.46525, + "videos": [], + "companies": [] }, { "title": "Pancake Sorting", "id": 1009, "frontend_id": 969, - "videos": [] + "rating": 1591, + "difficulty_lvl": 2, + "acceptance": 0.70311, + "videos": [], + "companies": [] }, { "title": "Powerful Integers", "id": 1010, "frontend_id": 970, + "rating": 1339, + "difficulty_lvl": 2, + "acceptance": 0.43675, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -32503,18 +34647,30 @@ "title": "Flip Binary Tree To Match Preorder Traversal", "id": 1011, "frontend_id": 971, - "videos": [] + "rating": 1787, + "difficulty_lvl": 2, + "acceptance": 0.50159, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Equal Rational Numbers", "id": 1012, "frontend_id": 972, - "videos": [] + "rating": 2121, + "difficulty_lvl": 3, + "acceptance": 0.43304, + "videos": [], + "companies": [] }, { "title": "Fibonacci Number", "id": 1013, "frontend_id": 509, + "rating": 1379, + "difficulty_lvl": 1, + "acceptance": 0.70169, "videos": [], "companies": [ { @@ -32523,42 +34679,33 @@ }, { "name": "Microsoft", - "score": 3 + "score": 4 }, { "name": "Adobe", - "score": 3 + "score": 4 }, { "name": "Apple", - "score": 3 + "score": 4 }, { "name": "Facebook", - "score": 2 - }, - { - "name": "Oracle", - "score": 2 - }, - { - "name": "Goldman Sachs", - "score": 2 - }, - { - "name": "Zoom", - "score": 2 - }, - { - "name": "Google", - "score": 1 + "score": 3 } + ], + "languages": [ + "python", + "cpp" ] }, { "title": "K Closest Points to Origin", "id": 1014, "frontend_id": 973, + "rating": 1214, + "difficulty_lvl": 2, + "acceptance": 0.65792, "videos": [ { "embedded_url": "https://www.youtube.com/embed/rI2EBUEMfTk", @@ -32568,55 +34715,61 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 127 }, { "name": "Amazon", - "score": 4 + "score": 49 }, { "name": "Microsoft", - "score": 1 + "score": 6 }, { "name": "Asana", - "score": 1 + "score": 5 }, { "name": "Google", - "score": 1 - }, - { - "name": "LinkedIn", - "score": 1 - }, - { - "name": "Sumologic", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Subarray Sums Divisible by K", "id": 1016, "frontend_id": 974, - "videos": [], + "rating": 1676, + "difficulty_lvl": 2, + "acceptance": 0.53991, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/bcXy-T4Sc3E", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Twilio", - "score": 6 + "score": 3 }, { "name": "Amazon", - "score": 6 + "score": 3 }, { "name": "Facebook", - "score": 6 + "score": 3 }, { "name": "Snapchat", - "score": 6 + "score": 3 } ] }, @@ -32624,17 +34777,24 @@ "title": "Odd Even Jump", "id": 1017, "frontend_id": 975, - "videos": [] + "rating": 2079, + "difficulty_lvl": 3, + "acceptance": 0.39165, + "videos": [], + "companies": [] }, { "title": "Largest Perimeter Triangle", "id": 1018, "frontend_id": 976, + "rating": 1341, + "difficulty_lvl": 1, + "acceptance": 0.54893, "videos": [], "companies": [ { "name": "Tesla", - "score": 6 + "score": 3 } ] }, @@ -32642,6 +34802,9 @@ "title": "Squares of a Sorted Array", "id": 1019, "frontend_id": 977, + "rating": 1130, + "difficulty_lvl": 1, + "acceptance": 0.71802, "videos": [ { "embedded_url": "https://www.youtube.com/embed/FPCZsG_AkUg", @@ -32651,58 +34814,79 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 29 }, { "name": "Amazon", - "score": 5 + "score": 13 }, { "name": "Google", - "score": 2 + "score": 5 }, { "name": "Microsoft", - "score": 2 + "score": 5 }, { "name": "Paypal", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Longest Turbulent Subarray", "id": 1020, "frontend_id": 978, + "rating": 1393, + "difficulty_lvl": 2, + "acceptance": 0.47226, "videos": [ { "embedded_url": "https://www.youtube.com/embed/V_iHUhR8Dek", "channel": "NeetCodeIO" } + ], + "companies": [], + "languages": [ + "python" ] }, { "title": "Distribute Coins in Binary Tree", "id": 1021, "frontend_id": 979, - "videos": [], + "rating": 1709, + "difficulty_lvl": 2, + "acceptance": 0.72342, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/YfdfIOeV_RU", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Microsoft", - "score": 10 + "score": 4 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Apple", - "score": 1 + "score": 2 }, { "name": "PhonePe", - "score": 1 + "score": 2 } ] }, @@ -32710,15 +34894,18 @@ "title": "Unique Paths III", "id": 1022, "frontend_id": 980, + "rating": 1830, + "difficulty_lvl": 3, + "acceptance": 0.81645, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Facebook", - "score": 1 + "score": 2 } ] }, @@ -32726,6 +34913,9 @@ "title": "Time Based Key-Value Store", "id": 1023, "frontend_id": 981, + "rating": 1575, + "difficulty_lvl": 2, + "acceptance": 0.50969, "videos": [ { "embedded_url": "https://www.youtube.com/embed/fu2cD_6E8Hw", @@ -32735,7 +34925,7 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 9 }, { "name": "Lyft", @@ -32743,54 +34933,75 @@ }, { "name": "Microsoft", - "score": 4 + "score": 5 }, { "name": "Google", - "score": 2 + "score": 4 }, { "name": "Oracle", - "score": 1 - }, - { - "name": "tiktok", - "score": 1 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Triples with Bitwise AND Equal To Zero", "id": 1024, "frontend_id": 982, - "videos": [] + "rating": 2085, + "difficulty_lvl": 3, + "acceptance": 0.57803, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Minimum Cost For Tickets", "id": 1025, "frontend_id": 983, + "rating": 1786, + "difficulty_lvl": 2, + "acceptance": 0.65644, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4pY1bsBpIY4", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "cpp" ] }, { "title": "String Without AAA or BBB", "id": 1026, "frontend_id": 984, - "videos": [] + "rating": 1474, + "difficulty_lvl": 2, + "acceptance": 0.43402, + "videos": [], + "companies": [] }, { "title": "Sum of Even Numbers After Queries", "id": 1027, "frontend_id": 985, + "rating": 1198, + "difficulty_lvl": 2, + "acceptance": 0.68026, "videos": [], "companies": [ { "name": "Indeed", - "score": 6 + "score": 1 } ] }, @@ -32798,45 +35009,64 @@ "title": "Interval List Intersections", "id": 1028, "frontend_id": 986, - "videos": [] + "rating": 1542, + "difficulty_lvl": 2, + "acceptance": 0.7128, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Vertical Order Traversal of a Binary Tree", "id": 1029, "frontend_id": 987, + "rating": 1676, + "difficulty_lvl": 3, + "acceptance": 0.45878, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 82 }, { "name": "Amazon", - "score": 2 + "score": 10 }, { "name": "Bloomberg", - "score": 2 + "score": 7 }, { "name": "Microsoft", - "score": 1 + "score": 6 }, { "name": "Uber", - "score": 1 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Smallest String Starting From Leaf", "id": 1030, "frontend_id": 988, - "videos": [], + "rating": 1429, + "difficulty_lvl": 2, + "acceptance": 0.50597, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/UvdWfxQ_ZDs", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Apple", - "score": 6 + "score": 2 } ] }, @@ -32844,6 +35074,9 @@ "title": "Add to Array-Form of Integer", "id": 1031, "frontend_id": 989, + "rating": 1235, + "difficulty_lvl": 1, + "acceptance": 0.46414, "videos": [ { "embedded_url": "https://www.youtube.com/embed/eBTZQt1TWfk", @@ -32853,25 +35086,35 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 } + ], + "languages": [ + "javascript" ] }, { "title": "Satisfiability of Equality Equations", "id": 1032, "frontend_id": 990, - "videos": [] + "rating": 1638, + "difficulty_lvl": 2, + "acceptance": 0.50485, + "videos": [], + "companies": [] }, { "title": "Broken Calculator", "id": 1033, "frontend_id": 991, + "rating": 1909, + "difficulty_lvl": 2, + "acceptance": 0.54227, "videos": [], "companies": [ { "name": "Arcesium", - "score": 6 + "score": 2 } ] }, @@ -32879,25 +35122,32 @@ "title": "Subarrays with K Different Integers", "id": 1034, "frontend_id": 992, - "videos": [] + "rating": 2210, + "difficulty_lvl": 3, + "acceptance": 0.55454, + "videos": [], + "companies": [] }, { "title": "Cousins in Binary Tree", "id": 1035, "frontend_id": 993, + "rating": 1288, + "difficulty_lvl": 1, + "acceptance": 0.5504, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Facebook", - "score": 1 + "score": 2 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -32905,6 +35155,9 @@ "title": "Rotting Oranges", "id": 1036, "frontend_id": 994, + "rating": 1433, + "difficulty_lvl": 2, + "acceptance": 0.53368, "videos": [ { "embedded_url": "https://www.youtube.com/embed/y704fEOx0s0", @@ -32914,73 +35167,103 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 35 }, { "name": "Microsoft", - "score": 4 + "score": 12 }, { "name": "VMware", - "score": 2 + "score": 4 }, { "name": "LinkedIn", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Minimum Number of K Consecutive Bit Flips", "id": 1037, "frontend_id": 995, - "videos": [] + "rating": 1835, + "difficulty_lvl": 3, + "acceptance": 0.51318, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/Fv3M9uO5ovU", + "channel": "NeetCodeIO" + } + ], + "companies": [] }, { "title": "Number of Squareful Arrays", "id": 1038, "frontend_id": 996, - "videos": [] + "rating": 1932, + "difficulty_lvl": 3, + "acceptance": 0.4913, + "videos": [], + "companies": [] }, { "title": "Find the Town Judge", "id": 1039, "frontend_id": 997, + "rating": 1202, + "difficulty_lvl": 1, + "acceptance": 0.49338, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Apple", - "score": 6 + "score": 2 }, { "name": "Adobe", - "score": 6 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Maximum Binary Tree II", "id": 1040, "frontend_id": 998, - "videos": [] + "rating": 1498, + "difficulty_lvl": 2, + "acceptance": 0.67789, + "videos": [], + "companies": [] }, { "title": "Available Captures for Rook", "id": 1041, "frontend_id": 999, + "rating": 1318, + "difficulty_lvl": 1, + "acceptance": 0.68351, "videos": [], "companies": [ { "name": "Square", - "score": 6 + "score": 2 } ] }, @@ -32988,23 +35271,39 @@ "title": "Minimum Cost to Merge Stones", "id": 1042, "frontend_id": 1000, - "videos": [] + "rating": 2423, + "difficulty_lvl": 3, + "acceptance": 0.42651, + "videos": [], + "companies": [] }, { "title": "Grid Illumination", "id": 1043, "frontend_id": 1001, - "videos": [] + "rating": 1873, + "difficulty_lvl": 3, + "acceptance": 0.36343, + "videos": [], + "companies": [] }, { "title": "Find Common Characters", "id": 1044, "frontend_id": 1002, - "videos": [], + "rating": 1280, + "difficulty_lvl": 1, + "acceptance": 0.68518, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/QEESBA2Q_88", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Amazon", - "score": 6 + "score": 4 } ] }, @@ -33012,59 +35311,61 @@ "title": "Check If Word Is Valid After Substitutions", "id": 1045, "frontend_id": 1003, + "difficulty_lvl": 2, + "acceptance": 0.58623, "videos": [], "companies": [ { "name": "Nutanix", - "score": 6 + "score": 1 } - ] + ], + "rating": 1427 }, { "title": "Max Consecutive Ones III", "id": 1046, "frontend_id": 1004, + "rating": 1656, + "difficulty_lvl": 2, + "acceptance": 0.62985, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 26 }, { "name": "Microsoft", - "score": 1 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "ByteDance", - "score": 1 - }, - { - "name": "Apple", - "score": 1 - }, - { - "name": "Bloomberg", - "score": 1 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Maximize Sum Of Array After K Negations", "id": 1047, "frontend_id": 1005, + "rating": 1275, + "difficulty_lvl": 1, + "acceptance": 0.50808, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 2 }, { "name": "Druva", @@ -33076,58 +35377,77 @@ "title": "Clumsy Factorial", "id": 1048, "frontend_id": 1006, - "videos": [] + "rating": 1408, + "difficulty_lvl": 2, + "acceptance": 0.5613, + "videos": [], + "companies": [] }, { "title": "Minimum Domino Rotations For Equal Row", "id": 1049, "frontend_id": 1007, + "rating": 1541, + "difficulty_lvl": 2, + "acceptance": 0.52239, "videos": [ { "embedded_url": "https://www.youtube.com/embed/VD9NACqBCw4", "channel": "NeetCode" } - ] + ], + "companies": [], + "languages": [] }, { "title": "Construct Binary Search Tree from Preorder Traversal", "id": 1050, "frontend_id": 1008, + "difficulty_lvl": 2, + "acceptance": 0.81513, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Microsoft", - "score": 6 + "score": 3 }, { "name": "Facebook", - "score": 1 + "score": 2 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } - ] + ], + "rating": 1563 }, { "title": "Shortest Way to Form String", "id": 1051, "frontend_id": 1055, - "videos": [] + "rating": 1303, + "difficulty_lvl": 2, + "acceptance": 0.59829, + "videos": [], + "companies": [] }, { "title": "Campus Bikes", "id": 1052, "frontend_id": 1057, + "rating": 1418, + "difficulty_lvl": 2, + "acceptance": 0.57599, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -33135,21 +35455,28 @@ "title": "Minimize Rounding Error to Meet Target", "id": 1053, "frontend_id": 1058, - "videos": [] + "rating": 1633, + "difficulty_lvl": 2, + "acceptance": 0.45005, + "videos": [], + "companies": [] }, { "title": "Complement of Base 10 Integer", "id": 1054, "frontend_id": 1009, + "rating": 1235, + "difficulty_lvl": 1, + "acceptance": 0.61053, "videos": [], "companies": [ { "name": "Adobe", - "score": 10 + "score": 4 }, { "name": "Apple", - "score": 1 + "score": 2 } ] }, @@ -33157,80 +35484,91 @@ "title": "Pairs of Songs With Total Durations Divisible by 60", "id": 1055, "frontend_id": 1010, + "difficulty_lvl": 2, + "acceptance": 0.52678, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 14 }, { "name": "Citadel", - "score": 6 + "score": 8 }, { "name": "Bloomberg", - "score": 2 + "score": 3 }, { "name": "C3 IoT", - "score": 2 + "score": 3 }, { "name": "Cisco", - "score": 1 - }, - { - "name": "ServiceNow", - "score": 1 - }, - { - "name": "Oracle", - "score": 1 - }, - { - "name": "Apple", - "score": 1 + "score": 2 } - ] + ], + "rating": 1377 }, { "title": "Capacity To Ship Packages Within D Days", "id": 1056, "frontend_id": 1011, + "difficulty_lvl": 2, + "acceptance": 0.68153, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ER_oLmdc-nw", "channel": "NeetCodeIO" } + ], + "companies": [], + "rating": 1725, + "languages": [ + "python", + "java" ] }, { "title": "Numbers With Repeated Digits", "id": 1057, "frontend_id": 1012, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.40652, + "videos": [], + "companies": [], + "rating": 2230 }, { "title": "Lexicographically Smallest Equivalent String", "id": 1058, "frontend_id": 1061, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.7657, + "videos": [], + "companies": [] }, { "title": "Missing Element in Sorted Array", "id": 1059, "frontend_id": 1060, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.55349, + "videos": [], + "companies": [] }, { "title": "Longest Repeating Substring", "id": 1060, "frontend_id": 1062, + "difficulty_lvl": 2, + "acceptance": 0.59376, "videos": [], "companies": [ { "name": "VMware", - "score": 6 + "score": 2 } ] }, @@ -33238,47 +35576,68 @@ "title": "Number of Valid Subarrays", "id": 1061, "frontend_id": 1063, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.74833, + "videos": [], + "companies": [] }, { "title": "Partition Array Into Three Parts With Equal Sum", "id": 1062, "frontend_id": 1013, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.42305, + "videos": [], + "companies": [], + "rating": 1379 }, { "title": "Best Sightseeing Pair", "id": 1063, "frontend_id": 1014, + "difficulty_lvl": 2, + "acceptance": 0.59353, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } - ] + ], + "rating": 1730 }, { "title": "Smallest Integer Divisible by K", "id": 1064, "frontend_id": 1015, - "videos": [] + "rating": 1875, + "difficulty_lvl": 2, + "acceptance": 0.46798, + "videos": [], + "companies": [] }, { "title": "Binary String With Substrings Representing 1 To N", "id": 1065, "frontend_id": 1016, - "videos": [] + "rating": 1779, + "difficulty_lvl": 2, + "acceptance": 0.57261, + "videos": [], + "companies": [] }, { "title": "Fixed Point", "id": 1066, "frontend_id": 1064, + "rating": 1308, + "difficulty_lvl": 1, + "acceptance": 0.64131, "videos": [], "companies": [ { "name": "Qualtrics", - "score": 6 + "score": 2 } ] }, @@ -33286,15 +35645,18 @@ "title": "Campus Bikes II", "id": 1067, "frontend_id": 1066, + "rating": 1885, + "difficulty_lvl": 2, + "acceptance": 0.54888, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -33302,17 +35664,23 @@ "title": "Digit Count in Range", "id": 1068, "frontend_id": 1067, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.4583, + "videos": [], + "companies": [], + "rating": 2025 }, { "title": "Confusing Number", "id": 1069, "frontend_id": 1056, + "difficulty_lvl": 1, + "acceptance": 0.48426, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -33320,27 +35688,38 @@ "title": "Convert to Base -2", "id": 1070, "frontend_id": 1017, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.60514, + "videos": [], + "companies": [], + "rating": 1698 }, { "title": "Binary Prefix Divisible By 5", "id": 1071, "frontend_id": 1018, - "videos": [] + "rating": 1376, + "difficulty_lvl": 1, + "acceptance": 0.46688, + "videos": [], + "companies": [] }, { "title": "Next Greater Node In Linked List", "id": 1072, "frontend_id": 1019, + "rating": 1571, + "difficulty_lvl": 2, + "acceptance": 0.60009, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 5 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } ] }, @@ -33348,23 +35727,32 @@ "title": "Number of Enclaves", "id": 1073, "frontend_id": 1020, + "rating": 1615, + "difficulty_lvl": 2, + "acceptance": 0.68791, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } + ], + "languages": [ + "java" ] }, { "title": "High Five", "id": 1074, "frontend_id": 1086, + "rating": 1327, + "difficulty_lvl": 1, + "acceptance": 0.74922, "videos": [], "companies": [ { "name": "Goldman Sachs", - "score": 6 + "score": 12 } ] }, @@ -33372,45 +35760,58 @@ "title": "Index Pairs of a String", "id": 1075, "frontend_id": 1065, + "difficulty_lvl": 1, + "acceptance": 0.66701, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } - ] + ], + "rating": 1389 }, { "title": "Brace Expansion", "id": 1076, "frontend_id": 1087, + "difficulty_lvl": 2, + "acceptance": 0.66233, "videos": [], "companies": [ { "name": "Google", - "score": 10 + "score": 4 }, { "name": "Amazon", - "score": 1 + "score": 2 } - ] + ], + "rating": 1480 }, { "title": "Confusing Number II", "id": 1077, "frontend_id": 1088, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.47161, + "videos": [], + "companies": [], + "rating": 2077 }, { "title": "Remove Outermost Parentheses", "id": 1078, "frontend_id": 1021, + "rating": 1311, + "difficulty_lvl": 1, + "acceptance": 0.81244, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } ] }, @@ -33418,19 +35819,22 @@ "title": "Sum of Root To Leaf Binary Numbers", "id": 1079, "frontend_id": 1022, + "rating": 1462, + "difficulty_lvl": 1, + "acceptance": 0.7336, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Apple", - "score": 6 + "score": 2 }, { "name": "Yahoo", - "score": 6 + "score": 2 } ] }, @@ -33438,83 +35842,109 @@ "title": "Camelcase Matching", "id": 1080, "frontend_id": 1023, - "videos": [] + "rating": 1537, + "difficulty_lvl": 2, + "acceptance": 0.61163, + "videos": [], + "companies": [] }, { "title": "Video Stitching", "id": 1081, "frontend_id": 1024, + "rating": 1746, + "difficulty_lvl": 2, + "acceptance": 0.50502, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 } + ], + "languages": [ + "cpp" ] }, { "title": "Sum of Digits in the Minimum Number", "id": 1082, "frontend_id": 1085, + "difficulty_lvl": 1, + "acceptance": 0.76432, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } - ] + ], + "rating": 1256 }, { "title": "Two Sum Less Than K", "id": 1083, "frontend_id": 1099, + "difficulty_lvl": 1, + "acceptance": 0.61115, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 3 }, { "name": "Facebook", - "score": 6 + "score": 3 } - ] + ], + "rating": 1245 }, { "title": "Find K-Length Substrings With No Repeated Characters", "id": 1084, "frontend_id": 1100, + "difficulty_lvl": 2, + "acceptance": 0.74647, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 4 } - ] + ], + "rating": 1349 }, { "title": "The Earliest Moment When Everyone Become Friends", "id": 1085, "frontend_id": 1101, - "videos": [] + "rating": 1558, + "difficulty_lvl": 2, + "acceptance": 0.64403, + "videos": [], + "companies": [] }, { "title": "Divisor Game", "id": 1086, "frontend_id": 1025, + "rating": 1435, + "difficulty_lvl": 1, + "acceptance": 0.67866, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Bloomberg", - "score": 6 + "score": 2 } ] }, @@ -33522,17 +35952,24 @@ "title": "Longest Arithmetic Subsequence", "id": 1087, "frontend_id": 1027, - "videos": [] + "rating": 1759, + "difficulty_lvl": 2, + "acceptance": 0.48999, + "videos": [], + "companies": [] }, { "title": "Number of Days in a Month", "id": 1088, "frontend_id": 1118, + "rating": 1227, + "difficulty_lvl": 1, + "acceptance": 0.57614, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } ] }, @@ -33540,11 +35977,14 @@ "title": "Remove Vowels from a String", "id": 1089, "frontend_id": 1119, + "rating": 1233, + "difficulty_lvl": 1, + "acceptance": 0.90801, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 3 } ] }, @@ -33552,11 +35992,14 @@ "title": "Armstrong Number", "id": 1090, "frontend_id": 1134, + "rating": 1231, + "difficulty_lvl": 1, + "acceptance": 0.77846, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } ] }, @@ -33564,25 +36007,33 @@ "title": "Maximum Average Subtree", "id": 1091, "frontend_id": 1120, - "videos": [] + "rating": 1362, + "difficulty_lvl": 2, + "acceptance": 0.65623, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Maximum Difference Between Node and Ancestor", "id": 1092, "frontend_id": 1026, + "rating": 1446, + "difficulty_lvl": 2, + "acceptance": 0.75626, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Facebook", - "score": 1 + "score": 2 } ] }, @@ -33590,24 +36041,36 @@ "title": "Recover a Tree From Preorder Traversal", "id": 1093, "frontend_id": 1028, - "videos": [] + "rating": 1797, + "difficulty_lvl": 3, + "acceptance": 0.73456, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Matrix Cells in Distance Order", "id": 1094, "frontend_id": 1030, + "rating": 1586, + "difficulty_lvl": 1, + "acceptance": 0.69955, "videos": [], "companies": [ { "name": "Yahoo", - "score": 6 + "score": 1 } - ] + ], + "languages": [] }, { "title": "Two City Scheduling", "id": 1095, "frontend_id": 1029, + "rating": 1348, + "difficulty_lvl": 2, + "acceptance": 0.6577, "videos": [ { "embedded_url": "https://www.youtube.com/embed/d-B_gk_gJtQ", @@ -33617,59 +36080,86 @@ "companies": [ { "name": "Bloomberg", - "score": 10 + "score": 14 }, { "name": "Facebook", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "java" ] }, { "title": "Maximum Sum of Two Non-Overlapping Subarrays", "id": 1096, "frontend_id": 1031, - "videos": [] + "rating": 1680, + "difficulty_lvl": 2, + "acceptance": 0.59619, + "videos": [], + "companies": [] }, { "title": "Stream of Characters", "id": 1097, "frontend_id": 1032, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.51673, + "videos": [], + "companies": [], + "rating": 1970 }, { "title": "Largest Unique Number", "id": 1098, "frontend_id": 1133, + "difficulty_lvl": 1, + "acceptance": 0.68007, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } - ] + ], + "rating": 1226 }, { "title": "Path With Maximum Minimum Value", "id": 1099, "frontend_id": 1102, - "videos": [] + "rating": 2011, + "difficulty_lvl": 2, + "acceptance": 0.53383, + "videos": [], + "companies": [] }, { "title": "Connecting Cities With Minimum Cost", "id": 1100, "frontend_id": 1135, - "videos": [] + "rating": 1753, + "difficulty_lvl": 2, + "acceptance": 0.61534, + "videos": [], + "companies": [] }, { "title": "Parallel Courses", "id": 1101, "frontend_id": 1136, + "rating": 1710, + "difficulty_lvl": 2, + "acceptance": 0.61148, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -33677,11 +36167,14 @@ "title": "Check If a Number Is Majority Element in a Sorted Array", "id": 1102, "frontend_id": 1150, + "rating": 1250, + "difficulty_lvl": 1, + "acceptance": 0.58528, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 2 }, { "name": "Salesforce", @@ -33693,11 +36186,14 @@ "title": "Moving Stones Until Consecutive", "id": 1103, "frontend_id": 1033, + "rating": 1421, + "difficulty_lvl": 2, + "acceptance": 0.46769, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 1 } ] }, @@ -33705,39 +36201,63 @@ "title": "Coloring A Border", "id": 1104, "frontend_id": 1034, - "videos": [] + "rating": 1579, + "difficulty_lvl": 2, + "acceptance": 0.49154, + "videos": [], + "companies": [] }, { "title": "Uncrossed Lines", "id": 1105, "frontend_id": 1035, - "videos": [] + "rating": 1806, + "difficulty_lvl": 2, + "acceptance": 0.62223, + "videos": [], + "companies": [] }, { "title": "Escape a Large Maze", "id": 1106, "frontend_id": 1036, - "videos": [] + "rating": 2165, + "difficulty_lvl": 3, + "acceptance": 0.34298, + "videos": [], + "companies": [] }, { "title": "Minimum Swaps to Group All 1's Together", "id": 1107, "frontend_id": 1151, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.60797, + "videos": [], + "companies": [ + { + "name": "Amazon", + "score": 21 + } + ], + "rating": 1508 }, { "title": "Analyze User Website Visit Pattern", "id": 1108, "frontend_id": 1152, + "rating": 1851, + "difficulty_lvl": 2, + "acceptance": 0.43026, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 50 }, { "name": "Spotify", - "score": 1 + "score": 6 } ] }, @@ -33745,125 +36265,170 @@ "title": "Minimum Score Triangulation of Polygon", "id": 1111, "frontend_id": 1039, - "videos": [] + "rating": 2130, + "difficulty_lvl": 2, + "acceptance": 0.57118, + "videos": [], + "companies": [] }, { "title": "Find Words That Can Be Formed by Characters", "id": 1112, "frontend_id": 1160, + "difficulty_lvl": 1, + "acceptance": 0.67219, "videos": [], "companies": [ { "name": "Karat", - "score": 10 + "score": 12 }, { "name": "Indeed", - "score": 5 + "score": 6 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Google", - "score": 1 + "score": 2 } + ], + "rating": 1206, + "languages": [ + "java" ] }, { "title": "Moving Stones Until Consecutive II", "id": 1113, "frontend_id": 1040, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.56348, + "videos": [], + "companies": [], + "rating": 2456 }, { "title": "Binary Search Tree to Greater Sum Tree", "id": 1114, "frontend_id": 1038, + "difficulty_lvl": 2, + "acceptance": 0.85573, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Facebook", - "score": 6 + "score": 2 } - ] + ], + "rating": 1375 }, { "title": "Valid Boomerang", "id": 1115, "frontend_id": 1037, + "difficulty_lvl": 1, + "acceptance": 0.3687, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } - ] + ], + "rating": 1256 }, { "title": "Maximum Level Sum of a Binary Tree", "id": 1116, "frontend_id": 1161, + "difficulty_lvl": 2, + "acceptance": 0.67589, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 3 } + ], + "rating": 1250, + "languages": [ + "cpp" ] }, { "title": "As Far from Land as Possible", "id": 1117, "frontend_id": 1162, + "difficulty_lvl": 2, + "acceptance": 0.51755, "videos": [ { "embedded_url": "https://www.youtube.com/embed/fjxb1hQfrZk", "channel": "NeetCodeIO" } - ] + ], + "companies": [], + "rating": 1666 }, { "title": "Divide Array Into Increasing Sequences", "id": 1118, "frontend_id": 1121, - "videos": [] + "rating": 1665, + "difficulty_lvl": 3, + "acceptance": 0.60982, + "videos": [], + "companies": [] }, { "title": "Robot Bounded In Circle", "id": 1119, "frontend_id": 1041, + "rating": 1521, + "difficulty_lvl": 2, + "acceptance": 0.55364, "videos": [ { "embedded_url": "https://www.youtube.com/embed/nKv2LnC_g6E", "channel": "NeetCode" } - ] + ], + "companies": [] }, { "title": "Flower Planting With No Adjacent", "id": 1120, "frontend_id": 1042, - "videos": [] + "rating": 1712, + "difficulty_lvl": 2, + "acceptance": 0.50792, + "videos": [], + "companies": [] }, { "title": "Partition Array for Maximum Sum", "id": 1121, "frontend_id": 1043, + "rating": 1916, + "difficulty_lvl": 2, + "acceptance": 0.72034, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Adobe", - "score": 1 + "score": 3 } ] }, @@ -33871,17 +36436,25 @@ "title": "Longest Duplicate Substring", "id": 1122, "frontend_id": 1044, - "videos": [] + "rating": 2429, + "difficulty_lvl": 3, + "acceptance": 0.305, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Single-Row Keyboard", "id": 1123, "frontend_id": 1165, + "rating": 1199, + "difficulty_lvl": 1, + "acceptance": 0.86676, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -33889,24 +36462,38 @@ "title": "String Transforms Into Another String", "id": 1124, "frontend_id": 1153, - "videos": [] + "rating": 1949, + "difficulty_lvl": 3, + "acceptance": 0.35178, + "videos": [], + "companies": [] }, { "title": "Design File System", "id": 1125, "frontend_id": 1166, - "videos": [] + "rating": 1479, + "difficulty_lvl": 2, + "acceptance": 0.62153, + "videos": [], + "companies": [] }, { "title": "Minimum Cost to Connect Sticks", "id": 1126, "frontend_id": 1167, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.68784, + "videos": [], + "companies": [], + "rating": 1482 }, { "title": "Last Stone Weight", "id": 1127, "frontend_id": 1046, + "difficulty_lvl": 1, + "acceptance": 0.65289, "videos": [ { "embedded_url": "https://www.youtube.com/embed/B-QCq79-Vfw", @@ -33916,35 +36503,45 @@ "companies": [ { "name": "Visa", - "score": 10 + "score": 11 }, { "name": "Nvidia", - "score": 7 + "score": 8 }, { "name": "Amazon", - "score": 3 + "score": 4 }, { "name": "Salesforce", - "score": 1 + "score": 2 } - ] + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" + ], + "rating": 1173 }, { "title": "Remove All Adjacent Duplicates In String", "id": 1128, "frontend_id": 1047, + "rating": 1286, + "difficulty_lvl": 1, + "acceptance": 0.69063, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 40 }, { "name": "Amazon", - "score": 1 + "score": 4 } ] }, @@ -33952,28 +36549,42 @@ "title": "Longest String Chain", "id": 1129, "frontend_id": 1048, - "videos": [] + "rating": 1599, + "difficulty_lvl": 2, + "acceptance": 0.5943, + "videos": [], + "companies": [] }, { "title": "Last Stone Weight II", "id": 1130, "frontend_id": 1049, + "rating": 2092, + "difficulty_lvl": 2, + "acceptance": 0.53986, "videos": [ { "embedded_url": "https://www.youtube.com/embed/gdXkkmzvR3c", "channel": "NeetCodeIO" } + ], + "companies": [], + "languages": [ + "python" ] }, { "title": "Count Substrings with Only One Distinct Letter", "id": 1131, "frontend_id": 1180, + "rating": 1315, + "difficulty_lvl": 1, + "acceptance": 0.7916, "videos": [], "companies": [ { "name": "Virtu Financial", - "score": 6 + "score": 2 } ] }, @@ -33981,23 +36592,34 @@ "title": "Before and After Puzzle", "id": 1132, "frontend_id": 1181, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.45356, + "videos": [], + "companies": [], + "rating": 1559 }, { "title": "Last Substring in Lexicographical Order", "id": 1133, "frontend_id": 1163, - "videos": [] + "rating": 1864, + "difficulty_lvl": 3, + "acceptance": 0.34694, + "videos": [], + "companies": [] }, { "title": "Shortest Distance to Target Color", "id": 1134, "frontend_id": 1182, + "rating": 1627, + "difficulty_lvl": 2, + "acceptance": 0.5546, "videos": [], "companies": [ { "name": "Uber", - "score": 6 + "score": 2 } ] }, @@ -34005,23 +36627,39 @@ "title": "Customers Who Bought All Products", "id": 1135, "frontend_id": 1045, - "videos": [] + "rating": 1753, + "difficulty_lvl": 2, + "acceptance": 0.63402, + "videos": [], + "companies": [] }, { "title": "Actors and Directors Who Cooperated At Least Three Times", "id": 1136, "frontend_id": 1050, - "videos": [] + "rating": 1710, + "difficulty_lvl": 1, + "acceptance": 0.69631, + "videos": [], + "companies": [] }, { "title": "Height Checker", "id": 1137, "frontend_id": 1051, - "videos": [], + "rating": 1303, + "difficulty_lvl": 1, + "acceptance": 0.75855, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/mQAoeYaE3Xk", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Goldman Sachs", - "score": 10 + "score": 20 }, { "name": "Apple", @@ -34031,72 +36669,112 @@ "name": "Salesforce", "score": 1 } - ] + ], + "languages": [] }, { "title": "Grumpy Bookstore Owner", "id": 1138, "frontend_id": 1052, - "videos": [] + "rating": 1418, + "difficulty_lvl": 2, + "acceptance": 0.57155, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/pXFbNuEIn8Q", + "channel": "NeetCodeIO" + } + ], + "companies": [] }, { "title": "Previous Permutation With One Swap", "id": 1139, "frontend_id": 1053, - "videos": [] + "rating": 1633, + "difficulty_lvl": 2, + "acceptance": 0.50176, + "videos": [], + "companies": [] }, { "title": "Distant Barcodes", "id": 1140, "frontend_id": 1054, - "videos": [] + "rating": 1702, + "difficulty_lvl": 2, + "acceptance": 0.46052, + "videos": [], + "companies": [] }, { "title": "How Many Apples Can You Put into the Basket", "id": 1141, "frontend_id": 1196, + "difficulty_lvl": 1, + "acceptance": 0.66775, "videos": [], "companies": [ { "name": "Virtu Financial", - "score": 6 + "score": 2 } - ] + ], + "rating": 1249 }, { "title": "Minimum Knight Moves", "id": 1142, "frontend_id": 1197, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.39782, + "videos": [], + "companies": [], + "rating": 1722 }, { "title": "Find Smallest Common Element in All Rows", "id": 1143, "frontend_id": 1198, + "difficulty_lvl": 2, + "acceptance": 0.76483, "videos": [], "companies": [ { "name": "Walmart Global Tech", - "score": 6 + "score": 2 } - ] + ], + "languages": [], + "rating": 1401 }, { "title": "Optimize Water Distribution in a Village", "id": 1144, "frontend_id": 1168, - "videos": [] + "rating": 2069, + "difficulty_lvl": 3, + "acceptance": 0.64624, + "videos": [], + "companies": [] }, { "title": "Number of Submatrices That Sum to Target", "id": 1145, "frontend_id": 1074, - "videos": [] + "rating": 2189, + "difficulty_lvl": 3, + "acceptance": 0.6951, + "videos": [], + "companies": [] }, { "title": "Greatest Common Divisor of Strings", "id": 1146, "frontend_id": 1071, + "rating": 1398, + "difficulty_lvl": 1, + "acceptance": 0.53284, "videos": [ { "embedded_url": "https://www.youtube.com/embed/i5I_wrbUdzM", @@ -34106,47 +36784,68 @@ "companies": [ { "name": "Goldman Sachs", - "score": 10 + "score": 3 }, { "name": "Atlassian", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "cpp" ] }, { "title": "Flip Columns For Maximum Number of Equal Rows", "id": 1147, "frontend_id": 1072, - "videos": [] + "rating": 1798, + "difficulty_lvl": 2, + "acceptance": 0.63671, + "videos": [], + "companies": [] }, { "title": "Adding Two Negabinary Numbers", "id": 1148, "frontend_id": 1073, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.3645, + "videos": [], + "companies": [], + "rating": 1807 }, { "title": "Intersection of Three Sorted Arrays", "id": 1149, "frontend_id": 1213, + "difficulty_lvl": 1, + "acceptance": 0.79883, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 3 } + ], + "rating": 1259, + "languages": [ + "cpp" ] }, { "title": "Two Sum BSTs", "id": 1150, "frontend_id": 1214, + "rating": 1389, + "difficulty_lvl": 2, + "acceptance": 0.67038, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 3 } ] }, @@ -34154,41 +36853,66 @@ "title": "Stepping Numbers", "id": 1151, "frontend_id": 1215, - "videos": [] + "rating": 1675, + "difficulty_lvl": 2, + "acceptance": 0.46417, + "videos": [], + "companies": [] }, { "title": "Maximum Number of Ones", "id": 1152, "frontend_id": 1183, - "videos": [] + "rating": 2367, + "difficulty_lvl": 3, + "acceptance": 0.61856, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Product Sales Analysis I", "id": 1153, "frontend_id": 1068, - "videos": [] + "rating": 1949, + "difficulty_lvl": 1, + "acceptance": 0.81841, + "videos": [], + "companies": [] }, { "title": "Product Sales Analysis II", "id": 1154, "frontend_id": 1069, - "videos": [] + "rating": 1199, + "difficulty_lvl": 1, + "acceptance": 0.81876, + "videos": [], + "companies": [] }, { "title": "Product Sales Analysis III", "id": 1155, "frontend_id": 1070, - "videos": [] + "rating": 1654, + "difficulty_lvl": 2, + "acceptance": 0.45249, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Occurrences After Bigram", "id": 1156, "frontend_id": 1078, + "rating": 1275, + "difficulty_lvl": 1, + "acceptance": 0.63421, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -34196,93 +36920,143 @@ "title": "Insufficient Nodes in Root to Leaf Paths", "id": 1157, "frontend_id": 1080, - "videos": [] + "rating": 1805, + "difficulty_lvl": 2, + "acceptance": 0.54055, + "videos": [], + "companies": [] }, { "title": "Smallest Subsequence of Distinct Characters", "id": 1159, "frontend_id": 1081, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.5834, + "videos": [], + "companies": [], + "rating": 2185, + "languages": [ + "java" + ] }, { "title": "Letter Tile Possibilities", "id": 1160, "frontend_id": 1079, + "rating": 1741, + "difficulty_lvl": 2, + "acceptance": 0.76059, "videos": [], "companies": [ { "name": "Microsoft", - "score": 10 + "score": 3 }, { "name": "Google", "score": 1 } - ] + ], + "languages": [] }, { "title": "Project Employees I", "id": 1161, "frontend_id": 1075, - "videos": [] + "rating": 1250, + "difficulty_lvl": 1, + "acceptance": 0.6499, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Project Employees II", "id": 1162, "frontend_id": 1076, - "videos": [] + "rating": 1666, + "difficulty_lvl": 1, + "acceptance": 0.49971, + "videos": [], + "companies": [] }, { "title": "Project Employees III", "id": 1163, "frontend_id": 1077, - "videos": [] + "rating": 1864, + "difficulty_lvl": 2, + "acceptance": 0.76814, + "videos": [], + "companies": [] }, { "title": "Missing Number In Arithmetic Progression", "id": 1164, "frontend_id": 1228, + "difficulty_lvl": 1, + "acceptance": 0.51665, "videos": [], "companies": [ { "name": "VMware", - "score": 6 + "score": 2 } - ] + ], + "rating": 1244 }, { "title": "Meeting Scheduler", "id": 1165, "frontend_id": 1229, - "videos": [] + "rating": 1541, + "difficulty_lvl": 2, + "acceptance": 0.55209, + "videos": [], + "companies": [] }, { "title": "Toss Strange Coins", "id": 1166, "frontend_id": 1230, - "videos": [] + "rating": 1809, + "difficulty_lvl": 2, + "acceptance": 0.56042, + "videos": [], + "companies": [] }, { "title": "Minimum Time to Build Blocks", "id": 1167, "frontend_id": 1199, - "videos": [] + "rating": 2250, + "difficulty_lvl": 3, + "acceptance": 0.41364, + "videos": [], + "companies": [] }, { "title": "Duplicate Zeros", "id": 1168, "frontend_id": 1089, - "videos": [] + "rating": 1263, + "difficulty_lvl": 1, + "acceptance": 0.51551, + "videos": [], + "companies": [] }, { "title": "Largest Values From Labels", "id": 1169, "frontend_id": 1090, + "rating": 1501, + "difficulty_lvl": 2, + "acceptance": 0.6141, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -34290,12 +37064,19 @@ "title": "Shortest Common Supersequence ", "id": 1170, "frontend_id": 1092, - "videos": [] + "rating": 1977, + "difficulty_lvl": 3, + "acceptance": 0.58701, + "videos": [], + "companies": [] }, { "title": "Shortest Path in Binary Matrix", "id": 1171, "frontend_id": 1091, + "rating": 1658, + "difficulty_lvl": 2, + "acceptance": 0.46502, "videos": [ { "embedded_url": "https://www.youtube.com/embed/YnxUdAO7TAo", @@ -34305,57 +37086,70 @@ "companies": [ { "name": "Facebook", - "score": 10 + "score": 76 }, { "name": "Amazon", - "score": 2 + "score": 9 }, { "name": "Microsoft", - "score": 2 + "score": 8 }, { "name": "Google", - "score": 1 + "score": 5 }, { "name": "Snapchat", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 + "score": 3 } + ], + "languages": [ + "python", + "java" ] }, { "title": "Sales Analysis I", "id": 1172, "frontend_id": 1082, - "videos": [] + "rating": 2110, + "difficulty_lvl": 1, + "acceptance": 0.74534, + "videos": [], + "companies": [] }, { "title": "Sales Analysis II", "id": 1173, "frontend_id": 1083, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.49779, + "videos": [], + "companies": [] }, { "title": "Sales Analysis III", "id": 1174, "frontend_id": 1084, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.47745, + "videos": [], + "companies": [] }, { "title": "Array Transformation", "id": 1175, "frontend_id": 1243, + "rating": 1558, + "difficulty_lvl": 1, + "acceptance": 0.51404, "videos": [], "companies": [ { "name": "Virtu Financial", - "score": 6 + "score": 2 } ] }, @@ -34363,54 +37157,88 @@ "title": "Design A Leaderboard", "id": 1176, "frontend_id": 1244, - "videos": [] + "rating": 1354, + "difficulty_lvl": 2, + "acceptance": 0.68349, + "videos": [], + "companies": [] }, { "title": "Tree Diameter", "id": 1177, "frontend_id": 1245, - "videos": [] + "rating": 1792, + "difficulty_lvl": 2, + "acceptance": 0.61267, + "videos": [], + "companies": [] }, { "title": "Valid Palindrome III", "id": 1178, "frontend_id": 1216, - "videos": [] + "rating": 1754, + "difficulty_lvl": 3, + "acceptance": 0.50324, + "videos": [], + "companies": [] }, { "title": "Game Play Analysis I", "id": 1179, "frontend_id": 511, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.74786, + "videos": [], + "companies": [] }, { "title": "Game Play Analysis II", "id": 1180, "frontend_id": 512, - "videos": [] + "rating": 1315, + "difficulty_lvl": 1, + "acceptance": 0.52439, + "videos": [], + "companies": [] }, { "title": "Game Play Analysis III", "id": 1181, "frontend_id": 534, - "videos": [] + "rating": 1559, + "difficulty_lvl": 2, + "acceptance": 0.81291, + "videos": [], + "companies": [] }, { "title": "Game Play Analysis IV", "id": 1182, "frontend_id": 550, - "videos": [] + "rating": 1627, + "difficulty_lvl": 2, + "acceptance": 0.38009, + "videos": [], + "companies": [] }, { "title": "Statistics from a Large Sample", "id": 1183, "frontend_id": 1093, - "videos": [] + "rating": 1472, + "difficulty_lvl": 2, + "acceptance": 0.42924, + "videos": [], + "companies": [] }, { "title": "Car Pooling", "id": 1184, "frontend_id": 1094, + "rating": 1441, + "difficulty_lvl": 2, + "acceptance": 0.56536, "videos": [ { "embedded_url": "https://www.youtube.com/embed/08sn_w4LWEE", @@ -34420,7 +37248,7 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 9 }, { "name": "DoorDash", @@ -34432,81 +37260,104 @@ }, { "name": "Google", - "score": 2 + "score": 3 }, { "name": "Microsoft", - "score": 2 - }, - { - "name": "Bloomberg", - "score": 2 - }, - { - "name": "Facebook", - "score": 1 - }, - { - "name": "Cruise Automation", - "score": 1 + "score": 3 } + ], + "languages": [ + "cpp" ] }, { "title": "Find in Mountain Array", "id": 1185, "frontend_id": 1095, - "videos": [] + "rating": 1827, + "difficulty_lvl": 3, + "acceptance": 0.3523, + "videos": [], + "companies": [], + "languages": [ + "cpp", + "java" + ] }, { "title": "Building H2O", "id": 1186, "frontend_id": 1117, - "videos": [] + "rating": 1799, + "difficulty_lvl": 2, + "acceptance": 0.55756, + "videos": [], + "companies": [] }, { "title": "Print FooBar Alternately", "id": 1187, "frontend_id": 1115, - "videos": [] + "rating": 2316, + "difficulty_lvl": 2, + "acceptance": 0.6354, + "videos": [], + "companies": [] }, { "title": "Brace Expansion II", "id": 1188, "frontend_id": 1096, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.63718, + "videos": [], + "companies": [], + "rating": 2349 }, { "title": "Encode Number", "id": 1189, "frontend_id": 1256, - "videos": [] + "rating": 1561, + "difficulty_lvl": 2, + "acceptance": 0.69565, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Smallest Common Region", "id": 1190, "frontend_id": 1257, + "rating": 1654, + "difficulty_lvl": 2, + "acceptance": 0.64531, "videos": [], "companies": [ { "name": "Airbnb", - "score": 6 + "score": 7 } - ] + ], + "languages": [] }, { "title": "Synonymous Sentences", "id": 1191, "frontend_id": 1258, + "rating": 1847, + "difficulty_lvl": 2, + "acceptance": 0.5664, "videos": [], "companies": [ { "name": "Cruise Automation", - "score": 6 + "score": 3 }, { "name": "Amazon", - "score": 6 + "score": 3 } ] }, @@ -34514,59 +37365,88 @@ "title": "Divide Chocolate", "id": 1192, "frontend_id": 1231, - "videos": [] + "rating": 2029, + "difficulty_lvl": 3, + "acceptance": 0.57942, + "videos": [], + "companies": [] }, { "title": "Game Play Analysis V", "id": 1193, "frontend_id": 1097, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.52194, + "videos": [], + "companies": [] }, { "title": "Path In Zigzag Labelled Binary Tree", "id": 1194, "frontend_id": 1104, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.75022, + "videos": [], + "companies": [], + "rating": 1545 }, { "title": "Distribute Candies to People", "id": 1195, "frontend_id": 1103, + "difficulty_lvl": 1, + "acceptance": 0.64518, "videos": [], "companies": [ { "name": "PayTM", - "score": 6 + "score": 2 } - ] + ], + "rating": 1287 }, { "title": "Filling Bookcase Shelves", "id": 1196, "frontend_id": 1105, - "videos": [] + "rating": 2014, + "difficulty_lvl": 2, + "acceptance": 0.59567, + "videos": [], + "companies": [] }, { "title": "Parsing A Boolean Expression", "id": 1197, "frontend_id": 1106, - "videos": [] + "rating": 1880, + "difficulty_lvl": 3, + "acceptance": 0.5862, + "videos": [], + "companies": [] }, { "title": "Unpopular Books", "id": 1198, "frontend_id": 1098, - "videos": [] + "rating": 1401, + "difficulty_lvl": 2, + "acceptance": 0.43656, + "videos": [], + "companies": [] }, { "title": "Hexspeak", "id": 1199, "frontend_id": 1271, + "rating": 1384, + "difficulty_lvl": 1, + "acceptance": 0.57214, "videos": [], "companies": [ { "name": "Virtu Financial", - "score": 6 + "score": 2 } ] }, @@ -34574,17 +37454,24 @@ "title": "Remove Interval", "id": 1200, "frontend_id": 1272, - "videos": [] + "rating": 1525, + "difficulty_lvl": 2, + "acceptance": 0.63988, + "videos": [], + "companies": [] }, { "title": "Delete Tree Nodes", "id": 1201, "frontend_id": 1273, + "rating": 1733, + "difficulty_lvl": 2, + "acceptance": 0.61166, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 1 } ] }, @@ -34592,17 +37479,24 @@ "title": "Palindrome Removal", "id": 1202, "frontend_id": 1246, - "videos": [] + "rating": 2203, + "difficulty_lvl": 3, + "acceptance": 0.4658, + "videos": [], + "companies": [] }, { "title": "Print in Order", "id": 1203, "frontend_id": 1114, + "rating": 2419, + "difficulty_lvl": 1, + "acceptance": 0.68773, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -34610,51 +37504,69 @@ "title": "New Users Daily Count", "id": 1204, "frontend_id": 1107, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.4493, + "videos": [], + "companies": [] }, { "title": "Defanging an IP Address", "id": 1205, "frontend_id": 1108, + "difficulty_lvl": 1, + "acceptance": 0.88925, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 } - ] + ], + "rating": 1084 }, { "title": "Corporate Flight Bookings", "id": 1206, "frontend_id": 1109, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.60896, + "videos": [], + "companies": [], + "rating": 1570 }, { "title": "Delete Nodes And Return Forest", "id": 1207, "frontend_id": 1110, - "videos": [], + "rating": 1511, + "difficulty_lvl": 2, + "acceptance": 0.69184, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/UhKu0q1yXHY", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Facebook", - "score": 10 + "score": 7 }, { "name": "Google", - "score": 8 + "score": 6 }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "Intuit", - "score": 1 + "score": 2 } ] }, @@ -34662,23 +37574,35 @@ "title": "Maximum Nesting Depth of Two Valid Parentheses Strings", "id": 1208, "frontend_id": 1111, - "videos": [] + "rating": 1749, + "difficulty_lvl": 2, + "acceptance": 0.72723, + "videos": [], + "companies": [] }, { "title": "Design Bounded Blocking Queue", "id": 1209, "frontend_id": 1188, - "videos": [] + "rating": 1542, + "difficulty_lvl": 2, + "acceptance": 0.72703, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Mean of Array After Removing Some Elements", "id": 1210, "frontend_id": 1619, + "rating": 1374, + "difficulty_lvl": 1, + "acceptance": 0.66544, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -34686,63 +37610,94 @@ "title": "Iterator for Combination", "id": 1211, "frontend_id": 1286, + "difficulty_lvl": 2, + "acceptance": 0.73288, "videos": [], "companies": [ { "name": "Uber", - "score": 6 + "score": 2 } - ] + ], + "rating": 1591 }, { "title": "Sequential Digits", "id": 1212, "frontend_id": 1291, + "difficulty_lvl": 2, + "acceptance": 0.61283, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Apple", - "score": 1 + "score": 2 } - ] + ], + "rating": 1374 }, { "title": "Handshakes That Don't Cross", "id": 1213, "frontend_id": 1259, - "videos": [] + "rating": 1951, + "difficulty_lvl": 3, + "acceptance": 0.60713, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Highest Grade For Each Student", "id": 1214, "frontend_id": 1112, - "videos": [] + "rating": 1389, + "difficulty_lvl": 2, + "acceptance": 0.71371, + "videos": [], + "companies": [] }, { "title": "Reported Posts", "id": 1215, "frontend_id": 1113, - "videos": [] + "rating": 1675, + "difficulty_lvl": 1, + "acceptance": 0.6504, + "videos": [], + "companies": [] }, { "title": "Print Zero Even Odd", "id": 1216, "frontend_id": 1116, - "videos": [] + "rating": 1754, + "difficulty_lvl": 2, + "acceptance": 0.60412, + "videos": [], + "companies": [] }, { "title": "Relative Sort Array", "id": 1217, "frontend_id": 1122, - "videos": [], + "rating": 1189, + "difficulty_lvl": 1, + "acceptance": 0.68685, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/OPvcR1e4lfg", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -34750,52 +37705,94 @@ "title": "Lowest Common Ancestor of Deepest Leaves", "id": 1218, "frontend_id": 1123, - "videos": [] + "rating": 1607, + "difficulty_lvl": 2, + "acceptance": 0.71078, + "videos": [], + "companies": [] }, { "title": "Longest Well-Performing Interval", "id": 1219, "frontend_id": 1124, - "videos": [] + "rating": 1908, + "difficulty_lvl": 2, + "acceptance": 0.3456, + "videos": [], + "companies": [] }, { "title": "Smallest Sufficient Team", "id": 1220, "frontend_id": 1125, - "videos": [] + "rating": 2251, + "difficulty_lvl": 3, + "acceptance": 0.56749, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Element Appearing More Than 25% In Sorted Array", "id": 1221, "frontend_id": 1287, - "videos": [] + "rating": 1179, + "difficulty_lvl": 1, + "acceptance": 0.59181, + "videos": [], + "companies": [ + { + "name": "Facebook", + "score": 5 + }, + { + "name": "Google", + "score": 2 + } + ] }, { "title": "Remove Covered Intervals", "id": 1222, "frontend_id": 1288, + "rating": 1375, + "difficulty_lvl": 2, + "acceptance": 0.56793, "videos": [ { "embedded_url": "https://www.youtube.com/embed/nhAsMabiVkM", "channel": "NeetCode" } - ] + ], + "companies": [] }, { "title": "Graph Connectivity With Threshold", "id": 1223, "frontend_id": 1627, - "videos": [] + "rating": 2221, + "difficulty_lvl": 3, + "acceptance": 0.46688, + "videos": [], + "companies": [] }, { "title": "Minimum Falling Path Sum II", "id": 1224, "frontend_id": 1289, - "videos": [], + "rating": 1697, + "difficulty_lvl": 3, + "acceptance": 0.58158, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/_b8sptrsFEM", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Roblox", - "score": 10 + "score": 4 }, { "name": "Google", @@ -34807,57 +37804,81 @@ "title": "Active Businesses", "id": 1225, "frontend_id": 1126, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.66233, + "videos": [], + "companies": [] }, { "title": "User Purchase Platform", "id": 1226, "frontend_id": 1127, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.48638, + "videos": [], + "companies": [] }, { "title": "Number of Equivalent Domino Pairs", "id": 1227, "frontend_id": 1128, + "difficulty_lvl": 1, + "acceptance": 0.47444, "videos": [], "companies": [ { "name": "Adobe", - "score": 10 + "score": 2 }, { "name": "Amazon", "score": 1 } - ] + ], + "rating": 1333 }, { "title": "Minimum Cost Tree From Leaf Values", "id": 1228, "frontend_id": 1130, - "videos": [] + "rating": 1919, + "difficulty_lvl": 2, + "acceptance": 0.68059, + "videos": [], + "companies": [] }, { "title": "Shortest Path with Alternating Colors", "id": 1229, "frontend_id": 1129, + "rating": 1780, + "difficulty_lvl": 2, + "acceptance": 0.47864, "videos": [ { "embedded_url": "https://www.youtube.com/embed/69rcy6lb-HQ", "channel": "NeetCodeIO" } - ] + ], + "companies": [] }, { "title": "Maximum of Absolute Value Expression", "id": 1230, "frontend_id": 1131, - "videos": [] + "rating": 2059, + "difficulty_lvl": 2, + "acceptance": 0.48763, + "videos": [], + "companies": [] }, { "title": "Replace Elements with Greatest Element on Right Side", "id": 1231, "frontend_id": 1299, + "rating": 1219, + "difficulty_lvl": 1, + "acceptance": 0.72128, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ZHjKhUjcsaU", @@ -34867,19 +37888,28 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Sum of Mutated Array Closest to Target", "id": 1232, "frontend_id": 1300, + "rating": 1607, + "difficulty_lvl": 2, + "acceptance": 0.43878, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } ] }, @@ -34887,41 +37917,64 @@ "title": "Number of Ships in a Rectangle", "id": 1233, "frontend_id": 1274, - "videos": [] + "rating": 1997, + "difficulty_lvl": 3, + "acceptance": 0.69048, + "videos": [], + "companies": [] }, { "title": "Number of Paths with Max Score", "id": 1234, "frontend_id": 1301, - "videos": [] + "rating": 1853, + "difficulty_lvl": 3, + "acceptance": 0.38861, + "videos": [], + "companies": [] }, { "title": "N-th Tribonacci Number", "id": 1236, "frontend_id": 1137, + "difficulty_lvl": 1, + "acceptance": 0.63588, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 3 } - ] + ], + "languages": [ + "javascript", + "python", + "cpp" + ], + "rating": 1143 }, { "title": "Reported Posts II", "id": 1237, "frontend_id": 1132, - "videos": [] + "rating": 1405, + "difficulty_lvl": 2, + "acceptance": 0.32769, + "videos": [], + "companies": [] }, { "title": "Alphabet Board Path", "id": 1238, "frontend_id": 1138, + "rating": 1411, + "difficulty_lvl": 2, + "acceptance": 0.51916, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -34929,51 +37982,69 @@ "title": "Largest 1-Bordered Square", "id": 1239, "frontend_id": 1139, - "videos": [] + "rating": 1744, + "difficulty_lvl": 2, + "acceptance": 0.50174, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Stone Game II", "id": 1240, "frontend_id": 1140, - "videos": [] + "rating": 2035, + "difficulty_lvl": 2, + "acceptance": 0.68549, + "videos": [], + "companies": [] }, { "title": "Decompress Run-Length Encoded List", "id": 1241, "frontend_id": 1313, + "difficulty_lvl": 1, + "acceptance": 0.85586, "videos": [], "companies": [ { "name": "Apple", - "score": 10 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 } - ] + ], + "rating": 1317 }, { "title": "Matrix Block Sum", "id": 1242, "frontend_id": 1314, + "difficulty_lvl": 2, + "acceptance": 0.75519, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } - ] + ], + "rating": 1484 }, { "title": "Sum of Nodes with Even-Valued Grandparent", "id": 1243, "frontend_id": 1315, + "rating": 1427, + "difficulty_lvl": 2, + "acceptance": 0.85481, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -34981,49 +38052,72 @@ "title": "Distinct Echo Substrings", "id": 1244, "frontend_id": 1316, - "videos": [] + "rating": 1837, + "difficulty_lvl": 3, + "acceptance": 0.49711, + "videos": [], + "companies": [] }, { "title": "User Activity for the Past 30 Days I", "id": 1245, "frontend_id": 1141, - "videos": [] + "rating": 1792, + "difficulty_lvl": 1, + "acceptance": 0.48118, + "videos": [], + "companies": [] }, { "title": "User Activity for the Past 30 Days II", "id": 1246, "frontend_id": 1142, - "videos": [] + "rating": 2203, + "difficulty_lvl": 1, + "acceptance": 0.35602, + "videos": [], + "companies": [] }, { "title": "Decrease Elements To Make Array Zigzag", "id": 1247, "frontend_id": 1144, - "videos": [] + "rating": 1559, + "difficulty_lvl": 2, + "acceptance": 0.4742, + "videos": [], + "companies": [] }, { "title": "Binary Tree Coloring Game", "id": 1248, "frontend_id": 1145, - "videos": [] + "rating": 1741, + "difficulty_lvl": 2, + "acceptance": 0.5176, + "videos": [], + "companies": [] }, { "title": "Snapshot Array", "id": 1249, "frontend_id": 1146, + "rating": 1771, + "difficulty_lvl": 2, + "acceptance": 0.37462, "videos": [], "companies": [ { "name": "Google", - "score": 10 + "score": 36 }, { "name": "Rubrik", - "score": 2 + "score": 5 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -35031,6 +38125,9 @@ "title": "Longest Common Subsequence", "id": 1250, "frontend_id": 1143, + "rating": 1983, + "difficulty_lvl": 2, + "acceptance": 0.57891, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Ua0GhsJSlWM", @@ -35040,11 +38137,11 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 6 }, { "name": "DoorDash", - "score": 8 + "score": 5 }, { "name": "Bloomberg", @@ -35052,31 +38149,48 @@ }, { "name": "Karat", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Longest Chunked Palindrome Decomposition", "id": 1251, "frontend_id": 1147, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.58907, + "videos": [], + "companies": [], + "rating": 1912 }, { "title": "Break a Palindrome", "id": 1252, "frontend_id": 1328, - "videos": [] + "rating": 1474, + "difficulty_lvl": 2, + "acceptance": 0.52284, + "videos": [], + "companies": [] }, { "title": "Sort the Matrix Diagonally", "id": 1253, "frontend_id": 1329, + "rating": 1548, + "difficulty_lvl": 2, + "acceptance": 0.83086, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } ] }, @@ -35084,11 +38198,14 @@ "title": "Deepest Leaves Sum", "id": 1254, "frontend_id": 1302, + "rating": 1388, + "difficulty_lvl": 2, + "acceptance": 0.86409, "videos": [], "companies": [ { "name": "Apple", - "score": 6 + "score": 2 } ] }, @@ -35096,21 +38213,28 @@ "title": "Reverse Subarray To Maximize Array Value", "id": 1255, "frontend_id": 1330, - "videos": [] + "rating": 2482, + "difficulty_lvl": 3, + "acceptance": 0.4122, + "videos": [], + "companies": [] }, { "title": "Rank Transform of an Array", "id": 1256, "frontend_id": 1331, + "rating": 1356, + "difficulty_lvl": 1, + "acceptance": 0.59672, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 } ] }, @@ -35118,71 +38242,108 @@ "title": "Rank Transform of a Matrix", "id": 1257, "frontend_id": 1632, - "videos": [] + "rating": 2530, + "difficulty_lvl": 3, + "acceptance": 0.40938, + "videos": [], + "companies": [] }, { "title": "Article Views I", "id": 1258, "frontend_id": 1148, - "videos": [] + "rating": 1847, + "difficulty_lvl": 1, + "acceptance": 0.75289, + "videos": [], + "companies": [] }, { "title": "Article Views II", "id": 1259, "frontend_id": 1149, - "videos": [] + "rating": 1951, + "difficulty_lvl": 2, + "acceptance": 0.46991, + "videos": [], + "companies": [] }, { "title": "Day of the Year", "id": 1260, "frontend_id": 1154, + "rating": 1199, + "difficulty_lvl": 1, + "acceptance": 0.49053, "videos": [], "companies": [ { "name": "ZScaler", - "score": 6 + "score": 1 } - ] + ], + "languages": [] }, { "title": "Swap For Longest Repeated Character Substring", "id": 1261, "frontend_id": 1156, - "videos": [] + "rating": 1787, + "difficulty_lvl": 2, + "acceptance": 0.4458, + "videos": [], + "companies": [] }, { "title": "Online Majority Element In Subarray", "id": 1262, "frontend_id": 1157, - "videos": [] + "rating": 2205, + "difficulty_lvl": 3, + "acceptance": 0.41662, + "videos": [], + "companies": [] }, { "title": "Number of Dice Rolls With Target Sum", "id": 1263, "frontend_id": 1155, - "videos": [] + "rating": 1654, + "difficulty_lvl": 2, + "acceptance": 0.54363, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Maximum Number of Words You Can Type", "id": 1264, "frontend_id": 1935, + "difficulty_lvl": 1, + "acceptance": 0.72011, "videos": [], "companies": [ { "name": "Quora", - "score": 6 + "score": 1 } - ] + ], + "rating": 1227 }, { "title": "Remove Zero Sum Consecutive Nodes from Linked List", "id": 1267, "frontend_id": 1171, + "rating": 1782, + "difficulty_lvl": 2, + "acceptance": 0.43236, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -35190,41 +38351,65 @@ "title": "Market Analysis I", "id": 1268, "frontend_id": 1158, - "videos": [] + "rating": 1573, + "difficulty_lvl": 2, + "acceptance": 0.58111, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Market Analysis II", "id": 1269, "frontend_id": 1159, - "videos": [] + "rating": 1854, + "difficulty_lvl": 3, + "acceptance": 0.57294, + "videos": [], + "companies": [] }, { "title": "Dinner Plate Stacks", "id": 1270, "frontend_id": 1172, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.32875, + "videos": [], + "companies": [], + "rating": 2110 }, { "title": "Web Crawler", "id": 1271, "frontend_id": 1236, - "videos": [] + "rating": 1384, + "difficulty_lvl": 2, + "acceptance": 0.67495, + "videos": [], + "companies": [] }, { "title": "Invalid Transactions", "id": 1272, "frontend_id": 1169, - "videos": [] + "rating": 1659, + "difficulty_lvl": 2, + "acceptance": 0.31065, + "videos": [], + "companies": [] }, { "title": "Compare Strings by Frequency of the Smallest Character", "id": 1273, "frontend_id": 1170, + "rating": 1432, + "difficulty_lvl": 2, + "acceptance": 0.61684, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -35232,11 +38417,14 @@ "title": "Number of Days Between Two Dates", "id": 1274, "frontend_id": 1360, + "rating": 1422, + "difficulty_lvl": 1, + "acceptance": 0.48607, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 5 } ] }, @@ -35244,23 +38432,32 @@ "title": "Validate Binary Tree Nodes", "id": 1275, "frontend_id": 1361, + "rating": 1465, + "difficulty_lvl": 2, + "acceptance": 0.39403, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Closest Divisors", "id": 1276, "frontend_id": 1362, + "rating": 1534, + "difficulty_lvl": 2, + "acceptance": 0.60189, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } ] }, @@ -35268,67 +38465,92 @@ "title": "Largest Multiple of Three", "id": 1277, "frontend_id": 1363, - "videos": [] + "rating": 1823, + "difficulty_lvl": 3, + "acceptance": 0.33024, + "videos": [], + "companies": [] }, { "title": "Product Price at a Given Date", "id": 1278, "frontend_id": 1164, - "videos": [] + "rating": 1979, + "difficulty_lvl": 2, + "acceptance": 0.60311, + "videos": [], + "companies": [] }, { "title": "Prime Arrangements", "id": 1279, "frontend_id": 1175, + "difficulty_lvl": 1, + "acceptance": 0.55219, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } - ] + ], + "rating": 1489 }, { "title": "Diet Plan Performance", "id": 1280, "frontend_id": 1176, + "difficulty_lvl": 1, + "acceptance": 0.52907, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } - ] + ], + "rating": 1398 }, { "title": "Can Make Palindrome from Substring", "id": 1281, "frontend_id": 1177, - "videos": [] + "rating": 1848, + "difficulty_lvl": 2, + "acceptance": 0.38366, + "videos": [], + "companies": [] }, { "title": "Number of Valid Words for Each Puzzle", "id": 1282, "frontend_id": 1178, - "videos": [] + "rating": 2234, + "difficulty_lvl": 3, + "acceptance": 0.4632, + "videos": [], + "companies": [] }, { "title": "Reformat Date", "id": 1283, "frontend_id": 1507, + "rating": 1284, + "difficulty_lvl": 1, + "acceptance": 0.63544, "videos": [], "companies": [ { "name": "Expedia", - "score": 10 + "score": 14 }, { "name": "tiktok", - "score": 7 + "score": 10 }, { "name": "Walmart Global Tech", - "score": 1 + "score": 2 } ] }, @@ -35336,11 +38558,14 @@ "title": "Four Divisors", "id": 1284, "frontend_id": 1390, + "rating": 1478, + "difficulty_lvl": 2, + "acceptance": 0.41275, "videos": [], "companies": [ { "name": "Capital One", - "score": 6 + "score": 1 } ] }, @@ -35348,29 +38573,39 @@ "title": "Balance a Binary Search Tree", "id": 1285, "frontend_id": 1382, + "difficulty_lvl": 2, + "acceptance": 0.80851, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 11 } - ] + ], + "rating": 1541 }, { "title": "Constrained Subsequence Sum", "id": 1286, "frontend_id": 1425, - "videos": [] + "rating": 2032, + "difficulty_lvl": 3, + "acceptance": 0.47679, + "videos": [], + "companies": [] }, { "title": "Distance Between Bus Stops", "id": 1287, "frontend_id": 1184, + "rating": 1234, + "difficulty_lvl": 1, + "acceptance": 0.53822, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -35378,17 +38613,24 @@ "title": "Maximum Subarray Sum with One Deletion", "id": 1288, "frontend_id": 1186, - "videos": [] + "rating": 1799, + "difficulty_lvl": 2, + "acceptance": 0.41616, + "videos": [], + "companies": [] }, { "title": "Day of the Week", "id": 1289, "frontend_id": 1185, + "rating": 1382, + "difficulty_lvl": 1, + "acceptance": 0.57261, "videos": [], "companies": [ { "name": "Apple", - "score": 10 + "score": 2 }, { "name": "United Health Group", @@ -35400,29 +38642,44 @@ "title": "Make Array Strictly Increasing", "id": 1290, "frontend_id": 1187, - "videos": [] + "rating": 2316, + "difficulty_lvl": 3, + "acceptance": 0.59156, + "videos": [], + "companies": [] }, { "title": "Immediate Food Delivery I", "id": 1291, "frontend_id": 1173, - "videos": [] + "rating": 1374, + "difficulty_lvl": 1, + "acceptance": 0.81721, + "videos": [], + "companies": [] }, { "title": "Immediate Food Delivery II", "id": 1292, "frontend_id": 1174, - "videos": [] + "rating": 1735, + "difficulty_lvl": 2, + "acceptance": 0.54858, + "videos": [], + "companies": [] }, { "title": "Three Consecutive Odds", "id": 1293, "frontend_id": 1550, + "rating": 1222, + "difficulty_lvl": 1, + "acceptance": 0.63099, "videos": [], "companies": [ { "name": "DJI", - "score": 6 + "score": 1 } ] }, @@ -35430,30 +38687,44 @@ "title": "Range Frequency Queries", "id": 1294, "frontend_id": 2080, + "difficulty_lvl": 2, + "acceptance": 0.39071, "videos": [], "companies": [ { "name": "Quora", - "score": 6 + "score": 1 } - ] + ], + "rating": 1702 }, { "title": "Minimum Garden Perimeter to Collect Enough Apples", "id": 1295, "frontend_id": 1954, - "videos": [] + "rating": 1759, + "difficulty_lvl": 2, + "acceptance": 0.536, + "videos": [], + "companies": [] }, { "title": "Kth Ancestor of a Tree Node", "id": 1296, "frontend_id": 1483, - "videos": [] + "rating": 2115, + "difficulty_lvl": 3, + "acceptance": 0.3379, + "videos": [], + "companies": [] }, { "title": "Maximum Number of Balloons", "id": 1297, "frontend_id": 1189, + "rating": 1182, + "difficulty_lvl": 1, + "acceptance": 0.60472, "videos": [ { "embedded_url": "https://www.youtube.com/embed/G9xeB2-7PqY", @@ -35463,23 +38734,37 @@ "companies": [ { "name": "Adobe", - "score": 6 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Reverse Substrings Between Each Pair of Parentheses", "id": 1298, "frontend_id": 1190, - "videos": [], + "rating": 1486, + "difficulty_lvl": 2, + "acceptance": 0.65961, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/n_pCJmg-RyU", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 }, { "name": "Paypal", - "score": 6 + "score": 2 } ] }, @@ -35487,29 +38772,45 @@ "title": "K-Concatenation Maximum Sum", "id": 1299, "frontend_id": 1191, - "videos": [] + "rating": 1748, + "difficulty_lvl": 2, + "acceptance": 0.23646, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Critical Connections in a Network", "id": 1300, "frontend_id": 1192, - "videos": [] + "rating": 2085, + "difficulty_lvl": 3, + "acceptance": 0.55098, + "videos": [], + "companies": [] }, { "title": "Reformat Department Table", "id": 1301, "frontend_id": 1179, - "videos": [] + "rating": 1853, + "difficulty_lvl": 1, + "acceptance": 0.79347, + "videos": [], + "companies": [] }, { "title": "Delete Characters to Make Fancy String", "id": 1302, "frontend_id": 1957, + "rating": 1358, + "difficulty_lvl": 1, + "acceptance": 0.56809, "videos": [], "companies": [ { "name": "Wayfair", - "score": 6 + "score": 1 } ] }, @@ -35517,48 +38818,63 @@ "title": "Minimum Moves to Reach Target Score", "id": 1303, "frontend_id": 2139, + "difficulty_lvl": 2, + "acceptance": 0.49213, "videos": [], "companies": [ { "name": "Wayfair", - "score": 6 + "score": 1 } - ] + ], + "rating": 1417 }, { "title": "Longest Happy String", "id": 1304, "frontend_id": 1405, + "rating": 1821, + "difficulty_lvl": 2, + "acceptance": 0.57335, "videos": [ { "embedded_url": "https://www.youtube.com/embed/8u-H6O_XQKE", "channel": "NeetCode" } - ] + ], + "companies": [] }, { "title": "Number of Visible People in a Queue", "id": 1305, "frontend_id": 1944, - "videos": [] + "rating": 2105, + "difficulty_lvl": 3, + "acceptance": 0.68393, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Minimum Absolute Difference", "id": 1306, "frontend_id": 1200, + "rating": 1199, + "difficulty_lvl": 1, + "acceptance": 0.6953, "videos": [], "companies": [ { "name": "Salesforce", - "score": 10 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "JPMorgan", - "score": 1 + "score": 2 } ] }, @@ -35566,29 +38882,44 @@ "title": "Ugly Number III", "id": 1307, "frontend_id": 1201, - "videos": [] + "rating": 2039, + "difficulty_lvl": 2, + "acceptance": 0.29191, + "videos": [], + "companies": [] }, { "title": "Smallest String With Swaps", "id": 1308, "frontend_id": 1202, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.57887, + "videos": [], + "companies": [], + "rating": 1855 }, { "title": "Sort Items by Groups Respecting Dependencies", "id": 1309, "frontend_id": 1203, - "videos": [] + "rating": 2419, + "difficulty_lvl": 3, + "acceptance": 0.51539, + "videos": [], + "companies": [] }, { "title": "Watering Plants", "id": 1310, "frontend_id": 2079, + "rating": 1321, + "difficulty_lvl": 2, + "acceptance": 0.79523, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -35596,17 +38927,24 @@ "title": "Largest Magic Square", "id": 1311, "frontend_id": 1895, - "videos": [] + "rating": 1781, + "difficulty_lvl": 2, + "acceptance": 0.51955, + "videos": [], + "companies": [] }, { "title": "Count Artifacts That Can Be Extracted", "id": 1312, "frontend_id": 2201, + "rating": 1525, + "difficulty_lvl": 2, + "acceptance": 0.55679, "videos": [], "companies": [ { "name": "IMC", - "score": 6 + "score": 1 } ] }, @@ -35614,62 +38952,83 @@ "title": "Count Ways to Build Rooms in an Ant Colony", "id": 1313, "frontend_id": 1916, - "videos": [] + "rating": 2486, + "difficulty_lvl": 3, + "acceptance": 0.49535, + "videos": [], + "companies": [] }, { "title": "Fizz Buzz Multithreaded", "id": 1316, "frontend_id": 1195, - "videos": [] + "rating": 1837, + "difficulty_lvl": 2, + "acceptance": 0.72737, + "videos": [], + "companies": [] }, { "title": "Monthly Transactions I", "id": 1317, "frontend_id": 1193, - "videos": [] + "rating": 1278, + "difficulty_lvl": 2, + "acceptance": 0.61814, + "videos": [], + "companies": [] }, { "title": "Tournament Winners", "id": 1318, "frontend_id": 1194, - "videos": [] + "rating": 1383, + "difficulty_lvl": 3, + "acceptance": 0.49697, + "videos": [], + "companies": [] }, { "title": "Unique Number of Occurrences", "id": 1319, "frontend_id": 1207, + "rating": 1196, + "difficulty_lvl": 1, + "acceptance": 0.73924, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 5 }, { "name": "Adobe", - "score": 10 + "score": 5 }, { "name": "Facebook", - "score": 7 + "score": 4 }, { "name": "Apple", - "score": 7 - }, - { - "name": "Bloomberg", "score": 4 }, { - "name": "Google", - "score": 1 + "name": "Bloomberg", + "score": 3 } + ], + "languages": [ + "java" ] }, { "title": "Remove All Adjacent Duplicates in String II", "id": 1320, "frontend_id": 1209, + "rating": 1542, + "difficulty_lvl": 2, + "acceptance": 0.56478, "videos": [ { "embedded_url": "https://www.youtube.com/embed/w6LcypDgC4w", @@ -35679,60 +39038,74 @@ "companies": [ { "name": "Bloomberg", - "score": 10 + "score": 26 }, { "name": "Amazon", - "score": 3 + "score": 8 }, { "name": "Facebook", - "score": 3 + "score": 7 }, { "name": "Apple", - "score": 1 + "score": 3 }, { "name": "Goldman Sachs", - "score": 1 - }, - { - "name": "Microsoft", - "score": 1 - }, - { - "name": "Spotify", - "score": 1 - }, - { - "name": "Visa", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Get Equal Substrings Within Budget", "id": 1321, "frontend_id": 1208, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.49473, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/3lsT1Le526U", + "channel": "NeetCodeIO" + } + ], + "companies": [], + "rating": 1497 }, { "title": "Minimum Moves to Reach Target with Rotations", "id": 1322, "frontend_id": 1210, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.49428, + "videos": [], + "companies": [], + "rating": 2022 }, { "title": "Where Will the Ball Fall", "id": 1324, "frontend_id": 1706, - "videos": [] + "rating": 1765, + "difficulty_lvl": 2, + "acceptance": 0.71605, + "videos": [], + "companies": [] }, { "title": "Path with Maximum Probability", "id": 1325, "frontend_id": 1514, + "rating": 1846, + "difficulty_lvl": 2, + "acceptance": 0.5454, "videos": [ { "embedded_url": "https://www.youtube.com/embed/kPsDTGcrzGM", @@ -35742,19 +39115,28 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 5 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Sum of Floored Pairs", "id": 1326, "frontend_id": 1862, + "rating": 2170, + "difficulty_lvl": 3, + "acceptance": 0.28425, "videos": [], "companies": [ { "name": "Rakuten", - "score": 6 + "score": 1 } ] }, @@ -35762,35 +39144,58 @@ "title": "Last Person to Fit in the Bus", "id": 1327, "frontend_id": 1204, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.69332, + "videos": [], + "companies": [] }, { "title": "Monthly Transactions II", "id": 1328, "frontend_id": 1205, - "videos": [] + "rating": 1474, + "difficulty_lvl": 2, + "acceptance": 0.42352, + "videos": [], + "companies": [] }, { "title": "Minimum Cost to Move Chips to The Same Position", "id": 1329, "frontend_id": 1217, - "videos": [] + "rating": 1408, + "difficulty_lvl": 1, + "acceptance": 0.71799, + "videos": [], + "companies": [] }, { "title": "Longest Arithmetic Subsequence of Given Difference", "id": 1330, "frontend_id": 1218, - "videos": [] + "rating": 1597, + "difficulty_lvl": 2, + "acceptance": 0.55139, + "videos": [], + "companies": [] }, { "title": "Path with Maximum Gold", "id": 1331, "frontend_id": 1219, - "videos": [], + "rating": 1663, + "difficulty_lvl": 2, + "acceptance": 0.63646, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/I1wllM_pozY", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "tiktok", - "score": 6 + "score": 2 } ] }, @@ -35798,112 +39203,175 @@ "title": "Count Vowels Permutation", "id": 1332, "frontend_id": 1220, + "rating": 1730, + "difficulty_lvl": 3, + "acceptance": 0.59843, "videos": [ { "embedded_url": "https://www.youtube.com/embed/VUVpTZVa7Ls", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Sort the Jumbled Numbers", "id": 1333, "frontend_id": 2191, - "videos": [] + "rating": 1496, + "difficulty_lvl": 2, + "acceptance": 0.45815, + "videos": [], + "companies": [] }, { "title": "Sum of Numbers With Units Digit K", "id": 1334, "frontend_id": 2310, - "videos": [] + "rating": 1559, + "difficulty_lvl": 2, + "acceptance": 0.26104, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Maximum Candies Allocated to K Children", "id": 1335, "frontend_id": 2226, - "videos": [] + "rating": 1646, + "difficulty_lvl": 2, + "acceptance": 0.37228, + "videos": [], + "companies": [] }, { "title": "Maximum Product of the Length of Two Palindromic Substrings", "id": 1336, "frontend_id": 1960, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.2985, + "videos": [], + "companies": [], + "rating": 2691 }, { "title": "Design Skiplist", "id": 1337, "frontend_id": 1206, - "videos": [] + "rating": 1225, + "difficulty_lvl": 3, + "acceptance": 0.60259, + "videos": [], + "companies": [] }, { "title": "Queries Quality and Percentage", "id": 1338, "frontend_id": 1211, - "videos": [] + "rating": 1303, + "difficulty_lvl": 1, + "acceptance": 0.6646, + "videos": [], + "companies": [] }, { "title": "Team Scores in Football Tournament", "id": 1339, "frontend_id": 1212, - "videos": [] + "rating": 1675, + "difficulty_lvl": 2, + "acceptance": 0.56408, + "videos": [], + "companies": [] }, { "title": "The Dining Philosophers", "id": 1340, "frontend_id": 1226, - "videos": [] + "rating": 1866, + "difficulty_lvl": 2, + "acceptance": 0.54836, + "videos": [], + "companies": [] }, { "title": "Split a String in Balanced Strings", "id": 1341, "frontend_id": 1221, + "difficulty_lvl": 1, + "acceptance": 0.85466, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Bloomberg", - "score": 6 + "score": 2 }, { "name": "Walmart Global Tech", - "score": 6 + "score": 2 }, { "name": "Adobe", - "score": 6 + "score": 2 } - ] + ], + "rating": 1220 }, { "title": "Queens That Can Attack the King", "id": 1342, "frontend_id": 1222, - "videos": [] + "rating": 1392, + "difficulty_lvl": 2, + "acceptance": 0.71805, + "videos": [], + "companies": [] }, { "title": "Dice Roll Simulation", "id": 1343, "frontend_id": 1223, - "videos": [] + "rating": 2008, + "difficulty_lvl": 3, + "acceptance": 0.48711, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Maximum Equal Frequency", "id": 1344, "frontend_id": 1224, - "videos": [] + "rating": 2051, + "difficulty_lvl": 3, + "acceptance": 0.37089, + "videos": [], + "companies": [] }, { "title": "Perform String Shifts", "id": 1345, "frontend_id": 1427, + "rating": 1810, + "difficulty_lvl": 1, + "acceptance": 0.54424, "videos": [], "companies": [ { "name": "Goldman Sachs", - "score": 6 + "score": 1 } ] }, @@ -35911,29 +39379,44 @@ "title": "Maximize the Topmost Element After K Moves", "id": 1346, "frontend_id": 2202, - "videos": [] + "rating": 1717, + "difficulty_lvl": 2, + "acceptance": 0.22795, + "videos": [], + "companies": [] }, { "title": "Distance to a Cycle in Undirected Graph", "id": 1347, "frontend_id": 2204, - "videos": [] + "rating": 1331, + "difficulty_lvl": 3, + "acceptance": 0.70123, + "videos": [], + "companies": [] }, { "title": "Maximum Score Of Spliced Array", "id": 1348, "frontend_id": 2321, - "videos": [] + "rating": 1791, + "difficulty_lvl": 3, + "acceptance": 0.56039, + "videos": [], + "companies": [] }, { "title": "Check If It Is a Straight Line", "id": 1349, "frontend_id": 1232, + "rating": 1247, + "difficulty_lvl": 1, + "acceptance": 0.40013, "videos": [], "companies": [ { "name": "Microsoft", - "score": 10 + "score": 2 }, { "name": "Palantir Technologies", @@ -35945,59 +39428,100 @@ "title": "Remove Sub-Folders from the Filesystem", "id": 1350, "frontend_id": 1233, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.65667, + "videos": [], + "companies": [], + "rating": 1545 }, { "title": "Replace the Substring for Balanced String", "id": 1351, "frontend_id": 1234, - "videos": [] + "rating": 1878, + "difficulty_lvl": 2, + "acceptance": 0.37506, + "videos": [], + "companies": [] }, { "title": "Maximum Profit in Job Scheduling", "id": 1352, "frontend_id": 1235, - "videos": [] + "rating": 2023, + "difficulty_lvl": 3, + "acceptance": 0.53347, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Find Resultant Array After Removing Anagrams", "id": 1353, "frontend_id": 2273, - "videos": [] + "rating": 1295, + "difficulty_lvl": 1, + "acceptance": 0.57823, + "videos": [], + "companies": [] }, { "title": "Find Players With Zero or One Losses", "id": 1354, "frontend_id": 2225, - "videos": [] + "rating": 1316, + "difficulty_lvl": 2, + "acceptance": 0.71719, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Minimum Deletions to Make Array Beautiful", "id": 1355, "frontend_id": 2216, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.47121, + "videos": [], + "companies": [], + "rating": 1510 }, { "title": "Minimum Number of Moves to Make Palindrome", "id": 1356, "frontend_id": 2193, - "videos": [] + "rating": 2091, + "difficulty_lvl": 3, + "acceptance": 0.50991, + "videos": [], + "companies": [] }, { "title": "Report Contiguous Dates", "id": 1357, "frontend_id": 1225, - "videos": [] + "rating": 1430, + "difficulty_lvl": 3, + "acceptance": 0.60173, + "videos": [], + "companies": [] }, { "title": "Find Positive Integer Solution for a Given Equation", "id": 1358, "frontend_id": 1237, + "rating": 1405, + "difficulty_lvl": 2, + "acceptance": 0.69276, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -36005,62 +39529,95 @@ "title": "Circular Permutation in Binary Representation", "id": 1359, "frontend_id": 1238, - "videos": [] + "rating": 1775, + "difficulty_lvl": 2, + "acceptance": 0.69142, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Maximum Length of a Concatenated String with Unique Characters", "id": 1360, "frontend_id": 1239, + "rating": 1720, + "difficulty_lvl": 2, + "acceptance": 0.52174, "videos": [ { "embedded_url": "https://www.youtube.com/embed/d4SPuvkaeoo", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "python" ] }, { "title": "Tiling a Rectangle with the Fewest Squares", "id": 1361, "frontend_id": 1240, - "videos": [] + "rating": 2242, + "difficulty_lvl": 3, + "acceptance": 0.54096, + "videos": [], + "companies": [] }, { "title": "Airplane Seat Assignment Probability", "id": 1362, "frontend_id": 1227, - "videos": [] + "rating": 1534, + "difficulty_lvl": 2, + "acceptance": 0.6585, + "videos": [], + "companies": [] }, { "title": "Greatest English Letter in Upper and Lower Case", "id": 1363, "frontend_id": 2309, - "videos": [] + "rating": 1243, + "difficulty_lvl": 1, + "acceptance": 0.68936, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Tuple with Same Product", "id": 1364, "frontend_id": 1726, + "difficulty_lvl": 2, + "acceptance": 0.60747, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } - ] + ], + "rating": 1530 }, { "title": "First Unique Number", "id": 1366, "frontend_id": 1429, + "rating": 1626, + "difficulty_lvl": 2, + "acceptance": 0.53159, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Facebook", - "score": 1 + "score": 2 } ] }, @@ -36068,59 +39625,80 @@ "title": "Maximum Height by Stacking Cuboids ", "id": 1367, "frontend_id": 1691, - "videos": [] + "rating": 2172, + "difficulty_lvl": 3, + "acceptance": 0.55521, + "videos": [], + "companies": [] }, { "title": "Web Crawler Multithreaded", "id": 1368, "frontend_id": 1242, - "videos": [] + "rating": 2069, + "difficulty_lvl": 2, + "acceptance": 0.48703, + "videos": [], + "companies": [] }, { "title": "Minimum Swaps to Make Strings Equal", "id": 1369, "frontend_id": 1247, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.64275, + "videos": [], + "companies": [], + "rating": 1597 }, { "title": "Count Number of Nice Subarrays", "id": 1370, "frontend_id": 1248, - "videos": [] + "rating": 1624, + "difficulty_lvl": 2, + "acceptance": 0.62597, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/4zNK0rhFfcA", + "channel": "NeetCodeIO" + } + ], + "companies": [] }, { "title": "Minimum Remove to Make Valid Parentheses", "id": 1371, "frontend_id": 1249, - "videos": [], + "rating": 1657, + "difficulty_lvl": 2, + "acceptance": 0.66022, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/mgQ4O9iUEbg", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Facebook", - "score": 10 + "score": 282 }, { "name": "Bloomberg", - "score": 1 + "score": 8 }, { "name": "Amazon", - "score": 1 + "score": 6 }, { "name": "Microsoft", - "score": 1 + "score": 4 }, { "name": "Google", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 - }, - { - "name": "Snapchat", - "score": 1 + "score": 2 } ] }, @@ -36128,12 +39706,19 @@ "title": "Check If It Is a Good Array", "id": 1372, "frontend_id": 1250, - "videos": [] + "rating": 1983, + "difficulty_lvl": 3, + "acceptance": 0.58848, + "videos": [], + "companies": [] }, { "title": "Leftmost Column with at Least a One", "id": 1374, "frontend_id": 1428, + "rating": 1164, + "difficulty_lvl": 2, + "acceptance": 0.53544, "videos": [], "companies": [ { @@ -36146,7 +39731,7 @@ }, { "name": "Google", - "score": 1 + "score": 2 } ] }, @@ -36154,83 +39739,134 @@ "title": "Find Palindrome With Fixed Length", "id": 1375, "frontend_id": 2217, - "videos": [] + "rating": 1822, + "difficulty_lvl": 2, + "acceptance": 0.33785, + "videos": [], + "companies": [] }, { "title": "Selling Pieces of Wood", "id": 1376, "frontend_id": 2312, - "videos": [] + "rating": 2363, + "difficulty_lvl": 3, + "acceptance": 0.48859, + "videos": [], + "companies": [] }, { "title": "Number of Comments per Post", "id": 1377, "frontend_id": 1241, - "videos": [] + "rating": 1824, + "difficulty_lvl": 1, + "acceptance": 0.65773, + "videos": [], + "companies": [] }, { "title": "Cells with Odd Values in a Matrix", "id": 1378, "frontend_id": 1252, + "difficulty_lvl": 1, + "acceptance": 0.78415, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } - ] + ], + "rating": 1283 }, { "title": "Reconstruct a 2-Row Binary Matrix", "id": 1379, "frontend_id": 1253, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.44869, + "videos": [], + "companies": [], + "rating": 1506 }, { "title": "Number of Closed Islands", "id": 1380, "frontend_id": 1254, + "rating": 1659, + "difficulty_lvl": 2, + "acceptance": 0.66772, "videos": [ { "embedded_url": "https://www.youtube.com/embed/X8k48xek8g8", "channel": "NeetCodeIO" } - ] + ], + "companies": [] }, { "title": "Maximum Score Words Formed by Letters", "id": 1381, "frontend_id": 1255, - "videos": [] + "rating": 1882, + "difficulty_lvl": 3, + "acceptance": 0.72433, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/1cV8Hq9IAk4", + "channel": "NeetCodeIO" + } + ], + "companies": [] }, { "title": "Calculate Amount Paid in Taxes", "id": 1382, "frontend_id": 2303, - "videos": [] + "rating": 1284, + "difficulty_lvl": 1, + "acceptance": 0.64254, + "videos": [], + "companies": [] }, { "title": "Number of Single Divisor Triplets", "id": 1383, "frontend_id": 2198, - "videos": [] + "rating": 2091, + "difficulty_lvl": 2, + "acceptance": 0.56356, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Maximum Font to Fit a Sentence in a Screen", "id": 1384, "frontend_id": 1618, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.60329, + "videos": [], + "companies": [] }, { "title": "Number of Ways to Build House of Cards", "id": 1385, "frontend_id": 2189, - "videos": [] + "rating": 1235, + "difficulty_lvl": 2, + "acceptance": 0.63277, + "videos": [], + "companies": [] }, { "title": "Shift 2D Grid", "id": 1386, "frontend_id": 1260, + "rating": 1337, + "difficulty_lvl": 1, + "acceptance": 0.67597, "videos": [ { "embedded_url": "https://www.youtube.com/embed/nJYFh4Dl-as", @@ -36240,19 +39876,27 @@ "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Find Elements in a Contaminated Binary Tree", "id": 1387, "frontend_id": 1261, + "rating": 1440, + "difficulty_lvl": 2, + "acceptance": 0.76602, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -36260,29 +39904,44 @@ "title": "Greatest Sum Divisible by Three", "id": 1388, "frontend_id": 1262, - "videos": [] + "rating": 1762, + "difficulty_lvl": 2, + "acceptance": 0.50677, + "videos": [], + "companies": [] }, { "title": "Minimum Moves to Move a Box to Their Target Location", "id": 1389, "frontend_id": 1263, - "videos": [] + "rating": 2297, + "difficulty_lvl": 3, + "acceptance": 0.49097, + "videos": [], + "companies": [] }, { "title": "Average Selling Price", "id": 1390, "frontend_id": 1251, - "videos": [] + "rating": 1478, + "difficulty_lvl": 1, + "acceptance": 0.76337, + "videos": [], + "companies": [] }, { "title": "Counting Elements", "id": 1391, "frontend_id": 1426, + "rating": 1746, + "difficulty_lvl": 1, + "acceptance": 0.59724, "videos": [], "companies": [ { "name": "DRW", - "score": 6 + "score": 1 } ] }, @@ -36290,35 +39949,55 @@ "title": "Find the Difference of Two Arrays", "id": 1392, "frontend_id": 2215, + "rating": 1208, + "difficulty_lvl": 1, + "acceptance": 0.78349, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Maximum Value of K Coins From Piles", "id": 1393, "frontend_id": 2218, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.61156, + "videos": [], + "companies": [], + "rating": 2158 }, { "title": "Minimum Path Cost in a Grid", "id": 1394, "frontend_id": 2304, - "videos": [] + "rating": 1658, + "difficulty_lvl": 2, + "acceptance": 0.65814, + "videos": [], + "companies": [] }, { "title": "Minimum Time Visiting All Points", "id": 1395, "frontend_id": 1266, + "rating": 1303, + "difficulty_lvl": 1, + "acceptance": 0.7902, "videos": [], "companies": [ { "name": "Apple", - "score": 6 + "score": 3 } ] }, @@ -36326,18 +40005,25 @@ "title": "Count Servers that Communicate", "id": 1396, "frontend_id": 1267, + "rating": 1375, + "difficulty_lvl": 2, + "acceptance": 0.59853, "videos": [], "companies": [ { "name": "Microsoft", "score": 6 } - ] + ], + "languages": [] }, { "title": "Search Suggestions System", "id": 1397, "frontend_id": 1268, + "rating": 1573, + "difficulty_lvl": 2, + "acceptance": 0.65969, "videos": [ { "embedded_url": "https://www.youtube.com/embed/D4T2N0yAr20", @@ -36347,89 +40033,113 @@ "companies": [ { "name": "Amazon", - "score": 10 + "score": 68 }, { "name": "Google", - "score": 1 + "score": 3 }, { "name": "Facebook", - "score": 1 + "score": 3 }, { "name": "Oracle", - "score": 1 + "score": 3 }, { "name": "Apple", - "score": 1 - }, - { - "name": "Adobe", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "java" ] }, { "title": "Number of Ways to Stay in the Same Place After Some Steps", "id": 1398, "frontend_id": 1269, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.43489, + "videos": [], + "companies": [], + "rating": 1854, + "languages": [ + "java" + ] }, { "title": "Page Recommendations", "id": 1399, "frontend_id": 1264, - "videos": [] + "rating": 1341, + "difficulty_lvl": 2, + "acceptance": 0.6602, + "videos": [], + "companies": [] }, { "title": "Find Winner on a Tic Tac Toe Game", "id": 1400, "frontend_id": 1275, + "rating": 1337, + "difficulty_lvl": 1, + "acceptance": 0.54168, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 14 }, { "name": "Google", - "score": 8 + "score": 11 }, { "name": "Microsoft", - "score": 7 + "score": 10 }, { "name": "Facebook", - "score": 2 + "score": 4 }, { "name": "Tesla", - "score": 1 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Number of Burgers with No Waste of Ingredients", "id": 1401, "frontend_id": 1276, - "videos": [] + "rating": 1386, + "difficulty_lvl": 2, + "acceptance": 0.50873, + "videos": [], + "companies": [] }, { "title": "Count Square Submatrices with All Ones", "id": 1402, "frontend_id": 1277, + "rating": 1613, + "difficulty_lvl": 2, + "acceptance": 0.7473, "videos": [], "companies": [ { "name": "Google", - "score": 10 + "score": 8 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } ] }, @@ -36437,29 +40147,44 @@ "title": "Palindrome Partitioning III", "id": 1403, "frontend_id": 1278, - "videos": [] + "rating": 1979, + "difficulty_lvl": 3, + "acceptance": 0.60736, + "videos": [], + "companies": [] }, { "title": "Print Immutable Linked List in Reverse", "id": 1404, "frontend_id": 1265, - "videos": [] + "rating": 1397, + "difficulty_lvl": 2, + "acceptance": 0.94199, + "videos": [], + "companies": [] }, { "title": "All People Report to the Given Manager", "id": 1405, "frontend_id": 1270, - "videos": [] + "rating": 1821, + "difficulty_lvl": 2, + "acceptance": 0.86085, + "videos": [], + "companies": [] }, { "title": "Subtract the Product and Sum of Digits of an Integer", "id": 1406, "frontend_id": 1281, + "rating": 1141, + "difficulty_lvl": 1, + "acceptance": 0.8644, "videos": [], "companies": [ { "name": "Uber", - "score": 6 + "score": 5 } ] }, @@ -36467,31 +40192,37 @@ "title": "Group the People Given the Group Size They Belong To", "id": 1407, "frontend_id": 1282, + "difficulty_lvl": 2, + "acceptance": 0.85517, "videos": [], "companies": [ { "name": "Apple", - "score": 6 + "score": 2 }, { "name": "Bloomberg", - "score": 6 + "score": 2 } - ] + ], + "rating": 1267 }, { "title": "Find the Smallest Divisor Given a Threshold", "id": 1408, "frontend_id": 1283, + "rating": 1542, + "difficulty_lvl": 2, + "acceptance": 0.57507, "videos": [], "companies": [ { "name": "Salesforce", - "score": 10 + "score": 3 }, { "name": "Airbnb", - "score": 1 + "score": 2 } ] }, @@ -36499,93 +40230,141 @@ "title": "Minimum Number of Flips to Convert Binary Matrix to Zero Matrix", "id": 1409, "frontend_id": 1284, - "videos": [] + "rating": 1811, + "difficulty_lvl": 3, + "acceptance": 0.719, + "videos": [], + "companies": [] }, { "title": "Traffic Light Controlled Intersection", "id": 1410, "frontend_id": 1279, - "videos": [] + "rating": 1405, + "difficulty_lvl": 1, + "acceptance": 0.73423, + "videos": [], + "companies": [] }, { "title": "Convert Binary Number in a Linked List to Integer", "id": 1411, "frontend_id": 1290, + "rating": 1151, + "difficulty_lvl": 1, + "acceptance": 0.81681, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Oracle", - "score": 6 + "score": 2 } + ], + "languages": [ + "javascript" ] }, { "title": "Maximum Side Length of a Square with Sum Less than or Equal to Threshold", "id": 1413, "frontend_id": 1292, - "videos": [] + "rating": 1735, + "difficulty_lvl": 2, + "acceptance": 0.53398, + "videos": [], + "companies": [] }, { "title": "Shortest Path in a Grid with Obstacles Elimination", "id": 1414, "frontend_id": 1293, - "videos": [] + "rating": 1967, + "difficulty_lvl": 3, + "acceptance": 0.45196, + "videos": [], + "companies": [] }, { "title": "Students and Examinations", "id": 1415, "frontend_id": 1280, - "videos": [] + "rating": 1576, + "difficulty_lvl": 1, + "acceptance": 0.60837, + "videos": [], + "companies": [] }, { "title": "Check if an Array Is Consecutive", "id": 1416, "frontend_id": 2229, - "videos": [] + "rating": 1920, + "difficulty_lvl": 1, + "acceptance": 0.61298, + "videos": [], + "companies": [] }, { "title": "Fair Distribution of Cookies", "id": 1418, "frontend_id": 2305, - "videos": [] + "rating": 1887, + "difficulty_lvl": 2, + "acceptance": 0.69967, + "videos": [], + "companies": [] }, { "title": "Make Array Non-decreasing or Non-increasing", "id": 1419, "frontend_id": 2263, - "videos": [] + "rating": 1690, + "difficulty_lvl": 3, + "acceptance": 0.6549, + "videos": [], + "companies": [] }, { "title": "Find the Start and End Number of Continuous Ranges", "id": 1420, "frontend_id": 1285, - "videos": [] + "rating": 2176, + "difficulty_lvl": 2, + "acceptance": 0.843, + "videos": [], + "companies": [] }, { "title": "Find Numbers with Even Number of Digits", "id": 1421, "frontend_id": 1295, + "difficulty_lvl": 1, + "acceptance": 0.77001, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } - ] + ], + "rating": 1140 }, { "title": "Divide Array in Sets of K Consecutive Numbers", "id": 1422, "frontend_id": 1296, + "rating": 1490, + "difficulty_lvl": 2, + "acceptance": 0.56503, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 4 } ] }, @@ -36593,11 +40372,14 @@ "title": "Maximum Number of Occurrences of a Substring", "id": 1423, "frontend_id": 1297, + "rating": 1748, + "difficulty_lvl": 2, + "acceptance": 0.51845, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -36605,176 +40387,261 @@ "title": "Maximum Candies You Can Get from Boxes", "id": 1424, "frontend_id": 1298, - "videos": [] + "rating": 1825, + "difficulty_lvl": 3, + "acceptance": 0.59404, + "videos": [], + "companies": [] }, { "title": "Weather Type in Each Country", "id": 1425, "frontend_id": 1294, - "videos": [] + "rating": 2032, + "difficulty_lvl": 1, + "acceptance": 0.66884, + "videos": [], + "companies": [] }, { "title": "Find N Unique Integers Sum up to Zero", "id": 1426, "frontend_id": 1304, + "difficulty_lvl": 1, + "acceptance": 0.76699, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 22 } - ] + ], + "rating": 1167 }, { "title": "All Elements in Two Binary Search Trees", "id": 1427, "frontend_id": 1305, + "difficulty_lvl": 2, + "acceptance": 0.79861, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 5 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } - ] + ], + "rating": 1260 }, { "title": "Jump Game III", "id": 1428, "frontend_id": 1306, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.64019, + "videos": [], + "companies": [], + "rating": 1397 }, { "title": "Verbal Arithmetic Puzzle", "id": 1429, "frontend_id": 1307, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.34183, + "videos": [], + "companies": [], + "rating": 2250 }, { "title": "Find the K-Beauty of a Number", "id": 1430, "frontend_id": 2269, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.5811, + "videos": [], + "companies": [], + "rating": 1280 }, { "title": "All Ancestors of a Node in a Directed Acyclic Graph", "id": 1431, "frontend_id": 2192, - "videos": [] + "rating": 1788, + "difficulty_lvl": 2, + "acceptance": 0.5124, + "videos": [], + "companies": [] }, { "title": "Check If a String Is a Valid Sequence from Root to Leaves Path in a Binary Tree", "id": 1432, "frontend_id": 1430, - "videos": [] + "rating": 1427, + "difficulty_lvl": 2, + "acceptance": 0.46541, + "videos": [], + "companies": [] }, { "title": "Encrypt and Decrypt Strings", "id": 1433, "frontend_id": 2227, - "videos": [] + "rating": 1945, + "difficulty_lvl": 3, + "acceptance": 0.39435, + "videos": [], + "companies": [] }, { "title": "Decrypt String from Alphabet to Integer Mapping", "id": 1434, "frontend_id": 1309, - "videos": [] + "rating": 1258, + "difficulty_lvl": 1, + "acceptance": 0.79662, + "videos": [], + "companies": [] }, { "title": "XOR Queries of a Subarray", "id": 1435, "frontend_id": 1310, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.72276, + "videos": [], + "companies": [], + "rating": 1460 }, { "title": "Get Watched Videos by Your Friends", "id": 1436, "frontend_id": 1311, - "videos": [] + "rating": 1653, + "difficulty_lvl": 2, + "acceptance": 0.4641, + "videos": [], + "companies": [] }, { "title": "Minimum Insertion Steps to Make a String Palindrome", "id": 1437, "frontend_id": 1312, - "videos": [] + "rating": 1787, + "difficulty_lvl": 3, + "acceptance": 0.69673, + "videos": [], + "companies": [] }, { "title": "Find the Team Size", "id": 1438, "frontend_id": 1303, - "videos": [] + "rating": 1672, + "difficulty_lvl": 1, + "acceptance": 0.89771, + "videos": [], + "companies": [] }, { "title": "Running Total for Different Genders", "id": 1439, "frontend_id": 1308, - "videos": [] + "rating": 2134, + "difficulty_lvl": 2, + "acceptance": 0.86662, + "videos": [], + "companies": [] }, { "title": "Convert Integer to the Sum of Two No-Zero Integers", "id": 1440, "frontend_id": 1317, + "difficulty_lvl": 1, + "acceptance": 0.54812, "videos": [], "companies": [ { "name": "HRT", - "score": 6 + "score": 1 } - ] + ], + "rating": 1278 }, { "title": "Minimum Flips to Make a OR b Equal to c", "id": 1441, "frontend_id": 1318, - "videos": [] + "rating": 1383, + "difficulty_lvl": 2, + "acceptance": 0.71348, + "videos": [], + "companies": [] }, { "title": "Number of Operations to Make Network Connected", "id": 1442, "frontend_id": 1319, - "videos": [] + "rating": 1633, + "difficulty_lvl": 2, + "acceptance": 0.62357, + "videos": [], + "companies": [] }, { "title": "Minimum Distance to Type a Word Using Two Fingers", "id": 1443, "frontend_id": 1320, - "videos": [] + "rating": 2028, + "difficulty_lvl": 3, + "acceptance": 0.59282, + "videos": [], + "companies": [] }, { "title": "Number of Steps to Reduce a Number to Zero", "id": 1444, "frontend_id": 1342, + "rating": 1164, + "difficulty_lvl": 1, + "acceptance": 0.84848, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 }, { "name": "Apple", - "score": 6 + "score": 2 }, { "name": "Grab", - "score": 6 + "score": 2 } + ], + "languages": [ + "javascript" ] }, { "title": "Number of Sub-arrays of Size K and Average Greater than or Equal to Threshold", "id": 1445, "frontend_id": 1343, + "difficulty_lvl": 2, + "acceptance": 0.6796, "videos": [ { "embedded_url": "https://www.youtube.com/embed/D8B4tKxMTnY", @@ -36784,31 +40651,41 @@ "companies": [ { "name": "LinkedIn", - "score": 6 + "score": 1 } - ] + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" + ], + "rating": 1317 }, { "title": "Angle Between Hands of a Clock", "id": 1446, "frontend_id": 1344, + "rating": 1325, + "difficulty_lvl": 2, + "acceptance": 0.63336, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 11 }, { "name": "Microsoft", - "score": 4 + "score": 5 }, { "name": "Amazon", - "score": 2 + "score": 3 }, { "name": "Oracle", - "score": 1 + "score": 2 } ] }, @@ -36816,19 +40693,22 @@ "title": "Jump Game IV", "id": 1447, "frontend_id": 1345, + "rating": 1810, + "difficulty_lvl": 3, + "acceptance": 0.46727, "videos": [], "companies": [ { "name": "Google", - "score": 10 + "score": 5 }, { "name": "Amazon", - "score": 7 + "score": 4 }, { "name": "tiktok", - "score": 1 + "score": 2 } ] }, @@ -36836,23 +40716,30 @@ "title": "Maximum 69 Number", "id": 1448, "frontend_id": 1323, + "rating": 1194, + "difficulty_lvl": 1, + "acceptance": 0.82061, "videos": [], "companies": [ { "name": "HRT", - "score": 6 + "score": 1 } - ] + ], + "languages": [] }, { "title": "Print Words Vertically", "id": 1449, "frontend_id": 1324, + "rating": 1329, + "difficulty_lvl": 2, + "acceptance": 0.62195, "videos": [], "companies": [ { "name": "Postmates", - "score": 10 + "score": 2 }, { "name": "Microsoft", @@ -36864,11 +40751,19 @@ "title": "Delete Leaves With a Given Value", "id": 1450, "frontend_id": 1325, - "videos": [], + "rating": 1407, + "difficulty_lvl": 2, + "acceptance": 0.7443, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/FqAoYAwbwV8", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -36876,59 +40771,98 @@ "title": "Minimum Number of Taps to Open to Water a Garden", "id": 1451, "frontend_id": 1326, - "videos": [] + "rating": 1885, + "difficulty_lvl": 3, + "acceptance": 0.4733, + "videos": [], + "companies": [] }, { "title": "Restaurant Growth", "id": 1452, "frontend_id": 1321, - "videos": [] + "rating": 1563, + "difficulty_lvl": 2, + "acceptance": 0.60557, + "videos": [], + "companies": [] }, { "title": "Ads Performance", "id": 1453, "frontend_id": 1322, - "videos": [] + "rating": 2202, + "difficulty_lvl": 1, + "acceptance": 0.60128, + "videos": [], + "companies": [] }, { "title": "Remove Palindromic Subsequences", "id": 1454, "frontend_id": 1332, + "difficulty_lvl": 1, + "acceptance": 0.76195, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } - ] + ], + "rating": 1629 }, { "title": "Filter Restaurants by Vegan-Friendly, Price and Distance", "id": 1455, "frontend_id": 1333, - "videos": [] + "rating": 1423, + "difficulty_lvl": 2, + "acceptance": 0.60394, + "videos": [], + "companies": [ + { + "name": "Yelp", + "score": 4 + } + ] }, { "title": "Find the City With the Smallest Number of Neighbors at a Threshold Distance", "id": 1456, "frontend_id": 1334, - "videos": [] + "rating": 1855, + "difficulty_lvl": 2, + "acceptance": 0.57077, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Minimum Difficulty of a Job Schedule", "id": 1457, "frontend_id": 1335, - "videos": [] + "rating": 2035, + "difficulty_lvl": 3, + "acceptance": 0.58365, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Sort Integers by The Number of 1 Bits", "id": 1458, "frontend_id": 1356, + "rating": 1258, + "difficulty_lvl": 1, + "acceptance": 0.73544, "videos": [], "companies": [ { "name": "Infosys", - "score": 6 + "score": 2 } ] }, @@ -36936,27 +40870,33 @@ "title": "Apply Discount Every n Orders", "id": 1459, "frontend_id": 1357, + "difficulty_lvl": 2, + "acceptance": 0.70044, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 1 } - ] + ], + "rating": 1430 }, { "title": "Number of Substrings Containing All Three Characters", "id": 1460, "frontend_id": 1358, + "rating": 1646, + "difficulty_lvl": 2, + "acceptance": 0.64218, "videos": [], "companies": [ { "name": "Microsoft", - "score": 10 + "score": 2 }, { "name": "Adobe", - "score": 10 + "score": 2 }, { "name": "DE Shaw", @@ -36968,23 +40908,38 @@ "title": "Count All Valid Pickup and Delivery Options", "id": 1461, "frontend_id": 1359, - "videos": [] + "rating": 1723, + "difficulty_lvl": 3, + "acceptance": 0.62338, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "List the Products Ordered in a Period", "id": 1462, "frontend_id": 1327, - "videos": [] + "rating": 1693, + "difficulty_lvl": 1, + "acceptance": 0.7285, + "videos": [], + "companies": [], + "languages": [] }, { "title": "The K Weakest Rows in a Matrix", "id": 1463, "frontend_id": 1337, + "rating": 1225, + "difficulty_lvl": 1, + "acceptance": 0.71384, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } ] }, @@ -36992,11 +40947,14 @@ "title": "Reduce Array Size to The Half", "id": 1464, "frontend_id": 1338, + "rating": 1303, + "difficulty_lvl": 2, + "acceptance": 0.69217, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -37004,15 +40962,18 @@ "title": "Maximum Product of Splitted Binary Tree", "id": 1465, "frontend_id": 1339, + "rating": 1675, + "difficulty_lvl": 2, + "acceptance": 0.4774, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 4 }, { "name": "Two Sigma", - "score": 6 + "score": 4 } ] }, @@ -37020,54 +40981,75 @@ "title": "Jump Game V", "id": 1466, "frontend_id": 1340, - "videos": [] + "rating": 1866, + "difficulty_lvl": 3, + "acceptance": 0.62592, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Number of Transactions per Visit", "id": 1467, "frontend_id": 1336, - "videos": [] + "rating": 2357, + "difficulty_lvl": 3, + "acceptance": 0.48285, + "videos": [], + "companies": [] }, { "title": "Check If N and Its Double Exist", "id": 1468, "frontend_id": 1346, + "difficulty_lvl": 1, + "acceptance": 0.36679, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } - ] + ], + "rating": 1225 }, { "title": "Minimum Number of Steps to Make Two Strings Anagram", "id": 1469, "frontend_id": 1347, + "difficulty_lvl": 2, + "acceptance": 0.77934, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 10 + "score": 8 }, { "name": "DoorDash", - "score": 8 + "score": 7 }, { "name": "Twitter", - "score": 1 + "score": 2 }, { "name": "tiktok", - "score": 1 + "score": 2 } + ], + "rating": 1331, + "languages": [ + "java" ] }, { "title": "Tweet Counts Per Frequency", "id": 1470, "frontend_id": 1348, + "rating": 2037, + "difficulty_lvl": 2, + "acceptance": 0.43976, "videos": [], "companies": [ { @@ -37080,11 +41062,14 @@ "title": "Maximum Students Taking Exam", "id": 1471, "frontend_id": 1349, + "rating": 2386, + "difficulty_lvl": 3, + "acceptance": 0.49717, "videos": [], "companies": [ { "name": "SAP", - "score": 6 + "score": 1 } ] }, @@ -37092,27 +41077,34 @@ "title": "Increasing Decreasing String", "id": 1472, "frontend_id": 1370, + "rating": 1369, + "difficulty_lvl": 1, + "acceptance": 0.76528, "videos": [], "companies": [ { "name": "Akuna Capital", - "score": 10 + "score": 8 }, { "name": "Amazon", - "score": 1 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Find the Longest Substring Containing Vowels in Even Counts", "id": 1473, "frontend_id": 1371, + "rating": 2041, + "difficulty_lvl": 2, + "acceptance": 0.63386, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 1 } ] }, @@ -37120,23 +41112,29 @@ "title": "Longest ZigZag Path in a Binary Tree", "id": 1474, "frontend_id": 1372, + "difficulty_lvl": 2, + "acceptance": 0.66903, "videos": [], "companies": [ { "name": "Amazon", "score": 6 } - ] + ], + "rating": 1713 }, { "title": "Maximum Sum BST in Binary Tree", "id": 1475, "frontend_id": 1373, + "rating": 1914, + "difficulty_lvl": 3, + "acceptance": 0.40171, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 3 } ] }, @@ -37144,11 +41142,14 @@ "title": "Count Negative Numbers in a Sorted Matrix", "id": 1476, "frontend_id": 1351, + "rating": 1139, + "difficulty_lvl": 1, + "acceptance": 0.77342, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 } ] }, @@ -37156,11 +41157,14 @@ "title": "Product of the Last K Numbers", "id": 1477, "frontend_id": 1352, + "rating": 1474, + "difficulty_lvl": 2, + "acceptance": 0.50058, "videos": [], "companies": [ { "name": "Google", - "score": 10 + "score": 7 }, { "name": "Amazon", @@ -37168,31 +41172,35 @@ }, { "name": "Apple", - "score": 1 + "score": 2 }, { "name": "Cruise Automation", - "score": 1 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Maximum Number of Events That Can Be Attended", "id": 1478, "frontend_id": 1353, + "rating": 2016, + "difficulty_lvl": 2, + "acceptance": 0.32242, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Salesforce", - "score": 1 + "score": 2 }, { "name": "JPMorgan", - "score": 1 + "score": 2 } ] }, @@ -37200,39 +41208,53 @@ "title": "Construct Target Array With Multiple Sums", "id": 1479, "frontend_id": 1354, + "difficulty_lvl": 3, + "acceptance": 0.36257, "videos": [], "companies": [ { "name": "Quora", - "score": 6 + "score": 3 } - ] + ], + "rating": 2015 }, { "title": "Movie Rating", "id": 1480, "frontend_id": 1341, - "videos": [] + "rating": 1105, + "difficulty_lvl": 2, + "acceptance": 0.45963, + "videos": [], + "companies": [] }, { "title": "Students With Invalid Departments", "id": 1481, "frontend_id": 1350, - "videos": [] + "rating": 1284, + "difficulty_lvl": 1, + "acceptance": 0.89897, + "videos": [], + "companies": [] }, { "title": "How Many Numbers Are Smaller Than the Current Number", "id": 1482, "frontend_id": 1365, + "rating": 1152, + "difficulty_lvl": 1, + "acceptance": 0.86545, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Yahoo", - "score": 6 + "score": 2 } ] }, @@ -37240,23 +41262,26 @@ "title": "Rank Teams by Votes", "id": 1483, "frontend_id": 1366, + "rating": 1626, + "difficulty_lvl": 2, + "acceptance": 0.57712, "videos": [], "companies": [ { "name": "Atlassian", - "score": 10 + "score": 18 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Coursera", - "score": 1 + "score": 2 }, { "name": "Square", - "score": 1 + "score": 2 } ] }, @@ -37264,33 +41289,43 @@ "title": "Linked List in Binary Tree", "id": 1484, "frontend_id": 1367, + "difficulty_lvl": 2, + "acceptance": 0.43737, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Microsoft", - "score": 6 + "score": 2 } - ] + ], + "rating": 1650 }, { "title": "Minimum Cost to Make at Least One Valid Path in a Grid", "id": 1485, "frontend_id": 1368, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.61704, + "videos": [], + "companies": [], + "rating": 2069 }, { "title": "Find the Distance Value Between Two Arrays", "id": 1486, "frontend_id": 1385, + "rating": 1235, + "difficulty_lvl": 1, + "acceptance": 0.67079, "videos": [], "companies": [ { "name": "Uber", - "score": 6 + "score": 2 } ] }, @@ -37298,15 +41333,18 @@ "title": "Cinema Seat Allocation", "id": 1487, "frontend_id": 1386, + "rating": 1637, + "difficulty_lvl": 2, + "acceptance": 0.41114, "videos": [], "companies": [ { "name": "Microsoft", - "score": 10 + "score": 17 }, { "name": "Amazon", - "score": 1 + "score": 2 } ] }, @@ -37314,15 +41352,18 @@ "title": "Sort Integers by The Power Value", "id": 1488, "frontend_id": 1387, + "rating": 1507, + "difficulty_lvl": 2, + "acceptance": 0.70019, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 }, { "name": "Qualtrics", - "score": 6 + "score": 2 } ] }, @@ -37330,11 +41371,14 @@ "title": "Pizza With 3n Slices", "id": 1489, "frontend_id": 1388, + "rating": 2410, + "difficulty_lvl": 3, + "acceptance": 0.50792, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -37342,49 +41386,65 @@ "title": "Generate a String With Characters That Have Odd Counts", "id": 1490, "frontend_id": 1374, + "difficulty_lvl": 1, + "acceptance": 0.77556, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } - ] + ], + "rating": 1164 }, { "title": "Number of Times Binary String Is Prefix-Aligned", "id": 1491, "frontend_id": 1375, - "videos": [] + "rating": 1439, + "difficulty_lvl": 2, + "acceptance": 0.65817, + "videos": [], + "companies": [] }, { "title": "Time Needed to Inform All Employees", "id": 1492, "frontend_id": 1376, + "rating": 1561, + "difficulty_lvl": 2, + "acceptance": 0.6025, "videos": [], "companies": [ { "name": "Google", - "score": 10 + "score": 11 }, { "name": "Amazon", - "score": 1 + "score": 6 } + ], + "languages": [ + "java" ] }, { "title": "Frog Position After T Seconds", "id": 1493, "frontend_id": 1377, + "rating": 1824, + "difficulty_lvl": 3, + "acceptance": 0.35557, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -37392,23 +41452,33 @@ "title": "Activity Participants", "id": 1494, "frontend_id": 1355, - "videos": [] + "rating": 2082, + "difficulty_lvl": 2, + "acceptance": 0.73232, + "videos": [], + "companies": [] }, { "title": "Number of Trusted Contacts of a Customer", "id": 1495, "frontend_id": 1364, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.76673, + "videos": [], + "companies": [] }, { "title": "Lucky Numbers in a Matrix", "id": 1496, "frontend_id": 1380, + "rating": 1208, + "difficulty_lvl": 1, + "acceptance": 0.70745, "videos": [], "companies": [ { "name": "Apple", - "score": 6 + "score": 2 } ] }, @@ -37416,11 +41486,14 @@ "title": "Design a Stack With Increment Operation", "id": 1497, "frontend_id": 1381, + "rating": 1286, + "difficulty_lvl": 2, + "acceptance": 0.77156, "videos": [], "companies": [ { "name": "tiktok", - "score": 6 + "score": 13 } ] }, @@ -37428,58 +41501,78 @@ "title": "Find a Corresponding Node of a Binary Tree in a Clone of That Tree", "id": 1498, "frontend_id": 1379, + "rating": 2276, + "difficulty_lvl": 1, + "acceptance": 0.86265, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Maximum Performance of a Team", "id": 1499, "frontend_id": 1383, + "rating": 2091, + "difficulty_lvl": 3, + "acceptance": 0.4819, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Y7UTvogADH0", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "python" ] }, { "title": "Count Largest Group", "id": 1500, "frontend_id": 1399, + "difficulty_lvl": 1, + "acceptance": 0.66749, "videos": [], "companies": [ { "name": "Mercari", - "score": 6 + "score": 1 } - ] + ], + "rating": 1341 }, { "title": "Circle and Rectangle Overlapping", "id": 1501, "frontend_id": 1401, + "difficulty_lvl": 2, + "acceptance": 0.4411, "videos": [], "companies": [ { "name": "Adobe", - "score": 6 + "score": 2 } - ] + ], + "rating": 1709 }, { "title": "Construct K Palindrome Strings", "id": 1502, "frontend_id": 1400, + "rating": 1530, + "difficulty_lvl": 2, + "acceptance": 0.62502, "videos": [], "companies": [ { "name": "Uber", - "score": 6 + "score": 7 } ] }, @@ -37487,15 +41580,18 @@ "title": "Reducing Dishes", "id": 1503, "frontend_id": 1402, + "rating": 1679, + "difficulty_lvl": 3, + "acceptance": 0.76506, "videos": [], "companies": [ { "name": "American Express", - "score": 10 + "score": 2 }, { "name": "Sony", - "score": 10 + "score": 2 }, { "name": "OT", @@ -37507,21 +41603,28 @@ "title": "Get the Second Most Recent Activity", "id": 1504, "frontend_id": 1369, - "videos": [] + "rating": 1845, + "difficulty_lvl": 3, + "acceptance": 0.68359, + "videos": [], + "companies": [] }, { "title": "Create Target Array in the Given Order", "id": 1505, "frontend_id": 1389, + "rating": 1208, + "difficulty_lvl": 1, + "acceptance": 0.85765, "videos": [], "companies": [ { "name": "Apple", - "score": 10 + "score": 2 }, { "name": "Amazon", - "score": 10 + "score": 2 }, { "name": "Visa", @@ -37533,17 +41636,24 @@ "title": "Check if There is a Valid Path in a Grid", "id": 1507, "frontend_id": 1391, - "videos": [] + "rating": 1746, + "difficulty_lvl": 2, + "acceptance": 0.47538, + "videos": [], + "companies": [] }, { "title": "Longest Happy Prefix", "id": 1508, "frontend_id": 1392, + "rating": 1876, + "difficulty_lvl": 3, + "acceptance": 0.4482, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -37551,17 +41661,24 @@ "title": "Replace Employee ID With The Unique Identifier", "id": 1509, "frontend_id": 1378, - "videos": [] + "rating": 1653, + "difficulty_lvl": 1, + "acceptance": 0.85666, + "videos": [], + "companies": [] }, { "title": "Find Lucky Integer in an Array", "id": 1510, "frontend_id": 1394, + "rating": 1118, + "difficulty_lvl": 1, + "acceptance": 0.65189, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 1 } ] }, @@ -37569,11 +41686,13 @@ "title": "Count Number of Teams", "id": 1511, "frontend_id": 1395, + "difficulty_lvl": 2, + "acceptance": 0.66539, "videos": [], "companies": [ { "name": "Goldman Sachs", - "score": 10 + "score": 7 }, { "name": "Amazon", @@ -37581,83 +41700,118 @@ }, { "name": "Facebook", - "score": 1 + "score": 2 } - ] + ], + "rating": 1344 }, { "title": "Design Underground System", "id": 1512, "frontend_id": 1396, + "rating": 1465, + "difficulty_lvl": 2, + "acceptance": 0.74821, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 64 } + ], + "languages": [ + "javascript", + "python", + "java" ] }, { "title": "Find All Good Strings", "id": 1513, "frontend_id": 1397, - "videos": [] + "rating": 2667, + "difficulty_lvl": 3, + "acceptance": 0.42172, + "videos": [], + "companies": [] }, { "title": "Minimum Value to Get Positive Step by Step Sum", "id": 1514, "frontend_id": 1413, + "rating": 1212, + "difficulty_lvl": 1, + "acceptance": 0.66703, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "JPMorgan", - "score": 6 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Find the Minimum Number of Fibonacci Numbers Whose Sum Is K", "id": 1515, "frontend_id": 1414, - "videos": [] + "rating": 1466, + "difficulty_lvl": 2, + "acceptance": 0.65337, + "videos": [], + "companies": [] }, { "title": "The k-th Lexicographical String of All Happy Strings of Length n", "id": 1516, "frontend_id": 1415, + "difficulty_lvl": 2, + "acceptance": 0.73158, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 1 } - ] + ], + "rating": 1576 }, { "title": "Restore The Array", "id": 1517, "frontend_id": 1416, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.48597, + "videos": [], + "companies": [], + "rating": 1920 }, { "title": "Total Sales Amount by Year", "id": 1518, "frontend_id": 1384, - "videos": [] + "rating": 1245, + "difficulty_lvl": 3, + "acceptance": 0.62814, + "videos": [], + "companies": [] }, { "title": "Minimum Subsequence in Non-Increasing Order", "id": 1519, "frontend_id": 1403, + "rating": 1288, + "difficulty_lvl": 1, + "acceptance": 0.72302, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 2 }, { "name": "Mercari", @@ -37669,33 +41823,54 @@ "title": "Number of Steps to Reduce a Number in Binary Representation to One", "id": 1520, "frontend_id": 1404, - "videos": [] + "rating": 1397, + "difficulty_lvl": 2, + "acceptance": 0.52729, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/qxt7_HD8Cag", + "channel": "NeetCodeIO" + } + ], + "companies": [] }, { "title": "Stone Game III", "id": 1522, "frontend_id": 1406, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.64773, + "videos": [], + "companies": [], + "rating": 2027 }, { "title": "Capital Gain/Loss", "id": 1523, "frontend_id": 1393, - "videos": [] + "rating": 1209, + "difficulty_lvl": 2, + "acceptance": 0.86045, + "videos": [], + "companies": [], + "languages": [] }, { "title": "String Matching in an Array", "id": 1524, "frontend_id": 1408, + "rating": 1223, + "difficulty_lvl": 1, + "acceptance": 0.63642, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } ] }, @@ -37703,11 +41878,14 @@ "title": "Queries on a Permutation With Key", "id": 1525, "frontend_id": 1409, + "rating": 1335, + "difficulty_lvl": 2, + "acceptance": 0.83644, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } ] }, @@ -37715,11 +41893,14 @@ "title": "HTML Entity Parser", "id": 1526, "frontend_id": 1410, + "rating": 1405, + "difficulty_lvl": 2, + "acceptance": 0.51302, "videos": [], "companies": [ { "name": "Oracle", - "score": 6 + "score": 1 } ] }, @@ -37727,17 +41908,24 @@ "title": "Number of Ways to Paint N \u00d7 3 Grid", "id": 1527, "frontend_id": 1411, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.63048, + "videos": [], + "companies": [], + "rating": 1845 }, { "title": "Kids With the Greatest Number of Candies", "id": 1528, "frontend_id": 1431, + "rating": 1176, + "difficulty_lvl": 1, + "acceptance": 0.87662, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 3 } ] }, @@ -37745,11 +41933,14 @@ "title": "Max Difference You Can Get From Changing an Integer", "id": 1529, "frontend_id": 1432, + "rating": 1427, + "difficulty_lvl": 2, + "acceptance": 0.41213, "videos": [], "companies": [ { "name": "Mercari", - "score": 6 + "score": 1 } ] }, @@ -37757,76 +41948,110 @@ "title": "Check If a String Can Break Another String", "id": 1530, "frontend_id": 1433, - "videos": [] + "rating": 1436, + "difficulty_lvl": 2, + "acceptance": 0.69163, + "videos": [], + "companies": [] }, { "title": "Number of Ways to Wear Different Hats to Each Other", "id": 1531, "frontend_id": 1434, - "videos": [] + "rating": 2273, + "difficulty_lvl": 3, + "acceptance": 0.43704, + "videos": [], + "companies": [] }, { "title": "Reformat The String", "id": 1532, "frontend_id": 1417, + "difficulty_lvl": 1, + "acceptance": 0.53755, "videos": [], "companies": [ { "name": "Google", - "score": 10 + "score": 4 }, { "name": "Microsoft", "score": 1 } - ] + ], + "rating": 1242 }, { "title": "Display Table of Food Orders in a Restaurant", "id": 1533, "frontend_id": 1418, + "difficulty_lvl": 2, + "acceptance": 0.74223, "videos": [], "companies": [ { "name": "JP Morgan", - "score": 6 + "score": "JPMorgan" } - ] + ], + "rating": 1485 }, { "title": "Minimum Number of Frogs Croaking", "id": 1534, "frontend_id": 1419, - "videos": [] + "rating": 1690, + "difficulty_lvl": 2, + "acceptance": 0.50189, + "videos": [], + "companies": [] }, { "title": "Build Array Where You Can Find The Maximum Exactly K Comparisons", "id": 1535, "frontend_id": 1420, - "videos": [] + "rating": 2176, + "difficulty_lvl": 3, + "acceptance": 0.62519, + "videos": [], + "companies": [] }, { "title": "Customers Who Bought Products A and B but Not C", "id": 1536, "frontend_id": 1398, - "videos": [] + "rating": 1881, + "difficulty_lvl": 2, + "acceptance": 0.74491, + "videos": [], + "companies": [] }, { "title": "Maximum Score After Splitting a String", "id": 1537, "frontend_id": 1422, + "rating": 1238, + "difficulty_lvl": 1, + "acceptance": 0.57883, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } + ], + "languages": [ + "java" ] }, { "title": "Maximum Points You Can Obtain from Cards", "id": 1538, "frontend_id": 1423, + "difficulty_lvl": 2, + "acceptance": 0.5228, "videos": [ { "embedded_url": "https://www.youtube.com/embed/TsA4vbtfCvo", @@ -37836,43 +42061,58 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 17 }, { "name": "Amazon", - "score": 2 + "score": 3 }, { "name": "Adobe", - "score": 1 + "score": 2 } - ] + ], + "rating": 1574 }, { "title": "Diagonal Traverse II", "id": 1539, "frontend_id": 1424, - "videos": [] + "rating": 1780, + "difficulty_lvl": 2, + "acceptance": 0.50451, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Top Travellers", "id": 1541, "frontend_id": 1407, - "videos": [] + "rating": 1759, + "difficulty_lvl": 1, + "acceptance": 0.59369, + "videos": [], + "companies": [] }, { "title": "Consecutive Characters", "id": 1542, "frontend_id": 1446, + "rating": 1165, + "difficulty_lvl": 1, + "acceptance": 0.60734, "videos": [], "companies": [ { "name": "Apple", - "score": 10 + "score": 3 }, { "name": "Google", - "score": 1 + "score": 2 } ] }, @@ -37880,18 +42120,24 @@ "title": "Simplified Fractions", "id": 1543, "frontend_id": 1447, + "difficulty_lvl": 2, + "acceptance": 0.65542, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } - ] + ], + "rating": 1269 }, { "title": "Count Good Nodes in Binary Tree", "id": 1544, "frontend_id": 1448, + "rating": 1360, + "difficulty_lvl": 2, + "acceptance": 0.73766, "videos": [ { "embedded_url": "https://www.youtube.com/embed/7cp5imvDzl4", @@ -37901,77 +42147,117 @@ "companies": [ { "name": "Microsoft", - "score": 10 + "score": 11 }, { "name": "Salesforce", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Form Largest Integer With Digits That Add up to Target", "id": 1545, "frontend_id": 1449, - "videos": [] + "rating": 1927, + "difficulty_lvl": 3, + "acceptance": 0.47724, + "videos": [], + "companies": [] }, { "title": "Find the Quiet Students in All Exams", "id": 1546, "frontend_id": 1412, - "videos": [] + "rating": 1855, + "difficulty_lvl": 3, + "acceptance": 0.60521, + "videos": [], + "companies": [] }, { "title": "Destination City", "id": 1547, "frontend_id": 1436, + "rating": 1192, + "difficulty_lvl": 1, + "acceptance": 0.77145, "videos": [], "companies": [ { "name": "Yelp", - "score": 10 + "score": 5 }, { "name": "Google", - "score": 1 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Check If All 1's Are at Least Length K Places Away", "id": 1548, "frontend_id": 1437, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.58363, + "videos": [], + "companies": [ + { + "name": "United Health Group", + "score": 1 + } + ], + "rating": 1193 }, { "title": "Longest Continuous Subarray With Absolute Diff Less Than or Equal to Limit", "id": 1549, "frontend_id": 1438, - "videos": [], + "difficulty_lvl": 2, + "acceptance": 0.48688, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/V-ecDfY5xEw", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Uber", - "score": 10 + "score": 14 }, { "name": "Amazon", - "score": 8 + "score": 12 }, { "name": "Google", - "score": 1 + "score": 3 } - ] + ], + "rating": 1672 }, { "title": "Find the Kth Smallest Sum of a Matrix With Sorted Rows", "id": 1550, "frontend_id": 1439, + "rating": 2134, + "difficulty_lvl": 3, + "acceptance": 0.61394, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } ] }, @@ -37979,48 +42265,82 @@ "title": "NPV Queries", "id": 1551, "frontend_id": 1421, - "videos": [] + "rating": 1293, + "difficulty_lvl": 1, + "acceptance": 0.82883, + "videos": [], + "companies": [] }, { "title": "Build an Array With Stack Operations", "id": 1552, "frontend_id": 1441, + "rating": 1180, + "difficulty_lvl": 2, + "acceptance": 0.72288, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Count Triplets That Can Form Two Arrays of Equal XOR", "id": 1553, "frontend_id": 1442, - "videos": [] + "rating": 1525, + "difficulty_lvl": 2, + "acceptance": 0.76448, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/e4Yx9KjqzQ8", + "channel": "NeetCodeIO" + } + ], + "companies": [] }, { "title": "Minimum Time to Collect All Apples in a Tree", "id": 1554, "frontend_id": 1443, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.62416, + "videos": [], + "companies": [], + "rating": 1683 }, { "title": "Number of Ways of Cutting a Pizza", "id": 1555, "frontend_id": 1444, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.63261, + "videos": [], + "companies": [], + "rating": 2127 }, { "title": "Make Two Arrays Equal by Reversing Subarrays", "id": 1556, "frontend_id": 1460, - "videos": [] + "rating": 1271, + "difficulty_lvl": 1, + "acceptance": 0.71927, + "videos": [], + "companies": [] }, { "title": "Check If a String Contains All Binary Codes of Size K", "id": 1557, "frontend_id": 1461, + "rating": 1504, + "difficulty_lvl": 2, + "acceptance": 0.56476, "videos": [ { "embedded_url": "https://www.youtube.com/embed/qU32rTy_kOM", @@ -38030,36 +42350,57 @@ "companies": [ { "name": "Google", - "score": 6 + "score": 1 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Course Schedule IV", "id": 1558, "frontend_id": 1462, + "rating": 1693, + "difficulty_lvl": 2, + "acceptance": 0.4926, "videos": [ { "embedded_url": "https://www.youtube.com/embed/cEW05ofxhn0", "channel": "NeetCodeIO" } + ], + "companies": [], + "languages": [ + "python" ] }, { "title": "Cherry Pickup II", "id": 1559, "frontend_id": 1463, - "videos": [] + "rating": 1957, + "difficulty_lvl": 3, + "acceptance": 0.69585, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Number of Students Doing Homework at a Given Time", "id": 1560, "frontend_id": 1450, + "rating": 1129, + "difficulty_lvl": 1, + "acceptance": 0.75746, "videos": [], "companies": [ { "name": "Yandex", - "score": 6 + "score": 2 } ] }, @@ -38067,15 +42408,18 @@ "title": "Rearrange Words in a Sentence", "id": 1561, "frontend_id": 1451, + "rating": 1309, + "difficulty_lvl": 2, + "acceptance": 0.63603, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 2 }, { "name": "VMware", - "score": 10 + "score": 2 }, { "name": "Expedia", @@ -38087,11 +42431,14 @@ "title": "People Whose List of Favorite Companies Is Not a Subset of Another List", "id": 1562, "frontend_id": 1452, + "rating": 1563, + "difficulty_lvl": 2, + "acceptance": 0.56966, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -38099,89 +42446,131 @@ "title": "Maximum Number of Darts Inside of a Circular Dartboard", "id": 1563, "frontend_id": 1453, - "videos": [] + "rating": 2202, + "difficulty_lvl": 3, + "acceptance": 0.37044, + "videos": [], + "companies": [] }, { "title": "Create a Session Bar Chart", "id": 1564, "frontend_id": 1435, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.76259, + "videos": [], + "companies": [] }, { "title": "Evaluate Boolean Expression", "id": 1565, "frontend_id": 1440, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.7385, + "videos": [], + "companies": [] }, { "title": "Check If a Word Occurs As a Prefix of Any Word in a Sentence", "id": 1566, "frontend_id": 1455, + "rating": 1126, + "difficulty_lvl": 1, + "acceptance": 0.64171, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Maximum Number of Vowels in a Substring of Given Length", "id": 1567, "frontend_id": 1456, + "rating": 1263, + "difficulty_lvl": 2, + "acceptance": 0.58264, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } + ], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Pseudo-Palindromic Paths in a Binary Tree", "id": 1568, "frontend_id": 1457, + "rating": 1405, + "difficulty_lvl": 2, + "acceptance": 0.67534, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Max Dot Product of Two Subsequences", "id": 1569, "frontend_id": 1458, - "videos": [] + "rating": 1824, + "difficulty_lvl": 3, + "acceptance": 0.47223, + "videos": [], + "companies": [] }, { "title": "Final Prices With a Special Discount in a Shop", "id": 1570, "frontend_id": 1475, + "difficulty_lvl": 1, + "acceptance": 0.765, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } - ] + ], + "rating": 1212 }, { "title": "Allocate Mailboxes", "id": 1571, "frontend_id": 1478, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.55366, + "videos": [], + "companies": [], + "rating": 2190 }, { "title": "Subrectangle Queries", "id": 1572, "frontend_id": 1476, + "rating": 1326, + "difficulty_lvl": 2, + "acceptance": 0.88173, "videos": [], "companies": [ { "name": "Nuro", - "score": 6 + "score": 1 } ] }, @@ -38189,38 +42578,56 @@ "title": "Find Two Non-overlapping Sub-arrays Each With Target Sum", "id": 1573, "frontend_id": 1477, - "videos": [] + "rating": 1851, + "difficulty_lvl": 2, + "acceptance": 0.36638, + "videos": [], + "companies": [] }, { "title": "Maximum Product of Two Elements in an Array", "id": 1574, "frontend_id": 1464, + "rating": 1121, + "difficulty_lvl": 1, + "acceptance": 0.8033, "videos": [], "companies": [ { "name": "Yahoo", - "score": 10 + "score": 2 }, { "name": "Facebook", - "score": 10 + "score": 2 }, { "name": "Samsung", "score": 1 } + ], + "languages": [ + "python", + "java" ] }, { "title": "Maximum Area of a Piece of Cake After Horizontal and Vertical Cuts", "id": 1575, "frontend_id": 1465, - "videos": [] + "rating": 1445, + "difficulty_lvl": 2, + "acceptance": 0.40897, + "videos": [], + "companies": [] }, { "title": "Reorder Routes to Make All Paths Lead to the City Zero", "id": 1576, "frontend_id": 1466, + "rating": 1634, + "difficulty_lvl": 2, + "acceptance": 0.6593, "videos": [ { "embedded_url": "https://www.youtube.com/embed/m17yOR5_PpI", @@ -38230,44 +42637,62 @@ "companies": [ { "name": "DRW", - "score": 10 + "score": 4 }, { "name": "Amazon", - "score": 6 + "score": 3 }, { "name": "American Express", - "score": 6 + "score": 3 }, { "name": "Grab", - "score": 1 + "score": 2 } + ], + "languages": [ + "cpp", + "java" ] }, { "title": "Probability of a Two Boxes Having The Same Number of Distinct Balls", "id": 1577, "frontend_id": 1467, - "videos": [] + "rating": 2357, + "difficulty_lvl": 3, + "acceptance": 0.60657, + "videos": [], + "companies": [] }, { "title": "Apples & Oranges", "id": 1578, "frontend_id": 1445, - "videos": [] + "rating": 1574, + "difficulty_lvl": 2, + "acceptance": 0.88825, + "videos": [], + "companies": [] }, { "title": "Active Users", "id": 1579, "frontend_id": 1454, - "videos": [] + "rating": 2132, + "difficulty_lvl": 2, + "acceptance": 0.37353, + "videos": [], + "companies": [] }, { "title": "Shuffle the Array", "id": 1580, "frontend_id": 1470, + "difficulty_lvl": 1, + "acceptance": 0.88617, "videos": [ { "embedded_url": "https://www.youtube.com/embed/IvIKD_EU8BY", @@ -38277,35 +42702,45 @@ "companies": [ { "name": "Apple", - "score": 10 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 } - ] + ], + "languages": [ + "javascript" + ], + "rating": 1121 }, { "title": "The k Strongest Values in an Array", "id": 1581, "frontend_id": 1471, + "difficulty_lvl": 2, + "acceptance": 0.60703, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } - ] + ], + "rating": 1332 }, { "title": "Design Browser History", "id": 1582, "frontend_id": 1472, + "rating": 1454, + "difficulty_lvl": 2, + "acceptance": 0.7786, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 10 + "score": 9 }, { "name": "Roblox", @@ -38313,49 +42748,65 @@ }, { "name": "Amazon", - "score": 2 + "score": 3 }, { "name": "Oracle", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "java" ] }, { "title": "Paint House III", "id": 1583, "frontend_id": 1473, - "videos": [] + "rating": 2056, + "difficulty_lvl": 3, + "acceptance": 0.61413, + "videos": [], + "companies": [] }, { "title": "Average Salary Excluding the Minimum and Maximum Salary", "id": 1584, "frontend_id": 1491, + "rating": 1201, + "difficulty_lvl": 1, + "acceptance": 0.63542, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 2 }, { "name": "Netsuite", "score": 1 } - ] + ], + "languages": [] }, { "title": "The kth Factor of n", "id": 1585, "frontend_id": 1492, + "rating": 1232, + "difficulty_lvl": 2, + "acceptance": 0.64924, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 25 }, { "name": "Expedia", - "score": 1 + "score": 6 } ] }, @@ -38363,47 +42814,67 @@ "title": "Longest Subarray of 1's After Deleting One Element", "id": 1586, "frontend_id": 1493, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.66277, + "videos": [], + "companies": [ + { + "name": "Yandex", + "score": 3 + } + ], + "rating": 1423 }, { "title": "Parallel Courses II", "id": 1587, "frontend_id": 1494, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.30195, + "videos": [], + "companies": [], + "rating": 2082 }, { "title": "Running Sum of 1d Array", "id": 1603, "frontend_id": 1480, + "rating": 1105, + "difficulty_lvl": 1, + "acceptance": 0.86854, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Least Number of Unique Integers after K Removals", "id": 1604, "frontend_id": 1481, + "rating": 1284, + "difficulty_lvl": 2, + "acceptance": 0.5576, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 5 }, { "name": "Expedia", - "score": 7 + "score": 4 }, { "name": "Booking.com", - "score": 4 + "score": 3 }, { "name": "Salesforce", - "score": 1 + "score": 2 } ] }, @@ -38411,11 +42882,14 @@ "title": "Minimum Number of Days to Make m Bouquets", "id": 1605, "frontend_id": 1482, + "rating": 1946, + "difficulty_lvl": 2, + "acceptance": 0.52795, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -38423,23 +42897,33 @@ "title": "Rectangles Area", "id": 1607, "frontend_id": 1459, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.68821, + "videos": [], + "companies": [] }, { "title": "Calculate Salaries", "id": 1608, "frontend_id": 1468, - "videos": [] + "rating": 1370, + "difficulty_lvl": 2, + "acceptance": 0.79896, + "videos": [], + "companies": [] }, { "title": "Find All The Lonely Nodes", "id": 1609, "frontend_id": 1469, + "rating": 1438, + "difficulty_lvl": 1, + "acceptance": 0.82456, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 1 } ] }, @@ -38447,27 +42931,36 @@ "title": "XOR Operation in an Array", "id": 1610, "frontend_id": 1486, + "rating": 1181, + "difficulty_lvl": 1, + "acceptance": 0.85003, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } + ], + "languages": [ + "javascript" ] }, { "title": "Making File Names Unique", "id": 1611, "frontend_id": 1487, + "rating": 1697, + "difficulty_lvl": 2, + "acceptance": 0.36465, "videos": [], "companies": [ { "name": "Expedia", - "score": 10 + "score": 14 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -38475,23 +42968,37 @@ "title": "Avoid Flood in The City", "id": 1612, "frontend_id": 1488, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.26695, + "videos": [], + "companies": [], + "rating": 1974 }, { "title": "Find Critical and Pseudo-Critical Edges in Minimum Spanning Tree", "id": 1613, "frontend_id": 1489, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.52742, + "videos": [], + "companies": [], + "rating": 2572, + "languages": [ + "python" + ] }, { "title": "Range Sum of Sorted Subarray Sums", "id": 1615, "frontend_id": 1508, + "rating": 1402, + "difficulty_lvl": 2, + "acceptance": 0.58833, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -38499,23 +43006,38 @@ "title": "Minimum Difference Between Largest and Smallest Value in Three Moves", "id": 1616, "frontend_id": 1509, - "videos": [] + "rating": 1653, + "difficulty_lvl": 2, + "acceptance": 0.54667, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/S6cUjbQuTnE", + "channel": "NeetCodeIO" + } + ], + "companies": [] }, { "title": "Stone Game IV", "id": 1617, "frontend_id": 1510, - "videos": [] + "rating": 1787, + "difficulty_lvl": 3, + "acceptance": 0.59947, + "videos": [], + "companies": [] }, { "title": "Delete N Nodes After M Nodes of a Linked List", "id": 1618, "frontend_id": 1474, + "difficulty_lvl": 1, + "acceptance": 0.73277, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 1 } ] }, @@ -38523,52 +43045,80 @@ "title": "Path Crossing", "id": 1619, "frontend_id": 1496, + "rating": 1508, + "difficulty_lvl": 1, + "acceptance": 0.56064, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Check If Array Pairs Are Divisible by k", "id": 1620, "frontend_id": 1497, - "videos": [] + "rating": 1787, + "difficulty_lvl": 2, + "acceptance": 0.38638, + "videos": [], + "companies": [] }, { "title": "Number of Subsequences That Satisfy the Given Sum Condition", "id": 1621, "frontend_id": 1498, + "rating": 2276, + "difficulty_lvl": 2, + "acceptance": 0.44318, "videos": [ { "embedded_url": "https://www.youtube.com/embed/xCsIkPLS4Ls", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "python", + "cpp" ] }, { "title": "Max Value of Equation", "id": 1622, "frontend_id": 1499, - "videos": [] + "rating": 2456, + "difficulty_lvl": 3, + "acceptance": 0.45042, + "videos": [], + "companies": [] }, { "title": "Sales by Day of the Week", "id": 1623, "frontend_id": 1479, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.79525, + "videos": [], + "companies": [] }, { "title": "Clone Binary Tree With Random Pointer", "id": 1624, "frontend_id": 1485, + "rating": 1282, + "difficulty_lvl": 2, + "acceptance": 0.80609, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 } ] }, @@ -38576,17 +43126,24 @@ "title": "Group Sold Products By The Date", "id": 1625, "frontend_id": 1484, - "videos": [] + "rating": 1992, + "difficulty_lvl": 1, + "acceptance": 0.77865, + "videos": [], + "companies": [] }, { "title": "Can Make Arithmetic Progression From Sequence", "id": 1626, "frontend_id": 1502, + "rating": 1155, + "difficulty_lvl": 1, + "acceptance": 0.70098, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } ] }, @@ -38594,24 +43151,42 @@ "title": "Last Moment Before All Ants Fall Out of a Plank", "id": 1627, "frontend_id": 1503, - "videos": [] + "rating": 1619, + "difficulty_lvl": 2, + "acceptance": 0.57142, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Count Submatrices With All Ones", "id": 1628, "frontend_id": 1504, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.57259, + "videos": [], + "companies": [], + "rating": 1845 }, { "title": "Minimum Possible Integer After at Most K Adjacent Swaps On Digits", "id": 1629, "frontend_id": 1505, - "videos": [] + "rating": 2337, + "difficulty_lvl": 3, + "acceptance": 0.38469, + "videos": [], + "companies": [] }, { "title": "Count Odd Numbers in an Interval Range", "id": 1630, "frontend_id": 1523, + "rating": 1209, + "difficulty_lvl": 1, + "acceptance": 0.49534, "videos": [ { "embedded_url": "https://www.youtube.com/embed/wrIWye928JQ", @@ -38621,35 +43196,41 @@ "companies": [ { "name": "Accenture", - "score": 6 + "score": 2 }, { "name": "Apple", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Adobe", - "score": 6 + "score": 2 } + ], + "languages": [ + "python" ] }, { "title": "Number of Sub-arrays With Odd Sum", "id": 1631, "frontend_id": 1524, + "rating": 1611, + "difficulty_lvl": 2, + "acceptance": 0.43296, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Apple", - "score": 6 + "score": 2 } ] }, @@ -38657,11 +43238,14 @@ "title": "Number of Good Ways to Split a String", "id": 1632, "frontend_id": 1525, + "rating": 1500, + "difficulty_lvl": 2, + "acceptance": 0.68723, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -38669,23 +43253,28 @@ "title": "Minimum Number of Increments on Subarrays to Form a Target Array", "id": 1633, "frontend_id": 1526, + "difficulty_lvl": 3, + "acceptance": 0.69278, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 4 } - ] + ], + "rating": 1872 }, { "title": "Clone N-ary Tree", "id": 1634, "frontend_id": 1490, + "difficulty_lvl": 2, + "acceptance": 0.83339, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -38693,71 +43282,115 @@ "title": "Number of Good Pairs", "id": 1635, "frontend_id": 1512, + "difficulty_lvl": 1, + "acceptance": 0.8822, "videos": [], "companies": [ { "name": "Microsoft", - "score": 10 + "score": 3 }, { "name": "Amazon", - "score": 10 + "score": 3 }, { "name": "Adobe", - "score": 1 + "score": 2 } - ] + ], + "languages": [ + "javascript", + "cpp", + "java" + ], + "rating": 1161 }, { "title": "Number of Substrings With Only 1s", "id": 1636, "frontend_id": 1513, - "videos": [] + "rating": 1351, + "difficulty_lvl": 2, + "acceptance": 0.45587, + "videos": [], + "companies": [] }, { "title": "String Compression II", "id": 1637, "frontend_id": 1531, - "videos": [] + "rating": 2576, + "difficulty_lvl": 3, + "acceptance": 0.49265, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Best Position for a Service Centre", "id": 1638, "frontend_id": 1515, - "videos": [] + "rating": 2157, + "difficulty_lvl": 3, + "acceptance": 0.37059, + "videos": [], + "companies": [] }, { "title": "Friendly Movies Streamed Last Month", "id": 1639, "frontend_id": 1495, - "videos": [] + "rating": 2082, + "difficulty_lvl": 1, + "acceptance": 0.49126, + "videos": [], + "companies": [] }, { "title": "Design a File Sharing System", "id": 1640, "frontend_id": 1500, - "videos": [] + "rating": 1524, + "difficulty_lvl": 2, + "acceptance": 0.44294, + "videos": [], + "companies": [] }, { "title": "Countries You Can Safely Invest In", "id": 1641, "frontend_id": 1501, - "videos": [] + "rating": 1519, + "difficulty_lvl": 2, + "acceptance": 0.49613, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Water Bottles", "id": 1642, "frontend_id": 1518, - "videos": [], + "rating": 1245, + "difficulty_lvl": 1, + "acceptance": 0.60428, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/V4d6xym5efE", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "IBM", - "score": 10 + "score": 4 }, { "name": "Amazon", - "score": 4 + "score": 2 }, { "name": "Microsoft", @@ -38769,45 +43402,60 @@ "title": "Number of Nodes in the Sub-Tree With the Same Label", "id": 1643, "frontend_id": 1519, - "videos": [] + "rating": 1809, + "difficulty_lvl": 2, + "acceptance": 0.55164, + "videos": [], + "companies": [] }, { "title": "Maximum Number of Non-Overlapping Substrings", "id": 1644, "frontend_id": 1520, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.38294, + "videos": [], + "companies": [], + "rating": 2363 }, { "title": "Find a Value of a Mysterious Function Closest to Target", "id": 1645, "frontend_id": 1521, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.43732, + "videos": [], + "companies": [], + "rating": 2384 }, { "title": "Kth Missing Positive Number", "id": 1646, "frontend_id": 1539, + "rating": 1295, + "difficulty_lvl": 1, + "acceptance": 0.58763, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 28 }, { "name": "tiktok", - "score": 1 + "score": 3 }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Amazon", - "score": 1 + "score": 2 } ] }, @@ -38815,21 +43463,29 @@ "title": "Can Convert String in K Moves", "id": 1647, "frontend_id": 1540, - "videos": [] + "rating": 1631, + "difficulty_lvl": 2, + "acceptance": 0.33634, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Minimum Insertions to Balance a Parentheses String", "id": 1648, "frontend_id": 1541, + "rating": 1759, + "difficulty_lvl": 2, + "acceptance": 0.49791, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 4 }, { "name": "Microsoft", - "score": 6 + "score": 4 } ] }, @@ -38837,59 +43493,88 @@ "title": "Maximum Number of Non-Overlapping Subarrays With Sum Equals Target", "id": 1649, "frontend_id": 1546, - "videos": [] + "rating": 1855, + "difficulty_lvl": 2, + "acceptance": 0.47405, + "videos": [], + "companies": [] }, { "title": "Find Root of N-Ary Tree", "id": 1650, "frontend_id": 1506, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.7849, + "videos": [], + "companies": [] }, { "title": "Shuffle String", "id": 1651, "frontend_id": 1528, + "difficulty_lvl": 1, + "acceptance": 0.84747, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } - ] + ], + "rating": 1193 }, { "title": "Minimum Suffix Flips", "id": 1652, "frontend_id": 1529, - "videos": [] + "rating": 1417, + "difficulty_lvl": 2, + "acceptance": 0.72516, + "videos": [], + "companies": [] }, { "title": "Number of Good Leaf Nodes Pairs", "id": 1653, "frontend_id": 1530, - "videos": [] + "rating": 1746, + "difficulty_lvl": 2, + "acceptance": 0.61356, + "videos": [], + "companies": [] }, { "title": "Customer Order Frequency", "id": 1654, "frontend_id": 1511, - "videos": [] + "rating": 2124, + "difficulty_lvl": 1, + "acceptance": 0.70286, + "videos": [], + "companies": [] }, { "title": "Move Sub-Tree of N-Ary Tree", "id": 1655, "frontend_id": 1516, - "videos": [] + "rating": 2307, + "difficulty_lvl": 3, + "acceptance": 0.63091, + "videos": [], + "companies": [] }, { "title": "Count Good Triplets", "id": 1656, "frontend_id": 1534, + "rating": 1279, + "difficulty_lvl": 1, + "acceptance": 0.80898, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -38897,11 +43582,14 @@ "title": "Find the Winner of an Array Game", "id": 1657, "frontend_id": 1535, + "rating": 1433, + "difficulty_lvl": 2, + "acceptance": 0.48492, "videos": [], "companies": [ { "name": "Directi", - "score": 6 + "score": 1 } ] }, @@ -38909,51 +43597,71 @@ "title": "Minimum Swaps to Arrange a Binary Grid", "id": 1658, "frontend_id": 1536, - "videos": [] + "rating": 1881, + "difficulty_lvl": 2, + "acceptance": 0.46661, + "videos": [], + "companies": [] }, { "title": "Get the Maximum Score", "id": 1659, "frontend_id": 1537, - "videos": [] + "rating": 1961, + "difficulty_lvl": 3, + "acceptance": 0.39212, + "videos": [], + "companies": [] }, { "title": "Thousand Separator", "id": 1660, "frontend_id": 1556, + "difficulty_lvl": 1, + "acceptance": 0.54165, "videos": [], "companies": [ { "name": "Uber", - "score": 6 + "score": 2 } - ] + ], + "rating": 1271 }, { "title": "Minimum Number of Vertices to Reach All Nodes", "id": 1661, "frontend_id": 1557, + "difficulty_lvl": 2, + "acceptance": 0.81334, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 } + ], + "rating": 1512, + "languages": [ + "java" ] }, { "title": "Minimum Numbers of Function Calls to Make Target Array", "id": 1662, "frontend_id": 1558, + "rating": 1637, + "difficulty_lvl": 2, + "acceptance": 0.63883, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } ] }, @@ -38961,87 +43669,135 @@ "title": "Detect Cycles in 2D Grid", "id": 1663, "frontend_id": 1559, - "videos": [] + "rating": 1838, + "difficulty_lvl": 2, + "acceptance": 0.48304, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Find Users With Valid E-Mails", "id": 1664, "frontend_id": 1517, - "videos": [] + "rating": 1590, + "difficulty_lvl": 1, + "acceptance": 0.48154, + "videos": [], + "companies": [] }, { "title": "Diameter of N-Ary Tree", "id": 1665, "frontend_id": 1522, - "videos": [] + "rating": 1901, + "difficulty_lvl": 2, + "acceptance": 0.73693, + "videos": [], + "companies": [] }, { "title": "Make The String Great", "id": 1666, "frontend_id": 1544, - "videos": [], + "difficulty_lvl": 1, + "acceptance": 0.63142, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/10tBWNjzvtw", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Adobe", - "score": 10 + "score": 2 }, { "name": "Google", "score": 1 } - ] + ], + "rating": 1344 }, { "title": "Find Kth Bit in Nth Binary String", "id": 1667, "frontend_id": 1545, + "difficulty_lvl": 2, + "acceptance": 0.5873, "videos": [], "companies": [ { "name": "Rupeek", - "score": 6 + "score": 1 } - ] + ], + "rating": 1479 }, { "title": "Find Longest Awesome Substring", "id": 1668, "frontend_id": 1542, - "videos": [] + "rating": 2222, + "difficulty_lvl": 3, + "acceptance": 0.42126, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Minimum Cost to Cut a Stick", "id": 1669, "frontend_id": 1547, - "videos": [] + "rating": 2116, + "difficulty_lvl": 3, + "acceptance": 0.62407, + "videos": [], + "companies": [] }, { "title": "Patients With a Condition", "id": 1670, "frontend_id": 1527, - "videos": [] + "rating": 1610, + "difficulty_lvl": 1, + "acceptance": 0.40205, + "videos": [], + "companies": [] }, { "title": "The Most Recent Three Orders", "id": 1671, "frontend_id": 1532, - "videos": [] + "rating": 1913, + "difficulty_lvl": 2, + "acceptance": 0.69016, + "videos": [], + "companies": [] }, { "title": "Find the Index of the Large Integer", "id": 1672, "frontend_id": 1533, - "videos": [] + "rating": 1183, + "difficulty_lvl": 2, + "acceptance": 0.55946, + "videos": [], + "companies": [] }, { "title": "Minimum Operations to Make Array Equal", "id": 1674, "frontend_id": 1551, + "rating": 1293, + "difficulty_lvl": 2, + "acceptance": 0.81833, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } ] }, @@ -39049,54 +43805,76 @@ "title": "Magnetic Force Between Two Balls", "id": 1675, "frontend_id": 1552, - "videos": [] + "rating": 1920, + "difficulty_lvl": 2, + "acceptance": 0.59122, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Minimum Number of Days to Eat N Oranges", "id": 1676, "frontend_id": 1553, + "difficulty_lvl": 3, + "acceptance": 0.34817, "videos": [ { "embedded_url": "https://www.youtube.com/embed/LziQ6Qx9sks", "channel": "NeetCode" } - ] + ], + "companies": [], + "rating": 2048 }, { "title": "Matrix Diagonal Sum", "id": 1677, "frontend_id": 1572, + "difficulty_lvl": 1, + "acceptance": 0.82747, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 }, { "name": "Amazon", - "score": 6 + "score": 2 } - ] + ], + "languages": [ + "javascript" + ], + "rating": 1280 }, { "title": "Number of Ways to Split a String", "id": 1678, "frontend_id": 1573, - "videos": [] + "rating": 1591, + "difficulty_lvl": 2, + "acceptance": 0.32376, + "videos": [], + "companies": [] }, { "title": "Shortest Subarray to be Removed to Make Array Sorted", "id": 1679, "frontend_id": 1574, + "rating": 1932, + "difficulty_lvl": 2, + "acceptance": 0.37509, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Flipkart", - "score": 1 + "score": 2 } ] }, @@ -39104,18 +43882,29 @@ "title": "Count All Possible Routes", "id": 1680, "frontend_id": 1575, - "videos": [] + "rating": 2055, + "difficulty_lvl": 3, + "acceptance": 0.66246, + "videos": [], + "companies": [] }, { "title": "Guess the Majority in a Hidden Array", "id": 1681, "frontend_id": 1538, - "videos": [] + "rating": 2390, + "difficulty_lvl": 2, + "acceptance": 0.70995, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Most Visited Sector in a Circular Track", "id": 1682, "frontend_id": 1560, + "difficulty_lvl": 1, + "acceptance": 0.58403, "videos": [], "companies": [ { @@ -39128,57 +43917,84 @@ "title": "Maximum Number of Coins You Can Get", "id": 1683, "frontend_id": 1561, + "difficulty_lvl": 2, + "acceptance": 0.79467, "videos": [], "companies": [ { "name": "Flipkart", - "score": 10 + "score": 3 }, { "name": "Dunzo", - "score": 1 + "score": 2 } - ] + ], + "rating": 1406 }, { "title": "Find Latest Group of Size M", "id": 1684, "frontend_id": 1562, - "videos": [] + "rating": 1928, + "difficulty_lvl": 2, + "acceptance": 0.42939, + "videos": [], + "companies": [] }, { "title": "Stone Game V", "id": 1685, "frontend_id": 1563, - "videos": [] + "rating": 2087, + "difficulty_lvl": 3, + "acceptance": 0.40479, + "videos": [], + "companies": [] }, { "title": "Fix Product Name Format", "id": 1686, "frontend_id": 1543, - "videos": [] + "rating": 2001, + "difficulty_lvl": 1, + "acceptance": 0.60131, + "videos": [], + "companies": [], + "languages": [] }, { "title": "The Most Similar Path in a Graph", "id": 1687, "frontend_id": 1548, - "videos": [] + "rating": 2610, + "difficulty_lvl": 3, + "acceptance": 0.58944, + "videos": [], + "companies": [] }, { "title": "The Most Recent Orders for Each Product", "id": 1688, "frontend_id": 1549, - "videos": [] + "rating": 1203, + "difficulty_lvl": 2, + "acceptance": 0.66149, + "videos": [], + "companies": [] }, { "title": "Detect Pattern of Length M Repeated K or More Times", "id": 1689, "frontend_id": 1566, + "rating": 1486, + "difficulty_lvl": 1, + "acceptance": 0.43184, "videos": [], "companies": [ { "name": "HRT", - "score": 6 + "score": 1 } ] }, @@ -39186,19 +44002,22 @@ "title": "Maximum Length of Subarray With Positive Product", "id": 1690, "frontend_id": 1567, + "rating": 1710, + "difficulty_lvl": 2, + "acceptance": 0.44113, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 29 }, { "name": "Arcesium", - "score": 2 + "score": 4 }, { "name": "Adobe", - "score": 1 + "score": 2 } ] }, @@ -39206,214 +44025,327 @@ "title": "Minimum Number of Days to Disconnect Island", "id": 1691, "frontend_id": 1568, - "videos": [] + "rating": 2209, + "difficulty_lvl": 3, + "acceptance": 0.45968, + "videos": [], + "companies": [] }, { "title": "Number of Ways to Reorder Array to Get Same BST", "id": 1692, "frontend_id": 1569, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.53792, + "videos": [], + "companies": [], + "rating": 2288 }, { "title": "Sum of All Odd Length Subarrays", "id": 1693, "frontend_id": 1588, + "difficulty_lvl": 1, + "acceptance": 0.83198, "videos": [], "companies": [ { "name": "Adobe", - "score": 10 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Apple", - "score": 1 + "score": 2 } - ] + ], + "languages": [ + "javascript" + ], + "rating": 1409 }, { "title": "Make Sum Divisible by P", "id": 1694, "frontend_id": 1590, - "videos": [] + "rating": 2039, + "difficulty_lvl": 2, + "acceptance": 0.2801, + "videos": [], + "companies": [] }, { "title": "Maximum Sum Obtained of Any Permutation", "id": 1695, "frontend_id": 1589, - "videos": [] + "rating": 1871, + "difficulty_lvl": 2, + "acceptance": 0.37374, + "videos": [], + "companies": [] }, { "title": "Strange Printer II", "id": 1696, "frontend_id": 1591, - "videos": [] + "rating": 2291, + "difficulty_lvl": 3, + "acceptance": 0.58944, + "videos": [], + "companies": [] }, { "title": "Strings Differ by One Character", "id": 1697, "frontend_id": 1554, - "videos": [] + "rating": 2300, + "difficulty_lvl": 2, + "acceptance": 0.42131, + "videos": [], + "companies": [] }, { "title": "Replace All ?'s to Avoid Consecutive Repeating Characters", "id": 1698, "frontend_id": 1576, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.47491, + "videos": [], + "companies": [ + { + "name": "Microsoft", + "score": 2 + } + ], + "rating": 1368 }, { "title": "Number of Ways Where Square of Number Is Equal to Product of Two Numbers", "id": 1699, "frontend_id": 1577, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.40393, + "videos": [], + "companies": [], + "rating": 1594 }, { "title": "Minimum Time to Make Rope Colorful", "id": 1700, "frontend_id": 1578, - "videos": [] + "rating": 1404, + "difficulty_lvl": 2, + "acceptance": 0.63157, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Remove Max Number of Edges to Keep Graph Fully Traversable", "id": 1701, "frontend_id": 1579, - "videos": [] + "rating": 2132, + "difficulty_lvl": 3, + "acceptance": 0.64858, + "videos": [], + "companies": [] }, { "title": "Bank Account Summary", "id": 1702, "frontend_id": 1555, - "videos": [] + "rating": 1825, + "difficulty_lvl": 2, + "acceptance": 0.51677, + "videos": [], + "companies": [] }, { "title": "Put Boxes Into the Warehouse I", "id": 1703, "frontend_id": 1564, - "videos": [] + "rating": 2467, + "difficulty_lvl": 2, + "acceptance": 0.67015, + "videos": [], + "companies": [] }, { "title": "Special Positions in a Binary Matrix", "id": 1704, "frontend_id": 1582, + "rating": 1321, + "difficulty_lvl": 1, + "acceptance": 0.6512, "videos": [], "companies": [ { "name": "Uber", - "score": 6 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Count Unhappy Friends", "id": 1705, "frontend_id": 1583, + "rating": 1658, + "difficulty_lvl": 2, + "acceptance": 0.61199, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 3 } - ] + ], + "languages": [] }, { "title": "Min Cost to Connect All Points", "id": 1706, "frontend_id": 1584, + "rating": 1858, + "difficulty_lvl": 2, + "acceptance": 0.64208, "videos": [ { "embedded_url": "https://www.youtube.com/embed/f7JOBJIC-NA", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Check If String Is Transformable With Substring Sort Operations", "id": 1707, "frontend_id": 1585, - "videos": [] + "rating": 2333, + "difficulty_lvl": 3, + "acceptance": 0.48002, + "videos": [], + "companies": [] }, { "title": "Design Parking System", "id": 1708, "frontend_id": 1603, + "difficulty_lvl": 1, + "acceptance": 0.88327, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 12 } - ] + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" + ], + "rating": 1324 }, { "title": "Alert Using Same Key-Card Three or More Times in a One Hour Period", "id": 1709, "frontend_id": 1604, + "difficulty_lvl": 2, + "acceptance": 0.46061, "videos": [], "companies": [ { "name": "Karat", - "score": 10 + "score": 16 }, { "name": "Robinhood", - "score": 4 + "score": 8 }, { "name": "Wayfair", - "score": 2 + "score": 5 }, { "name": "Indeed", - "score": 1 + "score": 4 } - ] + ], + "rating": 1606 }, { "title": "Find Servers That Handled Most Number of Requests", "id": 1710, "frontend_id": 1606, - "videos": [] + "rating": 2276, + "difficulty_lvl": 3, + "acceptance": 0.43239, + "videos": [], + "companies": [] }, { "title": "Find Valid Matrix Given Row and Column Sums", "id": 1711, "frontend_id": 1605, - "videos": [] + "rating": 1868, + "difficulty_lvl": 2, + "acceptance": 0.77662, + "videos": [], + "companies": [] }, { "title": "Unique Orders and Customers Per Month", "id": 1712, "frontend_id": 1565, - "videos": [] + "rating": 2079, + "difficulty_lvl": 1, + "acceptance": 0.82586, + "videos": [], + "companies": [] }, { "title": "Dot Product of Two Sparse Vectors", "id": 1713, "frontend_id": 1570, + "rating": 2351, + "difficulty_lvl": 2, + "acceptance": 0.90265, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 121 }, { "name": "Google", - "score": 1 + "score": 4 }, { "name": "Amazon", - "score": 1 + "score": 2 }, { "name": "Microsoft", - "score": 1 + "score": 2 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } ] }, @@ -39421,53 +44353,84 @@ "title": "Rearrange Spaces Between Words", "id": 1714, "frontend_id": 1592, + "difficulty_lvl": 1, + "acceptance": 0.43318, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 4 } - ] + ], + "rating": 1363 }, { "title": "Split a String Into the Max Number of Unique Substrings", "id": 1715, "frontend_id": 1593, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.55672, + "videos": [], + "companies": [], + "rating": 1740 }, { "title": "Maximum Non Negative Product in a Matrix", "id": 1716, "frontend_id": 1594, - "videos": [] + "rating": 1807, + "difficulty_lvl": 2, + "acceptance": 0.33164, + "videos": [], + "companies": [] }, { "title": "Minimum Cost to Connect Two Groups of Points", "id": 1717, "frontend_id": 1595, - "videos": [] + "rating": 2538, + "difficulty_lvl": 3, + "acceptance": 0.47399, + "videos": [], + "companies": [] }, { "title": "Warehouse Manager", "id": 1718, "frontend_id": 1571, - "videos": [] + "rating": 2080, + "difficulty_lvl": 1, + "acceptance": 0.88188, + "videos": [], + "companies": [] }, { "title": "Put Boxes Into the Warehouse II", "id": 1719, "frontend_id": 1580, - "videos": [] + "rating": 3018, + "difficulty_lvl": 2, + "acceptance": 0.63811, + "videos": [], + "companies": [] }, { "title": "Crawler Log Folder", "id": 1720, "frontend_id": 1598, - "videos": [], + "rating": 1297, + "difficulty_lvl": 1, + "acceptance": 0.64645, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/Ur3saIXP7ro", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Mercari", - "score": 6 + "score": 1 } ] }, @@ -39475,23 +44438,35 @@ "title": "Maximum Profit of Operating a Centennial Wheel", "id": 1721, "frontend_id": 1599, - "videos": [] + "rating": 1548, + "difficulty_lvl": 2, + "acceptance": 0.43621, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Throne Inheritance", "id": 1722, "frontend_id": 1600, - "videos": [] + "rating": 1769, + "difficulty_lvl": 2, + "acceptance": 0.63935, + "videos": [], + "companies": [] }, { "title": "Maximum Number of Achievable Transfer Requests", "id": 1723, "frontend_id": 1601, + "rating": 2119, + "difficulty_lvl": 3, + "acceptance": 0.65035, "videos": [], "companies": [ { "name": "Adobe", - "score": 10 + "score": 2 }, { "name": "Amazon", @@ -39503,23 +44478,33 @@ "title": "Customer Who Visited but Did Not Make Any Transactions", "id": 1724, "frontend_id": 1581, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.78509, + "videos": [], + "companies": [] }, { "title": "Number of Sets of K Non-Overlapping Line Segments", "id": 1725, "frontend_id": 1621, - "videos": [] + "rating": 2198, + "difficulty_lvl": 2, + "acceptance": 0.42601, + "videos": [], + "companies": [] }, { "title": "Coordinate With Maximum Network Quality", "id": 1726, "frontend_id": 1620, + "rating": 1665, + "difficulty_lvl": 2, + "acceptance": 0.37495, "videos": [], "companies": [ { "name": "peak6", - "score": 6 + "score": 1 } ] }, @@ -39527,91 +44512,140 @@ "title": "Cat and Mouse II", "id": 1727, "frontend_id": 1728, - "videos": [] + "rating": 2849, + "difficulty_lvl": 3, + "acceptance": 0.39352, + "videos": [], + "companies": [] }, { "title": "Fancy Sequence", "id": 1728, "frontend_id": 1622, - "videos": [] + "rating": 2476, + "difficulty_lvl": 3, + "acceptance": 0.16409, + "videos": [], + "companies": [] }, { "title": "Binary Search Tree Iterator II", "id": 1729, "frontend_id": 1586, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.70595, + "videos": [], + "companies": [] }, { "title": "Special Array With X Elements Greater Than or Equal X", "id": 1730, "frontend_id": 1608, - "videos": [], + "difficulty_lvl": 1, + "acceptance": 0.60225, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/Z51jYCeBLVI", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } - ] + ], + "rating": 1370 }, { "title": "Even Odd Tree", "id": 1731, "frontend_id": 1609, + "difficulty_lvl": 2, + "acceptance": 0.55039, "videos": [], "companies": [ { "name": "JPMorgan", - "score": 10 + "score": 3 }, { "name": "Bloomberg", "score": 1 } - ] + ], + "rating": 1438 }, { "title": "Minimum One Bit Operations to Make Integers Zero", "id": 1732, "frontend_id": 1611, - "videos": [] + "rating": 2345, + "difficulty_lvl": 3, + "acceptance": 0.63312, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Maximum Number of Visible Points", "id": 1733, "frontend_id": 1610, - "videos": [] + "rating": 2147, + "difficulty_lvl": 3, + "acceptance": 0.37352, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Bank Account Summary II", "id": 1734, "frontend_id": 1587, - "videos": [] + "rating": 2024, + "difficulty_lvl": 1, + "acceptance": 0.84537, + "videos": [], + "companies": [] }, { "title": "The Most Frequently Ordered Products for Each Customer", "id": 1735, "frontend_id": 1596, - "videos": [] + "rating": 2500, + "difficulty_lvl": 2, + "acceptance": 0.81191, + "videos": [], + "companies": [] }, { "title": "Build Binary Expression Tree From Infix Expression", "id": 1736, "frontend_id": 1597, - "videos": [] + "rating": 1264, + "difficulty_lvl": 3, + "acceptance": 0.62566, + "videos": [], + "companies": [] }, { "title": "Maximum Nesting Depth of the Parentheses", "id": 1737, "frontend_id": 1614, + "rating": 1323, + "difficulty_lvl": 1, + "acceptance": 0.8172, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 10 + "score": 4 }, { "name": "Facebook", - "score": 1 + "score": 3 } ] }, @@ -39619,106 +44653,151 @@ "title": "Maximal Network Rank", "id": 1738, "frontend_id": 1615, - "videos": [] + "rating": 1522, + "difficulty_lvl": 2, + "acceptance": 0.59094, + "videos": [], + "companies": [] }, { "title": "Split Two Strings to Make Palindrome", "id": 1739, "frontend_id": 1616, - "videos": [] + "rating": 1868, + "difficulty_lvl": 2, + "acceptance": 0.31017, + "videos": [], + "companies": [] }, { "title": "Count Subtrees With Max Distance Between Cities", "id": 1740, "frontend_id": 1617, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.65991, + "videos": [], + "companies": [], + "rating": 2309 }, { "title": "Sort Array by Increasing Frequency", "id": 1741, "frontend_id": 1636, + "difficulty_lvl": 1, + "acceptance": 0.70092, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 5 }, { "name": "Oracle", - "score": 4 + "score": 3 }, { "name": "Twilio", - "score": 1 + "score": 2 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "C3 IoT", - "score": 1 + "score": 2 } - ] + ], + "rating": 1430 }, { "title": "Widest Vertical Area Between Two Points Containing No Points", "id": 1742, "frontend_id": 1637, + "rating": 1487, + "difficulty_lvl": 2, + "acceptance": 0.84424, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 1 } + ], + "languages": [ + "java" ] }, { "title": "Count Substrings That Differ by One Character", "id": 1743, "frontend_id": 1638, - "videos": [] + "rating": 1745, + "difficulty_lvl": 2, + "acceptance": 0.71115, + "videos": [], + "companies": [] }, { "title": "Number of Ways to Form a Target String Given a Dictionary", "id": 1744, "frontend_id": 1639, - "videos": [] + "rating": 2082, + "difficulty_lvl": 3, + "acceptance": 0.531, + "videos": [], + "companies": [] }, { "title": "Find Nearest Right Node in Binary Tree", "id": 1745, "frontend_id": 1602, - "videos": [] + "rating": 1925, + "difficulty_lvl": 2, + "acceptance": 0.75552, + "videos": [], + "companies": [] }, { "title": "Largest Substring Between Two Equal Characters", "id": 1746, "frontend_id": 1624, + "difficulty_lvl": 1, + "acceptance": 0.59071, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } + ], + "rating": 1282, + "languages": [ + "java" ] }, { "title": "Lexicographically Smallest String After Applying Operations", "id": 1747, "frontend_id": 1625, + "difficulty_lvl": 2, + "acceptance": 0.65821, "videos": [], "companies": [ { "name": "JP Morgan", - "score": 6 + "score": "JPMorgan" } - ] + ], + "rating": 1992 }, { "title": "Best Team With No Conflicts", "id": 1748, "frontend_id": 1626, + "rating": 2027, + "difficulty_lvl": 2, + "acceptance": 0.50721, "videos": [ { "embedded_url": "https://www.youtube.com/embed/7kURH3btcV4", @@ -39728,7 +44807,7 @@ "companies": [ { "name": "Uber", - "score": 10 + "score": 2 }, { "name": "Morgan Stanley", @@ -39740,27 +44819,38 @@ "title": "Sellers With No Sales", "id": 1749, "frontend_id": 1607, - "videos": [] + "rating": 1542, + "difficulty_lvl": 1, + "acceptance": 0.54282, + "videos": [], + "companies": [] }, { "title": "Check If Two Expression Trees are Equivalent", "id": 1750, "frontend_id": 1612, - "videos": [] + "rating": 1502, + "difficulty_lvl": 2, + "acceptance": 0.70303, + "videos": [], + "companies": [] }, { "title": "Slowest Key", "id": 1751, "frontend_id": 1629, + "rating": 1315, + "difficulty_lvl": 1, + "acceptance": 0.59093, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 17 }, { "name": "Walmart Global Tech", - "score": 1 + "score": 2 } ] }, @@ -39768,59 +44858,92 @@ "title": "Arithmetic Subarrays", "id": 1752, "frontend_id": 1630, + "rating": 1422, + "difficulty_lvl": 2, + "acceptance": 0.80758, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Path With Minimum Effort", "id": 1753, "frontend_id": 1631, - "videos": [] + "rating": 1948, + "difficulty_lvl": 2, + "acceptance": 0.5639, + "videos": [], + "companies": [] }, { "title": "Defuse the Bomb", "id": 1755, "frontend_id": 1652, - "videos": [] + "rating": 1417, + "difficulty_lvl": 1, + "acceptance": 0.6277, + "videos": [], + "companies": [] }, { "title": "Minimum Deletions to Make String Balanced", "id": 1756, "frontend_id": 1653, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.58954, + "videos": [], + "companies": [], + "rating": 1794 }, { "title": "Minimum Jumps to Reach Home", "id": 1757, "frontend_id": 1654, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.29241, + "videos": [], + "companies": [], + "rating": 2124 }, { "title": "Distribute Repeating Integers", "id": 1758, "frontend_id": 1655, - "videos": [] + "rating": 2307, + "difficulty_lvl": 3, + "acceptance": 0.39427, + "videos": [], + "companies": [] }, { "title": "Find the Missing IDs", "id": 1759, "frontend_id": 1613, - "videos": [] + "rating": 1491, + "difficulty_lvl": 2, + "acceptance": 0.74106, + "videos": [], + "companies": [] }, { "title": "Check Array Formation Through Concatenation", "id": 1760, "frontend_id": 1640, + "rating": 1524, + "difficulty_lvl": 1, + "acceptance": 0.56274, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 } ] }, @@ -39828,137 +44951,199 @@ "title": "Count Sorted Vowel Strings", "id": 1761, "frontend_id": 1641, + "rating": 1519, + "difficulty_lvl": 2, + "acceptance": 0.77707, "videos": [], "companies": [ { "name": "Google", - "score": 10 + "score": 3 }, { "name": "Salesforce", - "score": 1 + "score": 2 } + ], + "languages": [ + "cpp" ] }, { "title": "Furthest Building You Can Reach", "id": 1762, "frontend_id": 1642, + "difficulty_lvl": 2, + "acceptance": 0.48418, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 5 }, { "name": "Google", - "score": 4 + "score": 3 }, { "name": "Microsoft", - "score": 1 + "score": 2 } - ] + ], + "rating": 1962 }, { "title": "All Valid Triplets That Can Represent a Country", "id": 1763, "frontend_id": 1623, - "videos": [] + "rating": 1522, + "difficulty_lvl": 1, + "acceptance": 0.8543, + "videos": [], + "companies": [] }, { "title": "Maximum Repeating Substring", "id": 1764, "frontend_id": 1668, + "rating": 1396, + "difficulty_lvl": 1, + "acceptance": 0.38989, "videos": [], "companies": [ { "name": "Pure Storage", - "score": 6 + "score": 3 } - ] + ], + "languages": [] }, { "title": "Merge In Between Linked Lists", "id": 1765, "frontend_id": 1669, - "videos": [] + "rating": 1428, + "difficulty_lvl": 2, + "acceptance": 0.73264, + "videos": [], + "companies": [] }, { "title": "Minimum Number of Removals to Make Mountain Array", "id": 1766, "frontend_id": 1671, - "videos": [] + "rating": 1913, + "difficulty_lvl": 3, + "acceptance": 0.41995, + "videos": [], + "companies": [] }, { "title": "Design Front Middle Back Queue", "id": 1767, "frontend_id": 1670, + "difficulty_lvl": 2, + "acceptance": 0.56616, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 3 } - ] + ], + "rating": 1610 }, { "title": "Design an Expression Tree With Evaluate Function", "id": 1768, "frontend_id": 1628, + "rating": 1167, + "difficulty_lvl": 2, + "acceptance": 0.82849, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 7 } - ] + ], + "languages": [] }, { "title": "Get Maximum in Generated Array", "id": 1769, "frontend_id": 1646, - "videos": [] + "rating": 1301, + "difficulty_lvl": 1, + "acceptance": 0.50126, + "videos": [], + "companies": [] }, { "title": "Minimum Deletions to Make Character Frequencies Unique", "id": 1770, "frontend_id": 1647, - "videos": [] + "rating": 1510, + "difficulty_lvl": 2, + "acceptance": 0.58919, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Sell Diminishing-Valued Colored Balls", "id": 1771, "frontend_id": 1648, - "videos": [] + "rating": 2050, + "difficulty_lvl": 2, + "acceptance": 0.30251, + "videos": [], + "companies": [] }, { "title": "Create Sorted Array through Instructions", "id": 1772, "frontend_id": 1649, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.37867, + "videos": [], + "companies": [], + "rating": 2208 }, { "title": "Percentage of Users Attended a Contest", "id": 1773, "frontend_id": 1633, - "videos": [] + "rating": 1175, + "difficulty_lvl": 1, + "acceptance": 0.60008, + "videos": [], + "companies": [] }, { "title": "Add Two Polynomials Represented as Linked Lists", "id": 1774, "frontend_id": 1634, - "videos": [] + "rating": 1702, + "difficulty_lvl": 2, + "acceptance": 0.54805, + "videos": [], + "companies": [] }, { "title": "Design an Ordered Stream", "id": 1775, "frontend_id": 1656, + "rating": 1419, + "difficulty_lvl": 1, + "acceptance": 0.84841, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 20 } ] }, @@ -39966,51 +45151,75 @@ "title": "Minimum Operations to Reduce X to Zero", "id": 1776, "frontend_id": 1658, + "rating": 1817, + "difficulty_lvl": 2, + "acceptance": 0.37617, "videos": [], "companies": [ { "name": "Google", - "score": 10 + "score": 3 }, { "name": "Amazon", - "score": 1 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Determine if Two Strings Are Close", "id": 1777, "frontend_id": 1657, + "difficulty_lvl": 2, + "acceptance": 0.54852, "videos": [], "companies": [ { "name": "Postmates", - "score": 6 + "score": 1 } + ], + "rating": 1530, + "languages": [ + "java" ] }, { "title": "Maximize Grid Happiness", "id": 1778, "frontend_id": 1659, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.39273, + "videos": [], + "companies": [], + "rating": 2655 }, { "title": "Hopper Company Queries I", "id": 1779, "frontend_id": 1635, - "videos": [] + "rating": 1260, + "difficulty_lvl": 3, + "acceptance": 0.48641, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Lowest Common Ancestor of a Binary Tree II", "id": 1780, "frontend_id": 1644, + "rating": 1506, + "difficulty_lvl": 2, + "acceptance": 0.61322, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 8 } ] }, @@ -40018,11 +45227,14 @@ "title": "Check If Two String Arrays are Equivalent", "id": 1781, "frontend_id": 1662, + "rating": 1217, + "difficulty_lvl": 1, + "acceptance": 0.83613, "videos": [], "companies": [ { "name": "Apple", - "score": 10 + "score": 2 }, { "name": "Facebook", @@ -40034,11 +45246,14 @@ "title": "Smallest String With A Given Numeric Value", "id": 1782, "frontend_id": 1663, + "rating": 1461, + "difficulty_lvl": 2, + "acceptance": 0.66689, "videos": [], "companies": [ { "name": "Adobe", - "score": 6 + "score": 2 } ] }, @@ -40046,93 +45261,114 @@ "title": "Ways to Make a Fair Array", "id": 1783, "frontend_id": 1664, + "difficulty_lvl": 2, + "acceptance": 0.63245, "videos": [], "companies": [ { "name": "Microsoft", - "score": 10 + "score": 2 }, { "name": "Dunzo", "score": 1 } - ] + ], + "rating": 1590 }, { "title": "Minimum Initial Energy to Finish Tasks", "id": 1784, "frontend_id": 1665, - "videos": [] + "rating": 1901, + "difficulty_lvl": 3, + "acceptance": 0.56862, + "videos": [], + "companies": [] }, { "title": "Hopper Company Queries II", "id": 1785, "frontend_id": 1645, - "videos": [] + "rating": 1432, + "difficulty_lvl": 3, + "acceptance": 0.38618, + "videos": [], + "companies": [] }, { "title": "Count the Number of Consistent Strings", "id": 1786, "frontend_id": 1684, - "videos": [] + "rating": 1289, + "difficulty_lvl": 1, + "acceptance": 0.82465, + "videos": [], + "companies": [] }, { "title": "Sum of Absolute Differences in a Sorted Array", "id": 1787, "frontend_id": 1685, - "videos": [] + "rating": 1496, + "difficulty_lvl": 2, + "acceptance": 0.62743, + "videos": [], + "companies": [] }, { "title": "Stone Game VI", "id": 1788, "frontend_id": 1686, + "difficulty_lvl": 2, + "acceptance": 0.55619, "videos": [], "companies": [ { "name": "APT Portfolio", - "score": 6 + "score": 1 } - ] + ], + "rating": 2001 }, { "title": "Delivering Boxes from Storage to Ports", "id": 1789, "frontend_id": 1687, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.38887, + "videos": [], + "companies": [], + "rating": 2610 }, { "title": "Lowest Common Ancestor of a Binary Tree III", "id": 1790, "frontend_id": 1650, + "rating": 1301, + "difficulty_lvl": 2, + "acceptance": 0.77564, "videos": [], "companies": [ { "name": "Facebook", - "score": 10 + "score": 156 }, { "name": "Microsoft", - "score": 1 + "score": 5 }, { "name": "LinkedIn", - "score": 1 + "score": 5 }, { "name": "Amazon", - "score": 1 + "score": 3 }, { "name": "Google", - "score": 1 - }, - { - "name": "Spotify", - "score": 1 - }, - { - "name": "Sumologic", - "score": 1 + "score": 3 } ] }, @@ -40140,11 +45376,14 @@ "title": "Richest Customer Wealth", "id": 1791, "frontend_id": 1672, + "rating": 1183, + "difficulty_lvl": 1, + "acceptance": 0.87547, "videos": [], "companies": [ { "name": "Adobe", - "score": 6 + "score": 2 } ] }, @@ -40152,11 +45391,14 @@ "title": "Find the Most Competitive Subsequence", "id": 1792, "frontend_id": 1673, + "rating": 1802, + "difficulty_lvl": 2, + "acceptance": 0.49427, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } ] }, @@ -40164,12 +45406,18 @@ "title": "Minimum Moves to Make Array Complementary", "id": 1793, "frontend_id": 1674, - "videos": [] + "rating": 2333, + "difficulty_lvl": 2, + "acceptance": 0.38717, + "videos": [], + "companies": [] }, { "title": "Minimize Deviation in Array", "id": 1794, "frontend_id": 1675, + "difficulty_lvl": 3, + "acceptance": 0.5435, "videos": [ { "embedded_url": "https://www.youtube.com/embed/boHNFptxo2A", @@ -40179,31 +45427,46 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } + ], + "rating": 2533, + "languages": [ + "cpp" ] }, { "title": "Hopper Company Queries III", "id": 1795, "frontend_id": 1651, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.66949, + "videos": [], + "companies": [] }, { "title": "Correct a Binary Tree", "id": 1796, "frontend_id": 1660, - "videos": [] + "rating": 1342, + "difficulty_lvl": 2, + "acceptance": 0.72394, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Goal Parser Interpretation", "id": 1797, "frontend_id": 1678, + "rating": 1222, + "difficulty_lvl": 1, + "acceptance": 0.86738, "videos": [], "companies": [ { "name": "Apple", - "score": 6 + "score": 2 } ] }, @@ -40211,11 +45474,14 @@ "title": "Max Number of K-Sum Pairs", "id": 1798, "frontend_id": 1679, + "rating": 1346, + "difficulty_lvl": 2, + "acceptance": 0.56291, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -40223,77 +45489,129 @@ "title": "Minimum Incompatibility", "id": 1799, "frontend_id": 1681, - "videos": [] + "rating": 2390, + "difficulty_lvl": 3, + "acceptance": 0.38624, + "videos": [], + "companies": [] }, { "title": "Concatenation of Consecutive Binary Numbers", "id": 1800, "frontend_id": 1680, + "rating": 1630, + "difficulty_lvl": 2, + "acceptance": 0.57022, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 3 } - ] + ], + "languages": [] }, { "title": "Average Time of Process per Machine", "id": 1801, "frontend_id": 1661, - "videos": [] + "rating": 1711, + "difficulty_lvl": 1, + "acceptance": 0.70101, + "videos": [], + "companies": [] }, { "title": "Number of Students Unable to Eat Lunch", "id": 1802, "frontend_id": 1700, - "videos": [], + "rating": 1404, + "difficulty_lvl": 1, + "acceptance": 0.69724, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/d_cvtFwnOZg", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Flipkart", - "score": 6 + "score": 7 } + ], + "languages": [ + "javascript", + "python", + "cpp" ] }, { "title": "Average Waiting Time", "id": 1803, "frontend_id": 1701, - "videos": [] + "rating": 1436, + "difficulty_lvl": 2, + "acceptance": 0.62935, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/2fN7uIgCIBA", + "channel": "NeetCodeIO" + } + ], + "companies": [] }, { "title": "Maximum Binary String After Change", "id": 1804, "frontend_id": 1702, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.46305, + "videos": [], + "companies": [], + "rating": 1825 }, { "title": "Minimum Adjacent Swaps for K Consecutive Ones", "id": 1805, "frontend_id": 1703, - "videos": [] + "rating": 2467, + "difficulty_lvl": 3, + "acceptance": 0.42641, + "videos": [], + "companies": [] }, { "title": "Count of Matches in Tournament", "id": 1806, "frontend_id": 1688, + "rating": 1203, + "difficulty_lvl": 1, + "acceptance": 0.83055, "videos": [], "companies": [ { "name": "Adobe", - "score": 6 + "score": 2 } + ], + "languages": [ + "javascript", + "java" ] }, { "title": "Partitioning Into Minimum Number Of Deci-Binary Numbers", "id": 1807, "frontend_id": 1689, + "rating": 1355, + "difficulty_lvl": 2, + "acceptance": 0.88949, "videos": [], "companies": [ { "name": "Apple", - "score": 6 + "score": 2 } ] }, @@ -40301,11 +45619,14 @@ "title": "Stone Game VII", "id": 1808, "frontend_id": 1690, + "rating": 1951, + "difficulty_lvl": 2, + "acceptance": 0.58, "videos": [], "companies": [ { "name": "Dunzo", - "score": 6 + "score": 1 } ] }, @@ -40313,29 +45634,41 @@ "title": "Sum Of Special Evenly-Spaced Elements In Array", "id": 1809, "frontend_id": 1714, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.49153, + "videos": [], + "companies": [] }, { "title": "Change the Root of a Binary Tree", "id": 1810, "frontend_id": 1666, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.72812, + "videos": [], + "companies": [] }, { "title": "Fix Names in a Table", "id": 1811, "frontend_id": 1667, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.64464, + "videos": [], + "companies": [] }, { "title": "Reformat Phone Number", "id": 1812, "frontend_id": 1694, + "rating": 1322, + "difficulty_lvl": 1, + "acceptance": 0.65123, "videos": [], "companies": [ { "name": "Toptal", - "score": 6 + "score": 3 } ] }, @@ -40343,11 +45676,14 @@ "title": "Maximum Erasure Value", "id": 1813, "frontend_id": 1695, + "rating": 1529, + "difficulty_lvl": 2, + "acceptance": 0.57615, "videos": [], "companies": [ { "name": "Cashfree", - "score": 6 + "score": 1 } ] }, @@ -40355,41 +45691,67 @@ "title": "Jump Game VI", "id": 1814, "frontend_id": 1696, - "videos": [] + "rating": 1954, + "difficulty_lvl": 2, + "acceptance": 0.4586, + "videos": [], + "companies": [] }, { "title": "Checking Existence of Edge Length Limited Paths", "id": 1815, "frontend_id": 1697, - "videos": [] + "rating": 2300, + "difficulty_lvl": 3, + "acceptance": 0.62829, + "videos": [], + "companies": [] }, { "title": "Lowest Common Ancestor of a Binary Tree IV", "id": 1816, "frontend_id": 1676, - "videos": [] + "rating": 1236, + "difficulty_lvl": 2, + "acceptance": 0.78926, + "videos": [], + "companies": [] }, { "title": "Calculate Money in Leetcode Bank", "id": 1817, "frontend_id": 1716, + "rating": 1295, + "difficulty_lvl": 1, + "acceptance": 0.66502, "videos": [], "companies": [ { "name": "edabit", - "score": 6 + "score": 1 } + ], + "languages": [ + "java" ] }, { "title": "Maximum Score From Removing Substrings", "id": 1818, "frontend_id": 1717, - "videos": [], + "rating": 1868, + "difficulty_lvl": 2, + "acceptance": 0.46354, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/r_3a0oG1VcY", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -40397,11 +45759,14 @@ "title": "Construct the Lexicographically Largest Valid Sequence", "id": 1819, "frontend_id": 1718, + "rating": 2080, + "difficulty_lvl": 2, + "acceptance": 0.52638, "videos": [], "companies": [ { "name": "Salesforce", - "score": 10 + "score": 3 }, { "name": "Facebook", @@ -40413,35 +45778,54 @@ "title": "Number Of Ways To Reconstruct A Tree", "id": 1820, "frontend_id": 1719, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.43747, + "videos": [], + "companies": [], + "rating": 3018 }, { "title": "Product's Worth Over Invoices", "id": 1821, "frontend_id": 1677, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.38098, + "videos": [], + "companies": [] }, { "title": "Longest Palindromic Subsequence II", "id": 1822, "frontend_id": 1682, - "videos": [] + "rating": 1210, + "difficulty_lvl": 2, + "acceptance": 0.50061, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Determine if String Halves Are Alike", "id": 1823, "frontend_id": 1704, - "videos": [] + "rating": 1208, + "difficulty_lvl": 1, + "acceptance": 0.77506, + "videos": [], + "companies": [] }, { "title": "Maximum Number of Eaten Apples", "id": 1824, "frontend_id": 1705, + "rating": 1930, + "difficulty_lvl": 2, + "acceptance": 0.38183, "videos": [], "companies": [ { "name": "Microsoft", - "score": 10 + "score": 2 }, { "name": "Uber", @@ -40453,43 +45837,62 @@ "title": "Find Minimum Time to Finish All Jobs", "id": 1825, "frontend_id": 1723, - "videos": [] + "rating": 2284, + "difficulty_lvl": 3, + "acceptance": 0.42056, + "videos": [], + "companies": [] }, { "title": "Maximum XOR With an Element From Array", "id": 1826, "frontend_id": 1707, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.47339, + "videos": [], + "companies": [], + "rating": 2359 }, { "title": "Invalid Tweets", "id": 1827, "frontend_id": 1683, - "videos": [] + "rating": 1315, + "difficulty_lvl": 1, + "acceptance": 0.8617, + "videos": [], + "companies": [] }, { "title": "Count Ways to Distribute Candies", "id": 1828, "frontend_id": 1692, - "videos": [] + "rating": 1380, + "difficulty_lvl": 3, + "acceptance": 0.62324, + "videos": [], + "companies": [] }, { "title": "Maximum Units on a Truck", "id": 1829, "frontend_id": 1710, + "rating": 1310, + "difficulty_lvl": 1, + "acceptance": 0.73676, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 29 }, { "name": "JPMorgan", - "score": 1 + "score": 2 }, { "name": "LinkedIn", - "score": 1 + "score": 2 } ] }, @@ -40497,43 +45900,58 @@ "title": "Count Good Meals", "id": 1830, "frontend_id": 1711, + "rating": 1798, + "difficulty_lvl": 2, + "acceptance": 0.29512, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 2 }, { "name": "Adobe", - "score": 10 + "score": 2 }, { "name": "Robinhood", "score": 1 } - ] + ], + "languages": [] }, { "title": "Ways to Split Array Into Three Subarrays", "id": 1831, "frontend_id": 1712, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.3271, + "videos": [], + "companies": [], + "rating": 2079 }, { "title": "Minimum Operations to Make a Subsequence", "id": 1832, "frontend_id": 1713, - "videos": [] + "rating": 2351, + "difficulty_lvl": 3, + "acceptance": 0.48398, + "videos": [], + "companies": [] }, { "title": "Find the Highest Altitude", "id": 1833, "frontend_id": 1732, + "rating": 1257, + "difficulty_lvl": 1, + "acceptance": 0.82321, "videos": [], "companies": [ { "name": "Apple", - "score": 6 + "score": 3 } ] }, @@ -40541,81 +45959,115 @@ "title": "Minimum Number of People to Teach", "id": 1834, "frontend_id": 1733, + "rating": 1984, + "difficulty_lvl": 2, + "acceptance": 0.41604, "videos": [], "companies": [ { "name": "Duolingo", - "score": 6 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Decode XORed Permutation", "id": 1835, "frontend_id": 1734, - "videos": [] + "rating": 2024, + "difficulty_lvl": 2, + "acceptance": 0.635, + "videos": [], + "companies": [] }, { "title": "Count Ways to Make Array With Product", "id": 1836, "frontend_id": 1735, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.50408, + "videos": [], + "companies": [], + "rating": 2500 }, { "title": "Daily Leads and Partners", "id": 1837, "frontend_id": 1693, - "videos": [] + "rating": 1282, + "difficulty_lvl": 1, + "acceptance": 0.87441, + "videos": [], + "companies": [] }, { "title": "Number of Distinct Substrings in a String", "id": 1838, "frontend_id": 1698, - "videos": [] + "rating": 1876, + "difficulty_lvl": 2, + "acceptance": 0.63054, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Decode XORed Array", "id": 1839, "frontend_id": 1720, - "videos": [] + "rating": 1284, + "difficulty_lvl": 1, + "acceptance": 0.85787, + "videos": [], + "companies": [] }, { "title": "Minimize Hamming Distance After Swap Operations", "id": 1840, "frontend_id": 1722, - "videos": [] + "rating": 1892, + "difficulty_lvl": 2, + "acceptance": 0.48667, + "videos": [], + "companies": [] }, { "title": "Number of Calls Between Two Persons", "id": 1842, "frontend_id": 1699, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.81725, + "videos": [], + "companies": [] }, { "title": "Number Of Rectangles That Can Form The Largest Square", "id": 1843, "frontend_id": 1725, + "difficulty_lvl": 1, + "acceptance": 0.78556, "videos": [], "companies": [ { "name": "AllinCall", - "score": 6 + "score": 1 } - ] + ], + "rating": 1229 }, { "title": "Maximum Number of Balls in a Box", "id": 1844, "frontend_id": 1742, + "rating": 1278, + "difficulty_lvl": 1, + "acceptance": 0.73486, "videos": [], "companies": [ { "name": "Microsoft", - "score": 10 - }, - { - "name": "AppDynamics", - "score": 1 + "score": 2 } ] }, @@ -40623,23 +46075,30 @@ "title": "Largest Submatrix With Rearrangements", "id": 1845, "frontend_id": 1727, + "rating": 1927, + "difficulty_lvl": 2, + "acceptance": 0.61729, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": "Directi" } - ] + ], + "languages": [] }, { "title": "Largest Subarray Length K", "id": 1847, "frontend_id": 1708, + "rating": 2082, + "difficulty_lvl": 1, + "acceptance": 0.63954, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -40647,11 +46106,14 @@ "title": "Sum of Unique Elements", "id": 1848, "frontend_id": 1748, + "rating": 1228, + "difficulty_lvl": 1, + "acceptance": 0.76528, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 } ] }, @@ -40659,27 +46121,34 @@ "title": "Maximum Absolute Sum of Any Subarray", "id": 1849, "frontend_id": 1749, + "rating": 1542, + "difficulty_lvl": 2, + "acceptance": 0.58861, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 }, { "name": "Adobe", - "score": 6 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Minimum Length of String After Deleting Similar Ends", "id": 1850, "frontend_id": 1750, + "rating": 1502, + "difficulty_lvl": 2, + "acceptance": 0.44353, "videos": [], "companies": [ { "name": "Goldman Sachs", - "score": 6 + "score": "Amazon" } ] }, @@ -40687,77 +46156,118 @@ "title": "Maximum Number of Events That Can Be Attended II", "id": 1851, "frontend_id": 1751, - "videos": [] + "rating": 2041, + "difficulty_lvl": 3, + "acceptance": 0.63518, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Biggest Window Between Visits", "id": 1852, "frontend_id": 1709, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.73522, + "videos": [], + "companies": [] }, { "title": "Latest Time by Replacing Hidden Digits", "id": 1858, "frontend_id": 1736, + "difficulty_lvl": 1, + "acceptance": 0.42259, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } - ] + ], + "rating": 1264 }, { "title": "Change Minimum Characters to Satisfy One of Three Conditions", "id": 1859, "frontend_id": 1737, - "videos": [] + "rating": 1953, + "difficulty_lvl": 2, + "acceptance": 0.35513, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Find Kth Largest XOR Coordinate Value", "id": 1860, "frontend_id": 1738, - "videos": [] + "rating": 1671, + "difficulty_lvl": 2, + "acceptance": 0.61201, + "videos": [], + "companies": [] }, { "title": "Building Boxes", "id": 1861, "frontend_id": 1739, - "videos": [] + "rating": 2198, + "difficulty_lvl": 3, + "acceptance": 0.52009, + "videos": [], + "companies": [] }, { "title": "Count Apples and Oranges", "id": 1862, "frontend_id": 1715, - "videos": [] + "rating": 2170, + "difficulty_lvl": 2, + "acceptance": 0.75681, + "videos": [], + "companies": [] }, { "title": "Checking Existence of Edge Length Limited Paths II", "id": 1865, "frontend_id": 1724, - "videos": [] + "rating": 1681, + "difficulty_lvl": 3, + "acceptance": 0.52406, + "videos": [], + "companies": [] }, { "title": "Restore the Array From Adjacent Pairs", "id": 1866, "frontend_id": 1743, + "rating": 1579, + "difficulty_lvl": 2, + "acceptance": 0.689, "videos": [], "companies": [ { "name": "Capital One", - "score": 6 + "score": 2 } + ], + "languages": [ + "java" ] }, { "title": "Palindrome Partitioning IV", "id": 1871, "frontend_id": 1745, + "rating": 1925, + "difficulty_lvl": 3, + "acceptance": 0.44637, "videos": [], "companies": [ { "name": "tcs", - "score": 6 + "score": 1 } ] }, @@ -40765,51 +46275,68 @@ "title": "Can You Eat Your Favorite Candy on Your Favorite Day?", "id": 1872, "frontend_id": 1744, - "videos": [] + "rating": 1859, + "difficulty_lvl": 2, + "acceptance": 0.33394, + "videos": [], + "companies": [] }, { "title": "Longest Nice Substring", "id": 1873, "frontend_id": 1763, + "difficulty_lvl": 1, + "acceptance": 0.60879, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 4 } - ] + ], + "rating": 1522 }, { "title": "Form Array by Concatenating Subarrays of Another Array", "id": 1874, "frontend_id": 1764, + "difficulty_lvl": 2, + "acceptance": 0.53173, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } - ] + ], + "rating": 1588 }, { "title": "Tree of Coprimes", "id": 1875, "frontend_id": 1766, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.39708, + "videos": [], + "companies": [], + "rating": 2232 }, { "title": "Map of Highest Peak", "id": 1876, "frontend_id": 1765, + "rating": 1783, + "difficulty_lvl": 2, + "acceptance": 0.60793, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Microsoft", - "score": 6 + "score": 2 } ] }, @@ -40817,29 +46344,40 @@ "title": "Find Followers Count", "id": 1877, "frontend_id": 1729, - "videos": [] + "rating": 1301, + "difficulty_lvl": 1, + "acceptance": 0.70001, + "videos": [], + "companies": [] }, { "title": "Check if Array Is Sorted and Rotated", "id": 1878, "frontend_id": 1752, + "rating": 1325, + "difficulty_lvl": 1, + "acceptance": 0.50453, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Maximum Score From Removing Stones", "id": 1879, "frontend_id": 1753, + "rating": 1488, + "difficulty_lvl": 2, + "acceptance": 0.67213, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } ] }, @@ -40847,11 +46385,14 @@ "title": "Largest Merge Of Two Strings", "id": 1880, "frontend_id": 1754, + "rating": 1829, + "difficulty_lvl": 2, + "acceptance": 0.46526, "videos": [], "companies": [ { "name": "Snapchat", - "score": 6 + "score": 1 } ] }, @@ -40859,77 +46400,113 @@ "title": "Closest Subsequence Sum", "id": 1881, "frontend_id": 1755, - "videos": [] + "rating": 2364, + "difficulty_lvl": 3, + "acceptance": 0.37361, + "videos": [], + "companies": [] }, { "title": "The Number of Employees Which Report to Each Employee", "id": 1882, "frontend_id": 1731, - "videos": [] + "rating": 1979, + "difficulty_lvl": 1, + "acceptance": 0.46121, + "videos": [], + "companies": [] }, { "title": "Find Distance in a Binary Tree", "id": 1883, "frontend_id": 1740, - "videos": [] + "rating": 2588, + "difficulty_lvl": 2, + "acceptance": 0.69544, + "videos": [], + "companies": [] }, { "title": "Minimum Changes To Make Alternating Binary String", "id": 1884, "frontend_id": 1758, + "difficulty_lvl": 1, + "acceptance": 0.58069, "videos": [], "companies": [ { "name": "Tesla", - "score": 6 + "score": 2 } + ], + "rating": 1354, + "languages": [ + "java" ] }, { "title": "Count Number of Homogenous Substrings", "id": 1885, "frontend_id": 1759, + "difficulty_lvl": 2, + "acceptance": 0.48805, "videos": [], "companies": [ { "name": "Virtu Financial", - "score": 6 + "score": 1 } - ] + ], + "rating": 1491 }, { "title": "Minimum Limit of Balls in a Bag", "id": 1886, "frontend_id": 1760, - "videos": [] + "rating": 1940, + "difficulty_lvl": 2, + "acceptance": 0.60398, + "videos": [], + "companies": [] }, { "title": "Minimum Degree of a Connected Trio in a Graph", "id": 1887, "frontend_id": 1761, - "videos": [] + "rating": 2005, + "difficulty_lvl": 3, + "acceptance": 0.41745, + "videos": [], + "companies": [] }, { "title": "Find Nearest Point That Has the Same X or Y Coordinate", "id": 1888, "frontend_id": 1779, + "rating": 1260, + "difficulty_lvl": 1, + "acceptance": 0.67478, "videos": [], "companies": [ { "name": "DoorDash", - "score": 6 + "score": 3 } - ] + ], + "languages": [] }, { "title": "Check if Number is a Sum of Powers of Three", "id": 1889, "frontend_id": 1780, + "rating": 1506, + "difficulty_lvl": 2, + "acceptance": 0.66414, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } ] }, @@ -40937,35 +46514,48 @@ "title": "Sum of Beauty of All Substrings", "id": 1890, "frontend_id": 1781, + "difficulty_lvl": 2, + "acceptance": 0.62552, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } - ] + ], + "rating": 1715 }, { "title": "Count Pairs Of Nodes", "id": 1891, "frontend_id": 1782, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.3893, + "videos": [], + "companies": [], + "rating": 2457 }, { "title": "Find Total Time Spent by Each Employee", "id": 1892, "frontend_id": 1741, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.8863, + "videos": [], + "companies": [] }, { "title": "Maximum Subarray Sum After One Operation", "id": 1893, "frontend_id": 1746, + "rating": 1307, + "difficulty_lvl": 2, + "acceptance": 0.62187, "videos": [], "companies": [ { "name": "Sprinklr", - "score": 6 + "score": 1 } ] }, @@ -40973,23 +46563,35 @@ "title": "Merge Strings Alternately", "id": 1894, "frontend_id": 1768, + "rating": 1167, + "difficulty_lvl": 1, + "acceptance": 0.803, "videos": [], "companies": [ { "name": "Uber", - "score": 6 + "score": 3 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Minimum Number of Operations to Move All Balls to Each Box", "id": 1895, "frontend_id": 1769, + "rating": 1295, + "difficulty_lvl": 2, + "acceptance": 0.85375, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -40997,53 +46599,72 @@ "title": "Maximum Score from Performing Multiplication Operations", "id": 1896, "frontend_id": 1770, - "videos": [] + "rating": 2068, + "difficulty_lvl": 3, + "acceptance": 0.38299, + "videos": [], + "companies": [] }, { "title": "Maximize Palindrome Length From Subsequences", "id": 1897, "frontend_id": 1771, - "videos": [] + "rating": 2182, + "difficulty_lvl": 3, + "acceptance": 0.3531, + "videos": [], + "companies": [] }, { "title": "Leetflex Banned Accounts", "id": 1898, "frontend_id": 1747, - "videos": [] + "rating": 1913, + "difficulty_lvl": 2, + "acceptance": 0.66253, + "videos": [], + "companies": [] }, { "title": "Count Items Matching a Rule", "id": 1899, "frontend_id": 1773, + "rating": 1175, + "difficulty_lvl": 1, + "acceptance": 0.84434, "videos": [], "companies": [ { "name": "Adobe", - "score": 10 + "score": 3 }, { "name": "Facebook", - "score": 1 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Closest Dessert Cost", "id": 1900, "frontend_id": 1774, + "rating": 1702, + "difficulty_lvl": 2, + "acceptance": 0.47327, "videos": [], "companies": [ { "name": "ByteDance", - "score": 10 + "score": 3 }, { "name": "tiktok", - "score": 1 + "score": 2 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -41051,33 +46672,43 @@ "title": "Equal Sum Arrays With Minimum Number of Operations", "id": 1901, "frontend_id": 1775, + "difficulty_lvl": 2, + "acceptance": 0.53302, "videos": [], "companies": [ { "name": "HRT", - "score": 10 + "score": 7 }, { "name": "Microsoft", - "score": 1 + "score": 2 } - ] + ], + "rating": 1850 }, { "title": "Car Fleet II", "id": 1902, "frontend_id": 1776, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.539, + "videos": [], + "companies": [], + "rating": 2531 }, { "title": "Design Most Recently Used Queue", "id": 1903, "frontend_id": 1756, + "rating": 1249, + "difficulty_lvl": 2, + "acceptance": 0.78067, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -41085,11 +46716,14 @@ "title": "Second Largest Digit in a String", "id": 1904, "frontend_id": 1796, + "rating": 1342, + "difficulty_lvl": 1, + "acceptance": 0.49446, "videos": [], "companies": [ { "name": "Softwire", - "score": 6 + "score": 1 } ] }, @@ -41097,101 +46731,148 @@ "title": "Design Authentication Manager", "id": 1905, "frontend_id": 1797, + "rating": 1534, + "difficulty_lvl": 2, + "acceptance": 0.56891, "videos": [], "companies": [ { "name": "Twitter", - "score": 6 + "score": 1 } - ] + ], + "languages": [] }, { "title": "Maximize Score After N Operations", "id": 1906, "frontend_id": 1799, - "videos": [] + "rating": 2073, + "difficulty_lvl": 3, + "acceptance": 0.5844, + "videos": [], + "companies": [] }, { "title": "Count Pairs With XOR in a Range", "id": 1907, "frontend_id": 1803, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.47284, + "videos": [], + "companies": [], + "rating": 2479 }, { "title": "Recyclable and Low Fat Products", "id": 1908, "frontend_id": 1757, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.9109, + "videos": [], + "companies": [] }, { "title": "Buildings With an Ocean View", "id": 1909, "frontend_id": 1762, - "videos": [] + "rating": 1461, + "difficulty_lvl": 2, + "acceptance": 0.79012, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Check if Binary String Has at Most One Segment of Ones", "id": 1910, "frontend_id": 1784, + "rating": 1206, + "difficulty_lvl": 1, + "acceptance": 0.39662, "videos": [], "companies": [ { "name": "Cisco", - "score": 6 + "score": 1 } - ] + ], + "languages": [] }, { "title": "Minimum Elements to Add to Form a Given Sum", "id": 1911, "frontend_id": 1785, + "rating": 1432, + "difficulty_lvl": 2, + "acceptance": 0.42836, "videos": [], "companies": [ { "name": "Twitter", - "score": 6 + "score": 1 } - ] + ], + "languages": [] }, { "title": "Number of Restricted Paths From First to Last Node", "id": 1912, "frontend_id": 1786, - "videos": [] + "rating": 2079, + "difficulty_lvl": 2, + "acceptance": 0.39054, + "videos": [], + "companies": [] }, { "title": "Make the XOR of All Segments Equal to Zero", "id": 1913, "frontend_id": 1787, - "videos": [] + "rating": 2640, + "difficulty_lvl": 3, + "acceptance": 0.39555, + "videos": [], + "companies": [] }, { "title": "Find the Subtasks That Did Not Execute", "id": 1914, "frontend_id": 1767, - "videos": [] + "rating": 1766, + "difficulty_lvl": 3, + "acceptance": 0.79068, + "videos": [], + "companies": [] }, { "title": "Check if One String Swap Can Make Strings Equal", "id": 1915, "frontend_id": 1790, + "rating": 1301, + "difficulty_lvl": 1, + "acceptance": 0.45296, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 } - ] + ], + "languages": [] }, { "title": "Find Center of Star Graph", "id": 1916, "frontend_id": 1791, + "rating": 1287, + "difficulty_lvl": 1, + "acceptance": 0.83443, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 1 } ] }, @@ -41199,29 +46880,38 @@ "title": "Maximum Average Pass Ratio", "id": 1917, "frontend_id": 1792, + "difficulty_lvl": 2, + "acceptance": 0.52738, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } - ] + ], + "rating": 1818 }, { "title": "Maximum Score of a Good Subarray", "id": 1918, "frontend_id": 1793, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.5369, + "videos": [], + "companies": [], + "rating": 1946 }, { "title": "Sort Features by Popularity", "id": 1919, "frontend_id": 1772, + "difficulty_lvl": 2, + "acceptance": 0.65278, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -41229,23 +46919,30 @@ "title": "Determine Color of a Chessboard Square", "id": 1920, "frontend_id": 1812, + "rating": 1329, + "difficulty_lvl": 1, + "acceptance": 0.7784, "videos": [], "companies": [ { "name": "JPMorgan", - "score": 6 + "score": 1 } - ] + ], + "languages": [] }, { "title": "Sentence Similarity III", "id": 1923, "frontend_id": 1813, + "rating": 1589, + "difficulty_lvl": 2, + "acceptance": 0.33208, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -41253,17 +46950,24 @@ "title": "Maximum Number of Groups Getting Fresh Donuts", "id": 1924, "frontend_id": 1815, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.40072, + "videos": [], + "companies": [], + "rating": 2559 }, { "title": "Count Nice Pairs in an Array", "id": 1925, "frontend_id": 1814, + "rating": 1738, + "difficulty_lvl": 2, + "acceptance": 0.41917, "videos": [], "companies": [ { "name": "Uber", - "score": 6 + "score": 3 } ] }, @@ -41271,83 +46975,124 @@ "title": "Product's Price for Each Store", "id": 1926, "frontend_id": 1777, - "videos": [] + "rating": 1638, + "difficulty_lvl": 1, + "acceptance": 0.82852, + "videos": [], + "companies": [] }, { "title": "Maximum Ascending Subarray Sum", "id": 1927, "frontend_id": 1800, + "rating": 1229, + "difficulty_lvl": 1, + "acceptance": 0.62553, "videos": [], "companies": [ { "name": "tcs", - "score": 6 + "score": 1 } + ], + "languages": [ + "python" ] }, { "title": "Number of Orders in the Backlog", "id": 1928, "frontend_id": 1801, - "videos": [] + "rating": 1711, + "difficulty_lvl": 2, + "acceptance": 0.48876, + "videos": [], + "companies": [] }, { "title": "Maximum Value at a Given Index in a Bounded Array", "id": 1929, "frontend_id": 1802, - "videos": [] + "rating": 1929, + "difficulty_lvl": 2, + "acceptance": 0.40208, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Maximum Number of Consecutive Values You Can Make", "id": 1930, "frontend_id": 1798, - "videos": [] + "rating": 1931, + "difficulty_lvl": 2, + "acceptance": 0.56587, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Shortest Path in a Hidden Grid", "id": 1931, "frontend_id": 1778, - "videos": [] + "rating": 2170, + "difficulty_lvl": 2, + "acceptance": 0.39087, + "videos": [], + "companies": [] }, { "title": "Grand Slam Titles", "id": 1932, "frontend_id": 1783, - "videos": [] + "rating": 2484, + "difficulty_lvl": 2, + "acceptance": 0.85666, + "videos": [], + "companies": [] }, { "title": "Number of Different Integers in a String", "id": 1933, "frontend_id": 1805, + "difficulty_lvl": 1, + "acceptance": 0.3687, "videos": [], "companies": [ { "name": "Expedia", - "score": 6 + "score": 2 } - ] + ], + "rating": 1333 }, { "title": "Evaluate the Bracket Pairs of a String", "id": 1934, "frontend_id": 1807, + "difficulty_lvl": 2, + "acceptance": 0.66547, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 } - ] + ], + "rating": 1482 }, { "title": "Minimum Number of Operations to Reinitialize a Permutation", "id": 1935, "frontend_id": 1806, + "rating": 1491, + "difficulty_lvl": 2, + "acceptance": 0.72337, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -41355,23 +47100,35 @@ "title": "Maximize Number of Nice Divisors", "id": 1936, "frontend_id": 1808, - "videos": [] + "rating": 2070, + "difficulty_lvl": 3, + "acceptance": 0.32134, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Maximize the Beauty of the Garden", "id": 1937, "frontend_id": 1788, - "videos": [] + "rating": 2106, + "difficulty_lvl": 3, + "acceptance": 0.67065, + "videos": [], + "companies": [] }, { "title": "Minimum Operations to Make the Array Increasing", "id": 1938, "frontend_id": 1827, + "rating": 1315, + "difficulty_lvl": 1, + "acceptance": 0.78273, "videos": [], "companies": [ { "name": "Apple", - "score": 10 + "score": 2 }, { "name": "Deutsche Bank", @@ -41383,53 +47140,74 @@ "title": "Queries on Number of Points Inside a Circle", "id": 1939, "frontend_id": 1828, + "difficulty_lvl": 2, + "acceptance": 0.86107, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } - ] + ], + "rating": 1380 }, { "title": "Maximum XOR for Each Query", "id": 1940, "frontend_id": 1829, + "difficulty_lvl": 2, + "acceptance": 0.76922, "videos": [], "companies": [ { "name": "Uber", - "score": 6 + "score": 1 } - ] + ], + "rating": 1523 }, { "title": "Minimum Number of Operations to Make String Sorted", "id": 1941, "frontend_id": 1830, - "videos": [] + "rating": 2620, + "difficulty_lvl": 3, + "acceptance": 0.4964, + "videos": [], + "companies": [] }, { "title": "Primary Department for Each Employee", "id": 1942, "frontend_id": 1789, - "videos": [] + "rating": 1695, + "difficulty_lvl": 1, + "acceptance": 0.71609, + "videos": [], + "companies": [] }, { "title": "Count Pairs of Equal Substrings With Minimum Difference", "id": 1943, "frontend_id": 1794, - "videos": [] + "rating": 1969, + "difficulty_lvl": 2, + "acceptance": 0.65241, + "videos": [], + "companies": [] }, { "title": "Truncate Sentence", "id": 1944, "frontend_id": 1816, + "rating": 1236, + "difficulty_lvl": 1, + "acceptance": 0.83528, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 1 } ] }, @@ -41437,11 +47215,14 @@ "title": "Finding the Users Active Minutes", "id": 1945, "frontend_id": 1817, + "rating": 1360, + "difficulty_lvl": 2, + "acceptance": 0.80335, "videos": [], "companies": [ { "name": "Twitter", - "score": 6 + "score": 10 } ] }, @@ -41449,75 +47230,127 @@ "title": "Minimum Absolute Sum Difference", "id": 1946, "frontend_id": 1818, - "videos": [] + "rating": 1934, + "difficulty_lvl": 2, + "acceptance": 0.30601, + "videos": [], + "companies": [] }, { "title": "Number of Different Subsequences GCDs", "id": 1947, "frontend_id": 1819, - "videos": [] + "rating": 2540, + "difficulty_lvl": 3, + "acceptance": 0.39559, + "videos": [], + "companies": [] }, { "title": "Rearrange Products Table", "id": 1948, "frontend_id": 1795, - "videos": [] + "rating": 2534, + "difficulty_lvl": 1, + "acceptance": 0.85981, + "videos": [], + "companies": [] }, { "title": "Implement Trie II (Prefix Tree)", "id": 1949, "frontend_id": 1804, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.59618, + "videos": [], + "companies": [ + { + "name": "Apple", + "score": 2 + }, + { + "name": "Docusign", + "score": 2 + } + ] }, { "title": "Sign of the Product of an Array", "id": 1950, "frontend_id": 1822, + "difficulty_lvl": 1, + "acceptance": 0.65524, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 45 } - ] + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" + ], + "rating": 1210 }, { "title": "Find the Winner of the Circular Game", "id": 1951, "frontend_id": 1823, - "videos": [], + "difficulty_lvl": 2, + "acceptance": 0.7805, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/PBBQgW_75e0", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Goldman Sachs", - "score": 10 + "score": 4 }, { "name": "Bloomberg", - "score": 1 + "score": 2 } - ] + ], + "rating": 1412 }, { "title": "Minimum Sideway Jumps", "id": 1952, "frontend_id": 1824, - "videos": [] + "rating": 1778, + "difficulty_lvl": 2, + "acceptance": 0.49605, + "videos": [], + "companies": [] }, { "title": "Finding MK Average", "id": 1953, "frontend_id": 1825, - "videos": [] + "rating": 2396, + "difficulty_lvl": 3, + "acceptance": 0.35621, + "videos": [], + "companies": [] }, { "title": "Replace All Digits with Characters", "id": 1954, "frontend_id": 1844, + "rating": 1301, + "difficulty_lvl": 1, + "acceptance": 0.80321, "videos": [], "companies": [ { "name": "Adobe", - "score": 10 + "score": 2 }, { "name": "Google", @@ -41529,6 +47362,9 @@ "title": "Seat Reservation Manager", "id": 1955, "frontend_id": 1845, + "rating": 1429, + "difficulty_lvl": 2, + "acceptance": 0.66569, "videos": [ { "embedded_url": "https://www.youtube.com/embed/ahobllKXEEY", @@ -41538,47 +47374,74 @@ "companies": [ { "name": "Dropbox", - "score": 6 + "score": 1 } + ], + "languages": [ + "python", + "cpp" ] }, { "title": "Maximum Element After Decreasing and Rearranging", "id": 1956, "frontend_id": 1846, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.59163, + "videos": [], + "companies": [], + "rating": 1454, + "languages": [ + "java" + ] }, { "title": "Closest Room", "id": 1957, "frontend_id": 1847, - "videos": [] + "rating": 2082, + "difficulty_lvl": 3, + "acceptance": 0.36316, + "videos": [], + "companies": [] }, { "title": "Ad-Free Sessions", "id": 1958, "frontend_id": 1809, - "videos": [] + "rating": 1659, + "difficulty_lvl": 1, + "acceptance": 0.58533, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Minimum Path Cost in a Hidden Grid", "id": 1959, "frontend_id": 1810, - "videos": [] + "rating": 2310, + "difficulty_lvl": 2, + "acceptance": 0.54647, + "videos": [], + "companies": [] }, { "title": "Check if the Sentence Is Pangram", "id": 1960, "frontend_id": 1832, + "rating": 1167, + "difficulty_lvl": 1, + "acceptance": 0.83186, "videos": [], "companies": [ { "name": "Goldman Sachs", - "score": 10 + "score": 3 }, { "name": "Facebook", - "score": 1 + "score": 2 } ] }, @@ -41586,79 +47449,131 @@ "title": "Maximum Ice Cream Bars", "id": 1961, "frontend_id": 1833, - "videos": [] + "rating": 1253, + "difficulty_lvl": 2, + "acceptance": 0.73821, + "videos": [], + "companies": [] }, { "title": "Single-Threaded CPU", "id": 1962, "frontend_id": 1834, + "rating": 1798, + "difficulty_lvl": 2, + "acceptance": 0.45586, "videos": [ { "embedded_url": "https://www.youtube.com/embed/RR1n-d4oYqE", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "java" ] }, { "title": "Find XOR Sum of All Pairs Bitwise AND", "id": 1963, "frontend_id": 1835, - "videos": [] + "rating": 1825, + "difficulty_lvl": 3, + "acceptance": 0.60834, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Find Interview Candidates", "id": 1964, "frontend_id": 1811, - "videos": [] + "rating": 1933, + "difficulty_lvl": 2, + "acceptance": 0.62368, + "videos": [], + "companies": [] }, { "title": "Sum of Digits in Base K", "id": 1965, "frontend_id": 1837, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.77005, + "videos": [], + "companies": [], + "rating": 1282 }, { "title": "Frequency of the Most Frequent Element", "id": 1966, "frontend_id": 1838, + "difficulty_lvl": 2, + "acceptance": 0.39761, "videos": [ { "embedded_url": "https://www.youtube.com/embed/vgBrQ0NM5vE", "channel": "NeetCode" } - ] + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" + ], + "rating": 1876 }, { "title": "Longest Substring Of All Vowels in Order", "id": 1967, "frontend_id": 1839, - "videos": [] + "rating": 1580, + "difficulty_lvl": 2, + "acceptance": 0.48852, + "videos": [], + "companies": [] }, { "title": "Maximum Building Height", "id": 1968, "frontend_id": 1840, - "videos": [] + "rating": 2374, + "difficulty_lvl": 3, + "acceptance": 0.35882, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Maximum Number of Accepted Invitations", "id": 1969, "frontend_id": 1820, - "videos": [] + "rating": 1967, + "difficulty_lvl": 2, + "acceptance": 0.49293, + "videos": [], + "companies": [] }, { "title": "Sorting the Sentence", "id": 1970, "frontend_id": 1859, + "rating": 1290, + "difficulty_lvl": 1, + "acceptance": 0.83351, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Adobe", - "score": 6 + "score": 2 } ] }, @@ -41666,53 +47581,66 @@ "title": "Incremental Memory Leak", "id": 1971, "frontend_id": 1860, + "difficulty_lvl": 2, + "acceptance": 0.71887, "videos": [], "companies": [ { "name": "tiktok", - "score": 6 + "score": 1 } - ] + ], + "rating": 1387 }, { "title": "Rotating the Box", "id": 1972, "frontend_id": 1861, + "difficulty_lvl": 2, + "acceptance": 0.65766, "videos": [], "companies": [ { "name": "Uber", - "score": 10 + "score": 4 }, { "name": "Netflix", - "score": 10 + "score": 4 }, { "name": "eBay", - "score": 1 + "score": 2 }, { "name": "Capital One", - "score": 1 + "score": 2 } - ] + ], + "rating": 1537 }, { "title": "Find Customers With Positive Revenue this Year", "id": 1974, "frontend_id": 1821, - "videos": [] + "rating": 1364, + "difficulty_lvl": 1, + "acceptance": 0.88706, + "videos": [], + "companies": [] }, { "title": "Minimum Distance to the Target Element", "id": 1975, "frontend_id": 1848, + "rating": 1217, + "difficulty_lvl": 1, + "acceptance": 0.56652, "videos": [], "companies": [ { "name": "Honeywell", - "score": 6 + "score": 1 } ] }, @@ -41720,67 +47648,104 @@ "title": "Splitting a String Into Descending Consecutive Values", "id": 1976, "frontend_id": 1849, + "rating": 1747, + "difficulty_lvl": 2, + "acceptance": 0.33794, "videos": [ { "embedded_url": "https://www.youtube.com/embed/eDtMmysldaw", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "python", + "cpp" ] }, { "title": "Minimum Interval to Include Each Query", "id": 1977, "frontend_id": 1851, + "rating": 2286, + "difficulty_lvl": 3, + "acceptance": 0.48625, "videos": [ { "embedded_url": "https://www.youtube.com/embed/5hQ5WWW5awQ", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Minimum Adjacent Swaps to Reach the Kth Smallest Number", "id": 1978, "frontend_id": 1850, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.7121, + "videos": [], + "companies": [], + "rating": 2073 }, { "title": "Maximum Number of People That Can Be Caught in Tag", "id": 1979, "frontend_id": 1989, - "videos": [] + "rating": 1184, + "difficulty_lvl": 2, + "acceptance": 0.51454, + "videos": [], + "companies": [] }, { "title": "Faulty Sensor", "id": 1980, "frontend_id": 1826, + "rating": 1362, + "difficulty_lvl": 1, + "acceptance": 0.49588, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 1 } - ] + ], + "languages": [] }, { "title": "Maximum Transaction Each Day", "id": 1981, "frontend_id": 1831, - "videos": [] + "rating": 2010, + "difficulty_lvl": 2, + "acceptance": 0.81968, + "videos": [], + "companies": [] }, { "title": "Remove Duplicates From an Unsorted Linked List", "id": 1982, "frontend_id": 1836, + "rating": 2872, + "difficulty_lvl": 2, + "acceptance": 0.70878, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 }, { "name": "Goldman Sachs", - "score": 6 + "score": 2 } ] }, @@ -41788,54 +47753,76 @@ "title": "Maximum Population Year", "id": 1983, "frontend_id": 1854, + "difficulty_lvl": 1, + "acceptance": 0.601, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 2 }, { "name": "Cisco", - "score": 6 + "score": 2 }, { "name": "Bloomberg", - "score": 6 + "score": 2 } - ] + ], + "rating": 1370 }, { "title": "Maximum Distance Between a Pair of Values", "id": 1984, "frontend_id": 1855, - "videos": [] + "rating": 1515, + "difficulty_lvl": 2, + "acceptance": 0.53361, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Maximum Subarray Min-Product", "id": 1985, "frontend_id": 1856, + "rating": 2051, + "difficulty_lvl": 2, + "acceptance": 0.37923, "videos": [ { "embedded_url": "https://www.youtube.com/embed/YLesLbNkyjA", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "java" ] }, { "title": "Largest Color Value in a Directed Graph", "id": 1986, "frontend_id": 1857, - "videos": [] + "rating": 2313, + "difficulty_lvl": 3, + "acceptance": 0.51388, + "videos": [], + "companies": [] }, { "title": "Substrings of Size Three with Distinct Characters", "id": 1987, "frontend_id": 1876, + "rating": 1249, + "difficulty_lvl": 1, + "acceptance": 0.71894, "videos": [], "companies": [ { "name": "Quora", - "score": 6 + "score": 1 } ] }, @@ -41843,352 +47830,542 @@ "title": "Minimize Maximum Pair Sum in Array", "id": 1988, "frontend_id": 1877, + "difficulty_lvl": 2, + "acceptance": 0.79729, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 3 } + ], + "rating": 1301, + "languages": [ + "java" ] }, { "title": "Minimum XOR Sum of Two Arrays", "id": 1989, "frontend_id": 1879, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.45947, + "videos": [], + "companies": [], + "rating": 2145 }, { "title": "Get Biggest Three Rhombus Sums in a Grid", "id": 1990, "frontend_id": 1878, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.47185, + "videos": [], + "companies": [], + "rating": 1898 }, { "title": "League Statistics", "id": 1991, "frontend_id": 1841, - "videos": [] + "rating": 1303, + "difficulty_lvl": 2, + "acceptance": 0.54068, + "videos": [], + "companies": [] }, { "title": "Sort Linked List Already Sorted Using Absolute Values", "id": 1992, "frontend_id": 2046, - "videos": [] + "rating": 1539, + "difficulty_lvl": 2, + "acceptance": 0.68329, + "videos": [], + "companies": [] }, { "title": "Sum of All Subset XOR Totals", "id": 1993, "frontend_id": 1863, + "rating": 1372, + "difficulty_lvl": 1, + "acceptance": 0.80374, "videos": [], "companies": [ { "name": "Adobe", - "score": 6 + "score": 2 } + ], + "languages": [ + "javascript" ] }, { "title": "Minimum Number of Swaps to Make the Binary String Alternating", "id": 1994, "frontend_id": 1864, - "videos": [] + "rating": 1601, + "difficulty_lvl": 2, + "acceptance": 0.42824, + "videos": [], + "companies": [] }, { "title": "Finding Pairs With a Certain Sum", "id": 1995, "frontend_id": 1865, - "videos": [] + "rating": 1681, + "difficulty_lvl": 2, + "acceptance": 0.50335, + "videos": [], + "companies": [] }, { "title": "Number of Ways to Rearrange Sticks With K Sticks Visible", "id": 1996, "frontend_id": 1866, + "rating": 2333, + "difficulty_lvl": 3, + "acceptance": 0.56099, "videos": [ { "embedded_url": "https://www.youtube.com/embed/O761YBjGxGA", "channel": "NeetCode" } - ] + ], + "companies": [] }, { "title": "Next Palindrome Using Same Digits", "id": 1997, "frontend_id": 1842, - "videos": [] + "rating": 2260, + "difficulty_lvl": 3, + "acceptance": 0.52996, + "videos": [], + "companies": [] }, { "title": "Suspicious Bank Accounts", "id": 1998, "frontend_id": 1843, - "videos": [] + "rating": 2429, + "difficulty_lvl": 2, + "acceptance": 0.45995, + "videos": [], + "companies": [] }, { "title": "Longer Contiguous Segments of Ones than Zeros", "id": 1999, "frontend_id": 1869, + "difficulty_lvl": 1, + "acceptance": 0.60314, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } - ] + ], + "rating": 1205 }, { "title": "Minimum Speed to Arrive on Time", "id": 2000, "frontend_id": 1870, - "videos": [] + "rating": 1676, + "difficulty_lvl": 2, + "acceptance": 0.47152, + "videos": [], + "companies": [] }, { "title": "Jump Game VII", "id": 2001, "frontend_id": 1871, + "rating": 1896, + "difficulty_lvl": 2, + "acceptance": 0.24872, "videos": [ { "embedded_url": "https://www.youtube.com/embed/v1HpZUnQ4Yo", "channel": "NeetCode" } - ] + ], + "companies": [], + "languages": [] }, { "title": "Stone Game VIII", "id": 2002, "frontend_id": 1872, - "videos": [] + "rating": 2440, + "difficulty_lvl": 3, + "acceptance": 0.52473, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Distinct Numbers in Each Subarray", "id": 2003, "frontend_id": 1852, - "videos": [] + "rating": 2415, + "difficulty_lvl": 2, + "acceptance": 0.70972, + "videos": [], + "companies": [] }, { "title": "Convert Date Format", "id": 2004, "frontend_id": 1853, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.86229, + "videos": [], + "companies": [] }, { "title": "Check if All the Integers in a Range Are Covered", "id": 2005, "frontend_id": 1893, + "difficulty_lvl": 1, + "acceptance": 0.49989, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 1 } - ] + ], + "rating": 1307 }, { "title": "Find the Student that Will Replace the Chalk", "id": 2006, "frontend_id": 1894, - "videos": [] + "rating": 1356, + "difficulty_lvl": 2, + "acceptance": 0.4475, + "videos": [], + "companies": [] }, { "title": "Maximum Cost of Trip With K Highways", "id": 2007, "frontend_id": 2247, - "videos": [] + "rating": 1557, + "difficulty_lvl": 3, + "acceptance": 0.50787, + "videos": [], + "companies": [] }, { "title": "Minimum Cost to Change the Final Value of Expression", "id": 2008, "frontend_id": 1896, - "videos": [] + "rating": 2532, + "difficulty_lvl": 3, + "acceptance": 0.53965, + "videos": [], + "companies": [] }, { "title": "Longest Word With All Prefixes", "id": 2009, "frontend_id": 1858, - "videos": [] + "rating": 2084, + "difficulty_lvl": 2, + "acceptance": 0.67571, + "videos": [], + "companies": [] }, { "title": "Check if Word Equals Summation of Two Words", "id": 2010, "frontend_id": 1880, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.7375, + "videos": [], + "companies": [], + "rating": 1187 }, { "title": "Maximum Value after Insertion", "id": 2011, "frontend_id": 1881, - "videos": [] + "rating": 1381, + "difficulty_lvl": 2, + "acceptance": 0.37335, + "videos": [], + "companies": [] }, { "title": "Process Tasks Using Servers", "id": 2012, "frontend_id": 1882, + "rating": 1979, + "difficulty_lvl": 2, + "acceptance": 0.39621, "videos": [ { "embedded_url": "https://www.youtube.com/embed/XKA22PecuMQ", "channel": "NeetCode" } - ] + ], + "companies": [] }, { "title": "Minimum Skips to Arrive at Meeting On Time", "id": 2013, "frontend_id": 1883, - "videos": [] + "rating": 2588, + "difficulty_lvl": 3, + "acceptance": 0.37583, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Orders With Maximum Quantity Above Average", "id": 2014, "frontend_id": 1867, - "videos": [] + "rating": 2558, + "difficulty_lvl": 2, + "acceptance": 0.71935, + "videos": [], + "companies": [] }, { "title": "Determine Whether Matrix Can Be Obtained By Rotation", "id": 2015, "frontend_id": 1886, + "difficulty_lvl": 1, + "acceptance": 0.5618, "videos": [], "companies": [ { "name": "Adobe", - "score": 6 + "score": 2 } - ] + ], + "rating": 1407 }, { "title": "Reduction Operations to Make the Array Elements Equal", "id": 2016, "frontend_id": 1887, - "videos": [] + "rating": 1428, + "difficulty_lvl": 2, + "acceptance": 0.62585, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Minimum Number of Flips to Make the Binary String Alternating", "id": 2017, "frontend_id": 1888, + "rating": 2006, + "difficulty_lvl": 2, + "acceptance": 0.39309, "videos": [ { "embedded_url": "https://www.youtube.com/embed/MOeuK6gaC2A", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "javascript", + "python" ] }, { "title": "Minimum Space Wasted From Packaging", "id": 2018, "frontend_id": 1889, - "videos": [] + "rating": 2214, + "difficulty_lvl": 3, + "acceptance": 0.31398, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Product of Two Run-Length Encoded Arrays", "id": 2019, "frontend_id": 1868, - "videos": [] + "rating": 2584, + "difficulty_lvl": 2, + "acceptance": 0.57688, + "videos": [], + "companies": [] }, { "title": "Remove One Element to Make the Array Strictly Increasing", "id": 2020, "frontend_id": 1909, + "difficulty_lvl": 1, + "acceptance": 0.26344, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 } - ] + ], + "rating": 1461 }, { "title": "Remove All Occurrences of a Substring", "id": 2021, "frontend_id": 1910, + "difficulty_lvl": 2, + "acceptance": 0.75579, "videos": [], "companies": [ { "name": "Microsoft", - "score": 10 + "score": 3 }, { "name": "MakeMyTrip", - "score": 1 + "score": 2 }, { "name": "Google", - "score": 1 + "score": 2 }, { "name": "Amazon", - "score": 1 + "score": 2 } - ] + ], + "rating": 1461 }, { "title": "Maximum Alternating Subsequence Sum", "id": 2022, "frontend_id": 1911, + "rating": 1786, + "difficulty_lvl": 2, + "acceptance": 0.5924, "videos": [ { "embedded_url": "https://www.youtube.com/embed/4v42XOuU1XA", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "cpp" ] }, { "title": "Design Movie Rental System", "id": 2023, "frontend_id": 1912, - "videos": [] + "rating": 2182, + "difficulty_lvl": 3, + "acceptance": 0.35954, + "videos": [], + "companies": [] }, { "title": "Calculate Special Bonus", "id": 2024, "frontend_id": 1873, - "videos": [] + "rating": 1643, + "difficulty_lvl": 1, + "acceptance": 0.58552, + "videos": [], + "companies": [] }, { "title": "Redistribute Characters to Make All Strings Equal", "id": 2025, "frontend_id": 1897, + "rating": 1309, + "difficulty_lvl": 1, + "acceptance": 0.5906, "videos": [], "companies": [ { "name": "Moengage", - "score": 6 + "score": 1 } + ], + "languages": [ + "java" ] }, { "title": "Merge Triplets to Form Target Triplet", "id": 2026, "frontend_id": 1899, + "difficulty_lvl": 2, + "acceptance": 0.64997, "videos": [ { "embedded_url": "https://www.youtube.com/embed/kShkQLQZ9K4", "channel": "NeetCode" } - ] + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" + ], + "rating": 1636 }, { "title": "Maximum Number of Removable Characters", "id": 2027, "frontend_id": 1898, + "rating": 1913, + "difficulty_lvl": 2, + "acceptance": 0.41757, "videos": [ { "embedded_url": "https://www.youtube.com/embed/NMP3nRPyX5g", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "javascript" ] }, { "title": "The Earliest and Latest Rounds Where Players Compete", "id": 2028, "frontend_id": 1900, - "videos": [] + "rating": 2455, + "difficulty_lvl": 3, + "acceptance": 0.50526, + "videos": [], + "companies": [] }, { "title": "Minimize Product Sum of Two Arrays", "id": 2029, "frontend_id": 1874, + "rating": 2277, + "difficulty_lvl": 2, + "acceptance": 0.89609, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -42196,29 +48373,46 @@ "title": "Group Employees of the Same Salary", "id": 2030, "frontend_id": 1875, - "videos": [] + "rating": 2562, + "difficulty_lvl": 2, + "acceptance": 0.70519, + "videos": [], + "companies": [] }, { "title": "Egg Drop With 2 Eggs and N Floors", "id": 2031, "frontend_id": 1884, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.71647, + "videos": [], + "companies": [] }, { "title": "Largest Odd Number in String", "id": 2032, "frontend_id": 1903, - "videos": [] + "rating": 1249, + "difficulty_lvl": 1, + "acceptance": 0.57292, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "The Number of Full Rounds You Have Played", "id": 2033, "frontend_id": 1904, + "rating": 1498, + "difficulty_lvl": 2, + "acceptance": 0.44488, "videos": [], "companies": [ { "name": "Wayfair", - "score": 6 + "score": 4 } ] }, @@ -42226,34 +48420,54 @@ "title": "Minimum Absolute Difference Queries", "id": 2034, "frontend_id": 1906, - "videos": [] + "rating": 2147, + "difficulty_lvl": 2, + "acceptance": 0.43974, + "videos": [], + "companies": [] }, { "title": "Count Sub Islands", "id": 2035, "frontend_id": 1905, + "rating": 1679, + "difficulty_lvl": 2, + "acceptance": 0.67588, "videos": [ { "embedded_url": "https://www.youtube.com/embed/mLpW3qfbNJ8", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Count Pairs in Two Arrays", "id": 2036, "frontend_id": 1885, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.59319, + "videos": [], + "companies": [] }, { "title": "Count Square Sum Triples", "id": 2037, "frontend_id": 1925, + "rating": 1324, + "difficulty_lvl": 1, + "acceptance": 0.67411, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -42261,11 +48475,14 @@ "title": "Nearest Exit from Entrance in Maze", "id": 2038, "frontend_id": 1926, + "rating": 1638, + "difficulty_lvl": 2, + "acceptance": 0.48096, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -42273,47 +48490,76 @@ "title": "Sum Game", "id": 2039, "frontend_id": 1927, - "videos": [] + "rating": 2005, + "difficulty_lvl": 2, + "acceptance": 0.46698, + "videos": [], + "companies": [] }, { "title": "Minimum Cost to Reach Destination in Time", "id": 2040, "frontend_id": 1928, - "videos": [] + "rating": 2413, + "difficulty_lvl": 3, + "acceptance": 0.37857, + "videos": [], + "companies": [] }, { "title": "The Latest Login in 2020", "id": 2041, "frontend_id": 1890, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.77774, + "videos": [], + "companies": [] }, { "title": "Maximum Product Difference Between Two Pairs", "id": 2042, "frontend_id": 1913, - "videos": [] + "rating": 1145, + "difficulty_lvl": 1, + "acceptance": 0.81065, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Cyclically Rotating a Grid", "id": 2043, "frontend_id": 1914, - "videos": [] + "rating": 1766, + "difficulty_lvl": 2, + "acceptance": 0.48629, + "videos": [], + "companies": [] }, { "title": "Number of Wonderful Substrings", "id": 2044, "frontend_id": 1915, - "videos": [] + "rating": 2235, + "difficulty_lvl": 2, + "acceptance": 0.45768, + "videos": [], + "companies": [] }, { "title": "Cutting Ribbons", "id": 2045, "frontend_id": 1891, + "rating": 2202, + "difficulty_lvl": 2, + "acceptance": 0.48542, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 31 } ] }, @@ -42321,76 +48567,112 @@ "title": "Page Recommendations II", "id": 2046, "frontend_id": 1892, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.43241, + "videos": [], + "companies": [] }, { "title": "Find a Peak Element II", "id": 2047, "frontend_id": 1901, - "videos": [] + "rating": 1472, + "difficulty_lvl": 2, + "acceptance": 0.51126, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Build Array from Permutation", "id": 2048, "frontend_id": 1920, + "rating": 1160, + "difficulty_lvl": 1, + "acceptance": 0.89722, "videos": [], "companies": [ { "name": "Apple", - "score": 10 + "score": 5 }, { "name": "Adobe", - "score": 4 + "score": 3 }, { "name": "Uber", - "score": 1 + "score": 2 }, { "name": "Google", - "score": 1 + "score": 2 } + ], + "languages": [ + "cpp" ] }, { "title": "Eliminate Maximum Number of Monsters", "id": 2049, "frontend_id": 1921, + "rating": 1528, + "difficulty_lvl": 2, + "acceptance": 0.37918, "videos": [ { "embedded_url": "https://www.youtube.com/embed/6QQRayzOTD4", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "cpp", + "java" ] }, { "title": "Count Good Numbers", "id": 2050, "frontend_id": 1922, - "videos": [] + "rating": 1675, + "difficulty_lvl": 2, + "acceptance": 0.41805, + "videos": [], + "companies": [] }, { "title": "Longest Common Subpath", "id": 2051, "frontend_id": 1923, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.27644, + "videos": [], + "companies": [], + "rating": 2661 }, { "title": "Depth of BST Given Insertion Order", "id": 2052, "frontend_id": 1902, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.4425, + "videos": [], + "companies": [] }, { "title": "Check if All Characters Have Equal Number of Occurrences", "id": 2053, "frontend_id": 1941, + "rating": 1243, + "difficulty_lvl": 1, + "acceptance": 0.76861, "videos": [], "companies": [ { "name": "Bolt", - "score": 6 + "score": 5 } ] }, @@ -42398,30 +48680,49 @@ "title": "The Number of the Smallest Unoccupied Chair", "id": 2054, "frontend_id": 1942, - "videos": [] + "rating": 1695, + "difficulty_lvl": 2, + "acceptance": 0.41096, + "videos": [], + "companies": [] }, { "title": "Describe the Painting", "id": 2055, "frontend_id": 1943, - "videos": [] + "rating": 1969, + "difficulty_lvl": 2, + "acceptance": 0.48551, + "videos": [], + "companies": [] }, { "title": "Jump Game VIII", "id": 2056, "frontend_id": 2297, - "videos": [] + "rating": 2611, + "difficulty_lvl": 2, + "acceptance": 0.52163, + "videos": [], + "companies": [] }, { "title": "Count Salary Categories", "id": 2057, "frontend_id": 1907, - "videos": [] + "rating": 1168, + "difficulty_lvl": 2, + "acceptance": 0.55836, + "videos": [], + "companies": [] }, { "title": "Concatenation of Array", "id": 2058, "frontend_id": 1929, + "rating": 1133, + "difficulty_lvl": 1, + "acceptance": 0.89734, "videos": [ { "embedded_url": "https://www.youtube.com/embed/68isPRHgcFQ", @@ -42431,130 +48732,211 @@ "companies": [ { "name": "Google", - "score": 10 + "score": 4 }, { "name": "Adobe", - "score": 1 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Unique Length-3 Palindromic Subsequences", "id": 2059, "frontend_id": 1930, + "rating": 1533, + "difficulty_lvl": 2, + "acceptance": 0.53138, "videos": [ { "embedded_url": "https://www.youtube.com/embed/3THUt0vAFLU", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Merge BSTs to Create Single BST", "id": 2060, "frontend_id": 1932, - "videos": [] + "rating": 2484, + "difficulty_lvl": 3, + "acceptance": 0.3546, + "videos": [], + "companies": [] }, { "title": "Painting a Grid With Three Different Colors", "id": 2061, "frontend_id": 1931, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.57589, + "videos": [], + "companies": [], + "rating": 2170 }, { "title": "Game of Nim", "id": 2062, "frontend_id": 1908, - "videos": [] + "rating": 1458, + "difficulty_lvl": 2, + "acceptance": 0.63802, + "videos": [], + "companies": [] }, { "title": "Leetcodify Friends Recommendations", "id": 2063, "frontend_id": 1917, - "videos": [] + "rating": 1663, + "difficulty_lvl": 3, + "acceptance": 0.27304, + "videos": [], + "companies": [] }, { "title": "Leetcodify Similar Friends", "id": 2064, "frontend_id": 1919, - "videos": [] + "rating": 1886, + "difficulty_lvl": 3, + "acceptance": 0.41728, + "videos": [], + "companies": [] }, { "title": "Check for Contradictions in Equations", "id": 2065, "frontend_id": 2307, - "videos": [] + "rating": 2178, + "difficulty_lvl": 3, + "acceptance": 0.42975, + "videos": [], + "companies": [] }, { "title": "Add Minimum Number of Rungs", "id": 2066, "frontend_id": 1936, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.43073, + "videos": [], + "companies": [], + "rating": 1323 }, { "title": "Maximum Number of Points with Cost", "id": 2067, "frontend_id": 1937, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.35882, + "videos": [], + "companies": [], + "rating": 2106 }, { "title": "Maximum Genetic Difference Query", "id": 2068, "frontend_id": 1938, - "videos": [] + "rating": 2503, + "difficulty_lvl": 3, + "acceptance": 0.40438, + "videos": [], + "companies": [] }, { "title": "Kth Smallest Subarray Sum", "id": 2069, "frontend_id": 1918, - "videos": [] + "rating": 1919, + "difficulty_lvl": 2, + "acceptance": 0.52736, + "videos": [], + "companies": [] }, { "title": "Check if String Is Decomposable Into Value-Equal Substrings", "id": 2070, "frontend_id": 1933, - "videos": [] + "rating": 1724, + "difficulty_lvl": 1, + "acceptance": 0.50381, + "videos": [], + "companies": [] }, { "title": "Longest Common Subsequence Between Sorted Arrays", "id": 2071, "frontend_id": 1940, - "videos": [] + "rating": 2648, + "difficulty_lvl": 2, + "acceptance": 0.7884, + "videos": [], + "companies": [] }, { "title": "Maximum of Minimum Values in All Subarrays", "id": 2072, "frontend_id": 1950, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.49752, + "videos": [], + "companies": [] }, { "title": "Minimum Time For K Virus Variants to Spread", "id": 2073, "frontend_id": 1956, - "videos": [] + "rating": 1325, + "difficulty_lvl": 3, + "acceptance": 0.49502, + "videos": [], + "companies": [] }, { "title": "Erect the Fence II", "id": 2074, "frontend_id": 1924, - "videos": [] + "rating": 1685, + "difficulty_lvl": 3, + "acceptance": 0.52841, + "videos": [], + "companies": [] }, { "title": "Brightest Position on Street", "id": 2075, "frontend_id": 2021, - "videos": [] + "rating": 1759, + "difficulty_lvl": 2, + "acceptance": 0.62353, + "videos": [], + "companies": [] }, { "title": "Sum of Digits of String After Convert", "id": 2076, "frontend_id": 1945, + "rating": 1255, + "difficulty_lvl": 1, + "acceptance": 0.61724, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 1 } ] }, @@ -42562,65 +48944,104 @@ "title": "Largest Number After Mutating Substring", "id": 2077, "frontend_id": 1946, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.35059, + "videos": [], + "companies": [], + "rating": 1445 }, { "title": "Maximum Compatibility Score Sum", "id": 2078, "frontend_id": 1947, - "videos": [] + "rating": 1704, + "difficulty_lvl": 2, + "acceptance": 0.61621, + "videos": [], + "companies": [] }, { "title": "Delete Duplicate Folders in System", "id": 2079, "frontend_id": 1948, - "videos": [] + "rating": 2534, + "difficulty_lvl": 3, + "acceptance": 0.56743, + "videos": [], + "companies": [] }, { "title": "Check if Move is Legal", "id": 2080, "frontend_id": 1958, + "rating": 1659, + "difficulty_lvl": 2, + "acceptance": 0.46133, "videos": [ { "embedded_url": "https://www.youtube.com/embed/KxK33AcQZpQ", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Minimum Total Space Wasted With K Resizing Operations", "id": 2081, "frontend_id": 1959, - "videos": [] + "rating": 2310, + "difficulty_lvl": 2, + "acceptance": 0.42359, + "videos": [], + "companies": [] }, { "title": "Minimum Cost to Separate Sentence Into Rows", "id": 2082, "frontend_id": 2052, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.50182, + "videos": [], + "companies": [] }, { "title": "Three Divisors", "id": 2083, "frontend_id": 1952, + "difficulty_lvl": 1, + "acceptance": 0.5878, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 1 } - ] + ], + "rating": 1204 }, { "title": "Maximum Number of Weeks for Which You Can Work", "id": 2084, "frontend_id": 1953, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.39613, + "videos": [], + "companies": [], + "rating": 1804 }, { "title": "Array With Elements Not Equal to Average of Neighbors", "id": 2085, "frontend_id": 1968, + "rating": 1499, + "difficulty_lvl": 2, + "acceptance": 0.49397, "videos": [ { "embedded_url": "https://www.youtube.com/embed/Wmb3YdVYfqM", @@ -42630,31 +49051,47 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } + ], + "languages": [ + "javascript", + "python", + "cpp" ] }, { "title": "Count Number of Special Subsequences", "id": 2086, "frontend_id": 1955, - "videos": [] + "rating": 2125, + "difficulty_lvl": 3, + "acceptance": 0.511, + "videos": [], + "companies": [] }, { "title": "Confirmation Rate", "id": 2087, "frontend_id": 1934, - "videos": [] + "rating": 1744, + "difficulty_lvl": 2, + "acceptance": 0.59423, + "videos": [], + "companies": [] }, { "title": "Minimum Time to Type Word Using Special Typewriter", "id": 2088, "frontend_id": 1974, + "rating": 1364, + "difficulty_lvl": 1, + "acceptance": 0.72991, "videos": [], "companies": [ { "name": "tiktok", - "score": 6 + "score": 3 } ] }, @@ -42662,82 +49099,130 @@ "title": "Maximum Matrix Sum", "id": 2089, "frontend_id": 1975, - "videos": [] + "rating": 1648, + "difficulty_lvl": 2, + "acceptance": 0.48695, + "videos": [], + "companies": [] }, { "title": "Number of Ways to Arrive at Destination", "id": 2090, "frontend_id": 1976, - "videos": [] + "rating": 2095, + "difficulty_lvl": 2, + "acceptance": 0.29159, + "videos": [], + "companies": [] }, { "title": "Number of Ways to Separate Numbers", "id": 2091, "frontend_id": 1977, - "videos": [] + "rating": 2817, + "difficulty_lvl": 3, + "acceptance": 0.20268, + "videos": [], + "companies": [] }, { "title": "Users That Actively Request Confirmation Messages", "id": 2092, "frontend_id": 1939, - "videos": [] + "rating": 2004, + "difficulty_lvl": 1, + "acceptance": 0.57484, + "videos": [], + "companies": [] }, { "title": "Check If String Is a Prefix of Array", "id": 2093, "frontend_id": 1961, + "difficulty_lvl": 1, + "acceptance": 0.52959, "videos": [], "companies": [ { "name": "Uber", - "score": 6 + "score": 1 } - ] + ], + "rating": 1234 }, { "title": "Remove Stones to Minimize the Total", "id": 2094, "frontend_id": 1962, - "videos": [] + "rating": 1419, + "difficulty_lvl": 2, + "acceptance": 0.60779, + "videos": [], + "companies": [] }, { "title": "Minimum Number of Swaps to Make the String Balanced", "id": 2095, "frontend_id": 1963, + "rating": 1689, + "difficulty_lvl": 2, + "acceptance": 0.69879, "videos": [ { "embedded_url": "https://www.youtube.com/embed/3YDBT9ZrfaU", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Find the Longest Valid Obstacle Course at Each Position", "id": 2096, "frontend_id": 1964, - "videos": [] + "rating": 1933, + "difficulty_lvl": 3, + "acceptance": 0.63692, + "videos": [], + "companies": [] }, { "title": "Strong Friendship", "id": 2097, "frontend_id": 1949, - "videos": [] + "rating": 2651, + "difficulty_lvl": 2, + "acceptance": 0.55234, + "videos": [], + "companies": [], + "languages": [] }, { "title": "All the Pairs With the Maximum Number of Common Followers", "id": 2098, "frontend_id": 1951, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.69573, + "videos": [], + "companies": [] }, { "title": "Number of Strings That Appear as Substrings in Word", "id": 2099, "frontend_id": 1967, + "rating": 1232, + "difficulty_lvl": 1, + "acceptance": 0.79937, "videos": [], "companies": [ { "name": "Uber", - "score": 6 + "score": 1 } ] }, @@ -42745,23 +49230,34 @@ "title": "Minimum Non-Zero Product of the Array Elements", "id": 2100, "frontend_id": 1969, - "videos": [] + "rating": 1967, + "difficulty_lvl": 2, + "acceptance": 0.34605, + "videos": [], + "companies": [] }, { "title": "Last Day Where You Can Still Cross", "id": 2101, "frontend_id": 1970, - "videos": [] + "rating": 2124, + "difficulty_lvl": 3, + "acceptance": 0.62759, + "videos": [], + "companies": [] }, { "title": "Find the Middle Index in Array", "id": 2102, "frontend_id": 1991, + "rating": 1303, + "difficulty_lvl": 1, + "acceptance": 0.67291, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 3 } ] }, @@ -42769,11 +49265,14 @@ "title": "Find All Groups of Farmland", "id": 2103, "frontend_id": 1992, + "rating": 1539, + "difficulty_lvl": 2, + "acceptance": 0.68337, "videos": [], "companies": [ { "name": "Citrix", - "score": 6 + "score": 1 } ] }, @@ -42781,28 +49280,42 @@ "title": "Operations on Tree", "id": 2104, "frontend_id": 1993, + "rating": 1861, + "difficulty_lvl": 2, + "acceptance": 0.4458, "videos": [ { "embedded_url": "https://www.youtube.com/embed/qK4PtjrVD0U", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "java" ] }, { "title": "The Number of Good Subsets", "id": 2105, "frontend_id": 1994, - "videos": [] + "rating": 2465, + "difficulty_lvl": 3, + "acceptance": 0.3452, + "videos": [], + "companies": [] }, { "title": "Find Greatest Common Divisor of Array", "id": 2106, "frontend_id": 1979, + "rating": 1184, + "difficulty_lvl": 1, + "acceptance": 0.77198, "videos": [], "companies": [ { "name": "TIAA", - "score": 6 + "score": 1 } ] }, @@ -42810,6 +49323,8 @@ "title": "Find Unique Binary String", "id": 2107, "frontend_id": 1980, + "difficulty_lvl": 2, + "acceptance": 0.65898, "videos": [ { "embedded_url": "https://www.youtube.com/embed/aHqn4Dynd1k", @@ -42819,19 +49334,27 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } + ], + "rating": 1362, + "languages": [ + "python", + "java" ] }, { "title": "Minimize the Difference Between Target and Chosen Elements", "id": 2108, "frontend_id": 1981, + "rating": 2010, + "difficulty_lvl": 2, + "acceptance": 0.32669, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } ] }, @@ -42839,23 +49362,34 @@ "title": "Find Array Given Subset Sums", "id": 2109, "frontend_id": 1982, - "videos": [] + "rating": 2872, + "difficulty_lvl": 3, + "acceptance": 0.48405, + "videos": [], + "companies": [] }, { "title": "Employees With Missing Information", "id": 2110, "frontend_id": 1965, - "videos": [] + "rating": 1408, + "difficulty_lvl": 1, + "acceptance": 0.72781, + "videos": [], + "companies": [] }, { "title": "Binary Searchable Numbers in an Unsorted Array", "id": 2111, "frontend_id": 1966, + "rating": 1941, + "difficulty_lvl": 2, + "acceptance": 0.65222, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -42863,17 +49397,29 @@ "title": "Minimum Difference Between Highest and Lowest of K Scores", "id": 2112, "frontend_id": 1984, + "difficulty_lvl": 1, + "acceptance": 0.55181, "videos": [ { "embedded_url": "https://www.youtube.com/embed/JU5XdBZZtlk", "channel": "NeetCode" } - ] + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" + ], + "rating": 1306 }, { "title": "Find the Kth Largest Integer in the Array", "id": 2113, "frontend_id": 1985, + "difficulty_lvl": 2, + "acceptance": 0.4451, "videos": [ { "embedded_url": "https://www.youtube.com/embed/lRCaNiqO3xI", @@ -42883,31 +49429,48 @@ "companies": [ { "name": "Facebook", - "score": 6 + "score": 4 } + ], + "rating": 1414, + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Minimum Number of Work Sessions to Finish the Tasks", "id": 2114, "frontend_id": 1986, - "videos": [] + "rating": 1995, + "difficulty_lvl": 2, + "acceptance": 0.32984, + "videos": [], + "companies": [] }, { "title": "Number of Unique Good Subsequences", "id": 2115, "frontend_id": 1987, - "videos": [] + "rating": 2422, + "difficulty_lvl": 3, + "acceptance": 0.52027, + "videos": [], + "companies": [] }, { "title": "Count Number of Pairs With Absolute Difference K", "id": 2116, "frontend_id": 2006, + "rating": 1272, + "difficulty_lvl": 1, + "acceptance": 0.8284, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } ] }, @@ -42915,15 +49478,18 @@ "title": "Find Original Array From Doubled Array", "id": 2117, "frontend_id": 2007, + "rating": 1557, + "difficulty_lvl": 2, + "acceptance": 0.40526, "videos": [], "companies": [ { "name": "Google", - "score": 10 + "score": 14 }, { "name": "Microsoft", - "score": 1 + "score": 2 } ] }, @@ -42931,33 +49497,51 @@ "title": "Maximum Earnings From Taxi", "id": 2118, "frontend_id": 2008, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.4314, + "videos": [], + "companies": [], + "rating": 1872 }, { "title": "Minimum Number of Operations to Make Array Continuous", "id": 2119, "frontend_id": 2009, - "videos": [] + "rating": 2084, + "difficulty_lvl": 3, + "acceptance": 0.45483, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "First and Last Call On the Same Day", "id": 2120, "frontend_id": 1972, - "videos": [] + "rating": 1380, + "difficulty_lvl": 3, + "acceptance": 0.50415, + "videos": [], + "companies": [] }, { "title": "Find if Path Exists in Graph", "id": 2121, "frontend_id": 1971, + "rating": 1761, + "difficulty_lvl": 1, + "acceptance": 0.51631, "videos": [], "companies": [ { "name": "Amazon", - "score": 10 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 3 } ] }, @@ -42965,101 +49549,154 @@ "title": "Count Special Quadruplets", "id": 2122, "frontend_id": 1995, - "videos": [] + "rating": 1352, + "difficulty_lvl": 1, + "acceptance": 0.60046, + "videos": [], + "companies": [] }, { "title": "The Number of Weak Characters in the Game", "id": 2123, "frontend_id": 1996, + "difficulty_lvl": 2, + "acceptance": 0.43955, "videos": [], "companies": [ { "name": "ByteDance", - "score": 10 + "score": 4 }, { "name": "Google", - "score": 1 + "score": 3 }, { "name": "tiktok", - "score": 1 + "score": 3 } - ] + ], + "rating": 1861 }, { "title": "First Day Where You Have Been in All the Rooms", "id": 2124, "frontend_id": 1997, - "videos": [] + "rating": 2260, + "difficulty_lvl": 2, + "acceptance": 0.3666, + "videos": [], + "companies": [] }, { "title": "GCD Sort of an Array", "id": 2125, "frontend_id": 1998, - "videos": [] + "rating": 2429, + "difficulty_lvl": 3, + "acceptance": 0.45751, + "videos": [], + "companies": [] }, { "title": "Count Nodes Equal to Sum of Descendants", "id": 2126, "frontend_id": 1973, - "videos": [] + "rating": 1335, + "difficulty_lvl": 2, + "acceptance": 0.75146, + "videos": [], + "companies": [] }, { "title": "Employees Whose Manager Left the Company", "id": 2127, "frontend_id": 1978, - "videos": [] + "rating": 2449, + "difficulty_lvl": 1, + "acceptance": 0.47525, + "videos": [], + "companies": [] }, { "title": "Reverse Prefix of Word", "id": 2128, "frontend_id": 2000, + "difficulty_lvl": 1, + "acceptance": 0.79426, "videos": [], "companies": [ { "name": "Optum", - "score": 6 + "score": 1 } - ] + ], + "rating": 1199 }, { "title": "Number of Pairs of Interchangeable Rectangles", "id": 2129, "frontend_id": 2001, + "rating": 1436, + "difficulty_lvl": 2, + "acceptance": 0.47133, "videos": [ { "embedded_url": "https://www.youtube.com/embed/lEQ8ZlLOuyQ", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Maximum Product of the Length of Two Palindromic Subsequences", "id": 2130, "frontend_id": 2002, + "rating": 1869, + "difficulty_lvl": 2, + "acceptance": 0.55812, "videos": [ { "embedded_url": "https://www.youtube.com/embed/aoHbYlO8vDg", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Smallest Missing Genetic Value in Each Subtree", "id": 2131, "frontend_id": 2003, - "videos": [] + "rating": 2415, + "difficulty_lvl": 3, + "acceptance": 0.45199, + "videos": [], + "companies": [] }, { "title": "Convert 1D Array Into 2D Array", "id": 2132, "frontend_id": 2022, + "rating": 1307, + "difficulty_lvl": 1, + "acceptance": 0.59664, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -43067,11 +49704,14 @@ "title": "Number of Pairs of Strings With Concatenation Equal to Target", "id": 2133, "frontend_id": 2023, + "rating": 1341, + "difficulty_lvl": 2, + "acceptance": 0.73734, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 2 } ] }, @@ -43079,11 +49719,14 @@ "title": "Maximize the Confusion of an Exam", "id": 2134, "frontend_id": 2024, + "rating": 1643, + "difficulty_lvl": 2, + "acceptance": 0.67239, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -43091,29 +49734,44 @@ "title": "Maximum Number of Ways to Partition an Array", "id": 2135, "frontend_id": 2025, - "videos": [] + "rating": 2218, + "difficulty_lvl": 3, + "acceptance": 0.33031, + "videos": [], + "companies": [] }, { "title": "Find Cutoff Score for Each School", "id": 2136, "frontend_id": 1988, - "videos": [] + "rating": 2033, + "difficulty_lvl": 2, + "acceptance": 0.676, + "videos": [], + "companies": [] }, { "title": "Final Value of Variable After Performing Operations", "id": 2137, "frontend_id": 2011, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.88565, + "videos": [], + "companies": [], + "rating": 1165 }, { "title": "Sum of Beauty in the Array", "id": 2138, "frontend_id": 2012, + "rating": 1468, + "difficulty_lvl": 2, + "acceptance": 0.47323, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } ] }, @@ -43121,50 +49779,77 @@ "title": "Detect Squares", "id": 2139, "frontend_id": 2013, + "rating": 1841, + "difficulty_lvl": 2, + "acceptance": 0.50384, "videos": [ { "embedded_url": "https://www.youtube.com/embed/bahebearrDc", "channel": "NeetCode" } + ], + "companies": [], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Longest Subsequence Repeated k Times", "id": 2140, "frontend_id": 2014, - "videos": [] + "rating": 2558, + "difficulty_lvl": 3, + "acceptance": 0.55136, + "videos": [], + "companies": [] }, { "title": "Smallest Greater Multiple Made of Two Digits", "id": 2141, "frontend_id": 1999, - "videos": [] + "rating": 2265, + "difficulty_lvl": 2, + "acceptance": 0.5007, + "videos": [], + "companies": [] }, { "title": "Average Height of Buildings in Each Segment", "id": 2142, "frontend_id": 2015, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.58741, + "videos": [], + "companies": [] }, { "title": "Count the Number of Experiments", "id": 2143, "frontend_id": 1990, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.49902, + "videos": [], + "companies": [] }, { "title": "Maximum Difference Between Increasing Elements", "id": 2144, "frontend_id": 2016, + "rating": 1246, + "difficulty_lvl": 1, + "acceptance": 0.54617, "videos": [], "companies": [ { "name": "Cisco", - "score": 10 + "score": 6 }, { "name": "Expedia", - "score": 1 + "score": 3 } ] }, @@ -43172,6 +49857,9 @@ "title": "Grid Game", "id": 2145, "frontend_id": 2017, + "rating": 1719, + "difficulty_lvl": 2, + "acceptance": 0.44272, "videos": [ { "embedded_url": "https://www.youtube.com/embed/N4wDSOw65hI", @@ -43181,19 +49869,28 @@ "companies": [ { "name": "T System", - "score": 6 + "score": 1 } + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" ] }, { "title": "Check if Word Can Be Placed In Crossword", "id": 2146, "frontend_id": 2018, + "rating": 1930, + "difficulty_lvl": 2, + "acceptance": 0.49156, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 4 } ] }, @@ -43201,41 +49898,67 @@ "title": "The Score of Students Solving Math Expression", "id": 2147, "frontend_id": 2019, - "videos": [] + "rating": 2584, + "difficulty_lvl": 3, + "acceptance": 0.33154, + "videos": [], + "companies": [] }, { "title": "Minimum Number of Moves to Seat Everyone", "id": 2148, "frontend_id": 2037, - "videos": [] + "rating": 1357, + "difficulty_lvl": 1, + "acceptance": 0.81573, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/wS7Ag33hf8E", + "channel": "NeetCodeIO" + } + ], + "companies": [] }, { "title": "Remove Colored Pieces if Both Neighbors are the Same Color", "id": 2149, "frontend_id": 2038, + "rating": 1468, + "difficulty_lvl": 2, + "acceptance": 0.57613, "videos": [], "companies": [ { "name": "Walmart Global Tech", - "score": 6 + "score": 9 } + ], + "languages": [ + "java" ] }, { "title": "Kth Smallest Product of Two Sorted Arrays", "id": 2150, "frontend_id": 2040, - "videos": [] + "rating": 2518, + "difficulty_lvl": 3, + "acceptance": 0.2863, + "videos": [], + "companies": [] }, { "title": "The Time When the Network Becomes Idle", "id": 2151, "frontend_id": 2039, + "rating": 1865, + "difficulty_lvl": 2, + "acceptance": 0.51177, "videos": [], "companies": [ { "name": "Deutsche Bank", - "score": 6 + "score": 1 } ] }, @@ -43243,23 +49966,32 @@ "title": "The Number of Seniors and Juniors to Join the Company", "id": 2152, "frontend_id": 2004, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.40359, + "videos": [], + "companies": [] }, { "title": "Subtree Removal Game with Fibonacci Tree", "id": 2153, "frontend_id": 2005, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.6171, + "videos": [], + "companies": [] }, { "title": "Minimum Moves to Convert String", "id": 2154, "frontend_id": 2027, + "rating": 1346, + "difficulty_lvl": 1, + "acceptance": 0.54094, "videos": [], "companies": [ { "name": "Jeavio", - "score": 6 + "score": 1 } ] }, @@ -43267,6 +49999,9 @@ "title": "Find Missing Observations", "id": 2155, "frontend_id": 2028, + "rating": 1445, + "difficulty_lvl": 2, + "acceptance": 0.4516, "videos": [ { "embedded_url": "https://www.youtube.com/embed/86yKkaNi3sU", @@ -43276,7 +50011,7 @@ "companies": [ { "name": "Microsoft", - "score": 6 + "score": "Amazon" } ] }, @@ -43284,41 +50019,58 @@ "title": "Stone Game IX", "id": 2156, "frontend_id": 2029, - "videos": [] + "rating": 2277, + "difficulty_lvl": 2, + "acceptance": 0.27179, + "videos": [], + "companies": [] }, { "title": "Smallest K-Length Subsequence With Occurrences of a Letter", "id": 2157, "frontend_id": 2030, - "videos": [] + "rating": 2562, + "difficulty_lvl": 3, + "acceptance": 0.38712, + "videos": [], + "companies": [] }, { "title": "The Number of Seniors and Juniors to Join the Company II", "id": 2158, "frontend_id": 2010, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.60096, + "videos": [], + "companies": [] }, { "title": "Two Out of Three", "id": 2159, "frontend_id": 2032, + "difficulty_lvl": 1, + "acceptance": 0.73867, "videos": [], "companies": [ { "name": "Booking.com", - "score": 6 + "score": 1 } - ] + ], + "rating": 1270 }, { "title": "Minimum Operations to Make a Uni-Value Grid", "id": 2160, "frontend_id": 2033, + "rating": 1672, + "difficulty_lvl": 2, + "acceptance": 0.52526, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 3 } ] }, @@ -43326,23 +50078,34 @@ "title": "Stock Price Fluctuation ", "id": 2161, "frontend_id": 2034, - "videos": [] + "rating": 1832, + "difficulty_lvl": 2, + "acceptance": 0.48739, + "videos": [], + "companies": [] }, { "title": "Partition Array Into Two Arrays to Minimize Sum Difference", "id": 2162, "frontend_id": 2035, - "videos": [] + "rating": 2490, + "difficulty_lvl": 3, + "acceptance": 0.19002, + "videos": [], + "companies": [] }, { "title": "Kth Distinct String in an Array", "id": 2163, "frontend_id": 2053, + "rating": 1351, + "difficulty_lvl": 1, + "acceptance": 0.72057, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } ] }, @@ -43350,11 +50113,14 @@ "title": "Two Best Non-Overlapping Events", "id": 2164, "frontend_id": 2054, + "rating": 1883, + "difficulty_lvl": 2, + "acceptance": 0.45805, "videos": [], "companies": [ { "name": "razorpay", - "score": 6 + "score": 1 } ] }, @@ -43362,15 +50128,18 @@ "title": "Plates Between Candles", "id": 2165, "frontend_id": 2055, + "rating": 1819, + "difficulty_lvl": 2, + "acceptance": 0.4456, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 3 }, { "name": "tiktok", - "score": 6 + "score": 3 } ] }, @@ -43378,35 +50147,49 @@ "title": "Number of Valid Move Combinations On Chessboard", "id": 2166, "frontend_id": 2056, - "videos": [] + "rating": 2611, + "difficulty_lvl": 3, + "acceptance": 0.54014, + "videos": [], + "companies": [] }, { "title": "Number of Accounts That Did Not Stream", "id": 2167, "frontend_id": 2020, - "videos": [] + "rating": 2219, + "difficulty_lvl": 2, + "acceptance": 0.72136, + "videos": [], + "companies": [] }, { "title": "Check if Numbers Are Ascending in a Sentence", "id": 2168, "frontend_id": 2042, + "difficulty_lvl": 1, + "acceptance": 0.67857, "videos": [], "companies": [ { "name": "Apple", - "score": 6 + "score": 2 } - ] + ], + "rating": 1257 }, { "title": "Simple Bank System", "id": 2169, "frontend_id": 2043, + "rating": 1356, + "difficulty_lvl": 2, + "acceptance": 0.65072, "videos": [], "companies": [ { "name": "PhonePe", - "score": 6 + "score": 1 } ] }, @@ -43414,71 +50197,102 @@ "title": "Count Number of Maximum Bitwise-OR Subsets", "id": 2170, "frontend_id": 2044, - "videos": [] + "rating": 1568, + "difficulty_lvl": 2, + "acceptance": 0.76063, + "videos": [], + "companies": [] }, { "title": "Second Minimum Time to Reach Destination", "id": 2171, "frontend_id": 2045, - "videos": [] + "rating": 2202, + "difficulty_lvl": 3, + "acceptance": 0.3971, + "videos": [], + "companies": [] }, { "title": "Low-Quality Problems", "id": 2172, "frontend_id": 2026, - "videos": [] + "rating": 2392, + "difficulty_lvl": 1, + "acceptance": 0.84295, + "videos": [], + "companies": [] }, { "title": "Number of Valid Words in a Sentence", "id": 2173, "frontend_id": 2047, + "difficulty_lvl": 1, + "acceptance": 0.28863, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } - ] + ], + "rating": 1472 }, { "title": "Next Greater Numerically Balanced Number", "id": 2174, "frontend_id": 2048, + "difficulty_lvl": 2, + "acceptance": 0.47097, "videos": [], "companies": [ { "name": "Sprinklr", - "score": 6 + "score": 1 } - ] + ], + "rating": 1734 }, { "title": "Count Nodes With the Highest Score", "id": 2175, "frontend_id": 2049, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.47581, + "videos": [], + "companies": [], + "rating": 1912 }, { "title": "Parallel Courses III", "id": 2176, "frontend_id": 2050, + "rating": 2084, + "difficulty_lvl": 3, + "acceptance": 0.59274, "videos": [], "companies": [ { "name": "Pinterest", - "score": 6 + "score": 4 } + ], + "languages": [ + "java" ] }, { "title": "Check Whether Two Strings are Almost Equivalent", "id": 2177, "frontend_id": 2068, + "rating": 1273, + "difficulty_lvl": 1, + "acceptance": 0.63506, "videos": [], "companies": [ { "name": "Salesforce", - "score": 6 + "score": 1 } ] }, @@ -43486,17 +50300,24 @@ "title": "Walking Robot Simulation II", "id": 2178, "frontend_id": 2069, - "videos": [] + "rating": 1919, + "difficulty_lvl": 2, + "acceptance": 0.24153, + "videos": [], + "companies": [] }, { "title": "Most Beautiful Item for Each Query", "id": 2179, "frontend_id": 2070, + "rating": 1724, + "difficulty_lvl": 2, + "acceptance": 0.49733, "videos": [], "companies": [ { "name": "Postmates", - "score": 6 + "score": "razorpay" } ] }, @@ -43504,17 +50325,24 @@ "title": "Maximum Number of Tasks You Can Assign", "id": 2180, "frontend_id": 2071, - "videos": [] + "rating": 2648, + "difficulty_lvl": 3, + "acceptance": 0.33718, + "videos": [], + "companies": [] }, { "title": "Smallest Index With Equal Value", "id": 2181, "frontend_id": 2057, + "rating": 1168, + "difficulty_lvl": 1, + "acceptance": 0.71941, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -43522,11 +50350,19 @@ "title": "Find the Minimum and Maximum Number of Nodes Between Critical Points", "id": 2182, "frontend_id": 2058, - "videos": [], + "rating": 1311, + "difficulty_lvl": 2, + "acceptance": 0.57262, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/UddDgt52h9g", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Info Edge", - "score": 6 + "score": 1 } ] }, @@ -43534,29 +50370,44 @@ "title": "Minimum Operations to Convert Number", "id": 2183, "frontend_id": 2059, - "videos": [] + "rating": 1850, + "difficulty_lvl": 2, + "acceptance": 0.47964, + "videos": [], + "companies": [] }, { "title": "Check if an Original String Exists Given Two Encoded Strings", "id": 2184, "frontend_id": 2060, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.40566, + "videos": [], + "companies": [], + "rating": 2804 }, { "title": "Accepted Candidates From the Interviews", "id": 2185, "frontend_id": 2041, - "videos": [] + "rating": 1167, + "difficulty_lvl": 2, + "acceptance": 0.78816, + "videos": [], + "companies": [] }, { "title": "Count Vowel Substrings of a String", "id": 2186, "frontend_id": 2062, + "rating": 1458, + "difficulty_lvl": 1, + "acceptance": 0.66496, "videos": [], "companies": [ { "name": "Commvault", - "score": 6 + "score": 1 } ] }, @@ -43564,29 +50415,44 @@ "title": "Vowels of All Substrings", "id": 2187, "frontend_id": 2063, - "videos": [] + "rating": 1663, + "difficulty_lvl": 2, + "acceptance": 0.54592, + "videos": [], + "companies": [] }, { "title": "Minimized Maximum of Products Distributed to Any Store", "id": 2188, "frontend_id": 2064, - "videos": [] + "rating": 1886, + "difficulty_lvl": 2, + "acceptance": 0.51136, + "videos": [], + "companies": [] }, { "title": "Maximum Path Quality of a Graph", "id": 2189, "frontend_id": 2065, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.57281, + "videos": [], + "companies": [], + "rating": 2178 }, { "title": "Count Common Words With One Occurrence", "id": 2190, "frontend_id": 2085, + "rating": 1307, + "difficulty_lvl": 1, + "acceptance": 0.69691, "videos": [], "companies": [ { "name": "Jane Street", - "score": 6 + "score": 1 } ] }, @@ -43594,35 +50460,59 @@ "title": "Minimum Number of Food Buckets to Feed the Hamsters", "id": 2191, "frontend_id": 2086, - "videos": [] + "rating": 1496, + "difficulty_lvl": 2, + "acceptance": 0.45149, + "videos": [], + "companies": [] }, { "title": "Minimum Cost Homecoming of a Robot in a Grid", "id": 2192, "frontend_id": 2087, - "videos": [] + "rating": 1744, + "difficulty_lvl": 2, + "acceptance": 0.50997, + "videos": [], + "companies": [] }, { "title": "Count Fertile Pyramids in a Land", "id": 2193, "frontend_id": 2088, - "videos": [] + "rating": 2105, + "difficulty_lvl": 3, + "acceptance": 0.63278, + "videos": [], + "companies": [] }, { "title": "The Category of Each Member in the Store", "id": 2194, "frontend_id": 2051, - "videos": [] + "rating": 1253, + "difficulty_lvl": 2, + "acceptance": 0.69969, + "videos": [], + "companies": [] }, { "title": "Time Needed to Buy Tickets", "id": 2195, "frontend_id": 2073, - "videos": [], + "rating": 1325, + "difficulty_lvl": 1, + "acceptance": 0.62501, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/cVmS9N6kf2Y", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Twitter", - "score": 6 + "score": 2 } ] }, @@ -43630,11 +50520,14 @@ "title": "Reverse Nodes in Even Length Groups", "id": 2196, "frontend_id": 2074, + "rating": 1685, + "difficulty_lvl": 2, + "acceptance": 0.55038, "videos": [], "companies": [ { "name": "Zopsmart", - "score": 6 + "score": 1 } ] }, @@ -43642,11 +50535,14 @@ "title": "Decode the Slanted Ciphertext", "id": 2197, "frontend_id": 2075, + "rating": 1759, + "difficulty_lvl": 2, + "acceptance": 0.49716, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } ] }, @@ -43654,105 +50550,153 @@ "title": "Process Restricted Friend Requests", "id": 2198, "frontend_id": 2076, + "difficulty_lvl": 3, + "acceptance": 0.53765, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 5 } - ] + ], + "rating": 2131 }, { "title": "Two Furthest Houses With Different Colors", "id": 2199, "frontend_id": 2078, + "difficulty_lvl": 1, + "acceptance": 0.66615, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } - ] + ], + "rating": 1241 }, { "title": "Stamping the Grid", "id": 2200, "frontend_id": 2132, - "videos": [] + "rating": 2364, + "difficulty_lvl": 3, + "acceptance": 0.31793, + "videos": [], + "companies": [] }, { "title": "Valid Arrangement of Pairs", "id": 2201, "frontend_id": 2097, - "videos": [] + "rating": 2651, + "difficulty_lvl": 3, + "acceptance": 0.41429, + "videos": [], + "companies": [] }, { "title": "Sum of k-Mirror Numbers", "id": 2202, "frontend_id": 2081, - "videos": [] + "rating": 2210, + "difficulty_lvl": 3, + "acceptance": 0.41786, + "videos": [], + "companies": [] }, { "title": "Number of Spaces Cleaning Robot Cleaned", "id": 2203, "frontend_id": 2061, - "videos": [] + "rating": 2364, + "difficulty_lvl": 2, + "acceptance": 0.54539, + "videos": [], + "companies": [] }, { "title": "Find Subsequence of Length K With the Largest Sum", "id": 2204, "frontend_id": 2099, + "difficulty_lvl": 1, + "acceptance": 0.42681, "videos": [], "companies": [ { "name": "Accenture", - "score": 6 + "score": 1 } - ] + ], + "rating": 1447 }, { "title": "Find Good Days to Rob the Bank", "id": 2205, "frontend_id": 2100, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.49253, + "videos": [], + "companies": [], + "rating": 1702 }, { "title": "Detonate the Maximum Bombs", "id": 2206, "frontend_id": 2101, - "videos": [] + "rating": 1880, + "difficulty_lvl": 2, + "acceptance": 0.49416, + "videos": [], + "companies": [] }, { "title": "Sequentially Ordinal Rank Tracker", "id": 2207, "frontend_id": 2102, - "videos": [] + "rating": 2159, + "difficulty_lvl": 3, + "acceptance": 0.6508, + "videos": [], + "companies": [] }, { "title": "Account Balance", "id": 2208, "frontend_id": 2066, - "videos": [] + "rating": 1550, + "difficulty_lvl": 2, + "acceptance": 0.83724, + "videos": [], + "companies": [] }, { "title": "Number of Equal Count Substrings", "id": 2209, "frontend_id": 2067, - "videos": [] + "rating": 2106, + "difficulty_lvl": 2, + "acceptance": 0.47926, + "videos": [], + "companies": [] }, { "title": "Find Target Indices After Sorting Array", "id": 2210, "frontend_id": 2089, + "rating": 1152, + "difficulty_lvl": 1, + "acceptance": 0.75889, "videos": [], "companies": [ { "name": "Google", - "score": 10 + "score": 4 }, { "name": "Facebook", - "score": 1 + "score": 2 } ] }, @@ -43760,11 +50704,14 @@ "title": "K Radius Subarray Averages", "id": 2211, "frontend_id": 2090, + "rating": 1358, + "difficulty_lvl": 2, + "acceptance": 0.48027, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 3 } ] }, @@ -43772,71 +50719,115 @@ "title": "Removing Minimum and Maximum From Array", "id": 2212, "frontend_id": 2091, - "videos": [] + "rating": 1384, + "difficulty_lvl": 2, + "acceptance": 0.54713, + "videos": [], + "companies": [] }, { "title": "Find All People With Secret", "id": 2213, "frontend_id": 2092, - "videos": [] + "rating": 2004, + "difficulty_lvl": 3, + "acceptance": 0.34155, + "videos": [], + "companies": [] }, { "title": "The Winner University", "id": 2214, "frontend_id": 2072, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.72759, + "videos": [], + "companies": [] }, { "title": "Finding 3-Digit Even Numbers", "id": 2215, "frontend_id": 2094, - "videos": [] + "rating": 1455, + "difficulty_lvl": 1, + "acceptance": 0.58074, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Delete the Middle Node of a Linked List", "id": 2216, "frontend_id": 2095, - "videos": [] + "rating": 1324, + "difficulty_lvl": 2, + "acceptance": 0.58953, + "videos": [], + "companies": [] }, { "title": "Step-By-Step Directions From a Binary Tree Node to Another", "id": 2217, "frontend_id": 2096, - "videos": [] + "rating": 1805, + "difficulty_lvl": 2, + "acceptance": 0.4856, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/JegJNGcwtFg", + "channel": "NeetCodeIO" + } + ], + "companies": [], + "languages": [] }, { "title": "Paths in Maze That Lead to Same Room", "id": 2218, "frontend_id": 2077, - "videos": [] + "rating": 2158, + "difficulty_lvl": 2, + "acceptance": 0.55068, + "videos": [], + "companies": [] }, { "title": "Maximum Number of Words Found in Sentences", "id": 2219, "frontend_id": 2114, + "difficulty_lvl": 1, + "acceptance": 0.86594, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } - ] + ], + "rating": 1257 }, { "title": "Find All Possible Recipes from Given Supplies", "id": 2220, "frontend_id": 2115, - "videos": [] + "rating": 1679, + "difficulty_lvl": 2, + "acceptance": 0.4874, + "videos": [], + "companies": [] }, { "title": "Check if a Parentheses String Can Be Valid", "id": 2221, "frontend_id": 2116, + "rating": 2038, + "difficulty_lvl": 2, + "acceptance": 0.30895, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 2 } ] }, @@ -43844,30 +50835,49 @@ "title": "Abbreviating the Product of a Range", "id": 2222, "frontend_id": 2117, - "videos": [] + "rating": 2477, + "difficulty_lvl": 3, + "acceptance": 0.26693, + "videos": [], + "companies": [] }, { "title": "The Number of Rich Customers", "id": 2223, "frontend_id": 2082, - "videos": [] + "rating": 2220, + "difficulty_lvl": 1, + "acceptance": 0.79553, + "videos": [], + "companies": [] }, { "title": "Drop Type 1 Orders for Customers With Type 0 Orders", "id": 2224, "frontend_id": 2084, - "videos": [] + "rating": 1296, + "difficulty_lvl": 2, + "acceptance": 0.87729, + "videos": [], + "companies": [] }, { "title": "Substrings That Begin and End With the Same Letter", "id": 2225, "frontend_id": 2083, - "videos": [] + "rating": 1316, + "difficulty_lvl": 2, + "acceptance": 0.67947, + "videos": [], + "companies": [] }, { "title": "Rings and Rods", "id": 2226, "frontend_id": 2103, + "rating": 1258, + "difficulty_lvl": 1, + "acceptance": 0.80893, "videos": [], "companies": [ { @@ -43880,41 +50890,63 @@ "title": "Sum of Subarray Ranges", "id": 2227, "frontend_id": 2104, - "videos": [] + "rating": 1504, + "difficulty_lvl": 2, + "acceptance": 0.608, + "videos": [], + "companies": [] }, { "title": "Watering Plants II", "id": 2228, "frontend_id": 2105, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.48733, + "videos": [], + "companies": [], + "rating": 1507 }, { "title": "Maximum Fruits Harvested After at Most K Steps", "id": 2229, "frontend_id": 2106, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.35183, + "videos": [], + "companies": [], + "rating": 2062 }, { "title": "Minimum Cost to Reach City With Discounts", "id": 2230, "frontend_id": 2093, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.55258, + "videos": [], + "companies": [] }, { "title": "Find First Palindromic String in the Array", "id": 2231, "frontend_id": 2108, - "videos": [] + "rating": 1216, + "difficulty_lvl": 1, + "acceptance": 0.7872, + "videos": [], + "companies": [] }, { "title": "Adding Spaces to a String", "id": 2232, "frontend_id": 2109, + "rating": 1315, + "difficulty_lvl": 2, + "acceptance": 0.567, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } ] }, @@ -43922,11 +50954,14 @@ "title": "Number of Smooth Descent Periods of a Stock", "id": 2233, "frontend_id": 2110, + "rating": 1408, + "difficulty_lvl": 2, + "acceptance": 0.58222, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 4 } ] }, @@ -43934,18 +50969,29 @@ "title": "Minimum Operations to Make the Array K-Increasing", "id": 2234, "frontend_id": 2111, - "videos": [] + "rating": 1941, + "difficulty_lvl": 3, + "acceptance": 0.37966, + "videos": [], + "companies": [] }, { "title": "Capitalize the Title", "id": 2235, "frontend_id": 2129, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.62554, + "videos": [], + "companies": [], + "languages": [], + "rating": 1275 }, { "title": "Maximum Twin Sum of a Linked List", "id": 2236, "frontend_id": 2130, + "difficulty_lvl": 2, + "acceptance": 0.821, "videos": [ { "embedded_url": "https://www.youtube.com/embed/doj95MelfSA", @@ -43955,73 +51001,122 @@ "companies": [ { "name": "Amazon", - "score": 6 + "score": 23 } - ] + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" + ], + "rating": 1318 }, { "title": "Longest Palindrome by Concatenating Two Letter Words", "id": 2237, "frontend_id": 2131, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.48154, + "videos": [], + "companies": [], + "rating": 1557 }, { "title": "A Number After a Double Reversal", "id": 2238, "frontend_id": 2119, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.77931, + "videos": [], + "companies": [], + "rating": 1187 }, { "title": "Execution of All Suffix Instructions Staying in a Grid", "id": 2239, "frontend_id": 2120, - "videos": [] + "rating": 1380, + "difficulty_lvl": 2, + "acceptance": 0.82502, + "videos": [], + "companies": [] }, { "title": "Intervals Between Identical Elements", "id": 2240, "frontend_id": 2121, - "videos": [] + "rating": 1761, + "difficulty_lvl": 2, + "acceptance": 0.439, + "videos": [], + "companies": [] }, { "title": "Recover the Original Array", "id": 2241, "frontend_id": 2122, - "videos": [] + "rating": 2159, + "difficulty_lvl": 3, + "acceptance": 0.38457, + "videos": [], + "companies": [] }, { "title": "Subsequence of Size K With the Largest Even Sum", "id": 2242, "frontend_id": 2098, - "videos": [] + "rating": 2304, + "difficulty_lvl": 2, + "acceptance": 0.37749, + "videos": [], + "companies": [] }, { "title": "Check if All A's Appears Before All B's", "id": 2243, "frontend_id": 2124, - "videos": [] + "rating": 1202, + "difficulty_lvl": 1, + "acceptance": 0.71127, + "videos": [], + "companies": [ + { + "name": "Microsoft", + "score": 1 + } + ] }, { "title": "Number of Laser Beams in a Bank", "id": 2244, "frontend_id": 2125, + "rating": 1280, + "difficulty_lvl": 2, + "acceptance": 0.81593, "videos": [], "companies": [ { "name": "Amazon", "score": 6 } + ], + "languages": [ + "java" ] }, { "title": "Destroying Asteroids", "id": 2245, "frontend_id": 2126, + "rating": 1335, + "difficulty_lvl": 2, + "acceptance": 0.50578, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -44029,105 +51124,169 @@ "title": "Maximum Employees to Be Invited to a Meeting", "id": 2246, "frontend_id": 2127, - "videos": [] + "rating": 2449, + "difficulty_lvl": 3, + "acceptance": 0.35411, + "videos": [], + "companies": [] }, { "title": "Number of Unique Flavors After Sharing K Candies", "id": 2247, "frontend_id": 2107, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.55994, + "videos": [], + "companies": [] }, { "title": "Minimum Cost of Buying Candies With Discount", "id": 2248, "frontend_id": 2144, - "videos": [] + "rating": 1261, + "difficulty_lvl": 1, + "acceptance": 0.6055, + "videos": [], + "companies": [] }, { "title": "Count the Hidden Sequences", "id": 2249, "frontend_id": 2145, - "videos": [] + "rating": 1614, + "difficulty_lvl": 2, + "acceptance": 0.37308, + "videos": [], + "companies": [], + "languages": [] }, { "title": "K Highest Ranked Items Within a Price Range", "id": 2250, "frontend_id": 2146, - "videos": [] + "rating": 1837, + "difficulty_lvl": 2, + "acceptance": 0.41778, + "videos": [], + "companies": [] }, { "title": "Number of Ways to Divide a Long Corridor", "id": 2251, "frontend_id": 2147, - "videos": [] + "rating": 1915, + "difficulty_lvl": 3, + "acceptance": 0.39567, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "The Airport With the Most Traffic", "id": 2252, "frontend_id": 2112, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.69573, + "videos": [], + "companies": [] }, { "title": "Build the Equation", "id": 2253, "frontend_id": 2118, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.55436, + "videos": [], + "companies": [] }, { "title": "Check if Every Row and Column Contains All Numbers", "id": 2254, "frontend_id": 2133, + "difficulty_lvl": 1, + "acceptance": 0.51697, "videos": [], "companies": [ { "name": "Karat", - "score": 10 + "score": 4 }, { "name": "instacart", - "score": 1 + "score": 2 } - ] + ], + "rating": 1264 }, { "title": "Minimum Swaps to Group All 1's Together II", "id": 2255, "frontend_id": 2134, - "videos": [] + "rating": 1748, + "difficulty_lvl": 2, + "acceptance": 0.5145, + "videos": [], + "companies": [ + { + "name": "Amazon", + "score": 2 + } + ] }, { "title": "Count Words Obtained After Adding a Letter", "id": 2256, "frontend_id": 2135, - "videos": [] + "rating": 1828, + "difficulty_lvl": 2, + "acceptance": 0.4268, + "videos": [], + "companies": [] }, { "title": "Earliest Possible Day of Full Bloom", "id": 2257, "frontend_id": 2136, - "videos": [] + "rating": 2033, + "difficulty_lvl": 3, + "acceptance": 0.7246, + "videos": [], + "companies": [] }, { "title": "Elements in Array After Removing and Replacing Elements", "id": 2258, "frontend_id": 2113, - "videos": [] + "rating": 2347, + "difficulty_lvl": 2, + "acceptance": 0.73402, + "videos": [], + "companies": [] }, { "title": "Minimum Operations to Remove Adjacent Ones in Matrix", "id": 2259, "frontend_id": 2123, - "videos": [] + "rating": 1332, + "difficulty_lvl": 3, + "acceptance": 0.41939, + "videos": [], + "companies": [] }, { "title": "Divide a String Into Groups of Size k", "id": 2260, "frontend_id": 2138, + "rating": 1273, + "difficulty_lvl": 1, + "acceptance": 0.65534, "videos": [], "companies": [ { "name": "Canonical", - "score": 6 + "score": 1 } ] }, @@ -44135,11 +51294,14 @@ "title": "All Divisions With the Highest Score of a Binary Array", "id": 2261, "frontend_id": 2155, + "rating": 1391, + "difficulty_lvl": 2, + "acceptance": 0.63731, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -44147,35 +51309,55 @@ "title": "Solving Questions With Brainpower", "id": 2262, "frontend_id": 2140, - "videos": [] + "rating": 1709, + "difficulty_lvl": 2, + "acceptance": 0.55136, + "videos": [], + "companies": [], + "languages": [ + "cpp" + ] }, { "title": "Maximum Running Time of N Computers", "id": 2263, "frontend_id": 2141, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.50884, + "videos": [], + "companies": [], + "rating": 2265 }, { "title": "Minimum Sum of Four Digit Number After Splitting Digits", "id": 2264, "frontend_id": 2160, + "rating": 1314, + "difficulty_lvl": 1, + "acceptance": 0.86321, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } + ], + "languages": [ + "javascript" ] }, { "title": "Partition Array According to Given Pivot", "id": 2265, "frontend_id": 2161, + "rating": 1338, + "difficulty_lvl": 2, + "acceptance": 0.84875, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } ] }, @@ -44183,35 +51365,53 @@ "title": "Minimum Cost to Set Cooking Time", "id": 2266, "frontend_id": 2162, - "videos": [] + "rating": 1852, + "difficulty_lvl": 2, + "acceptance": 0.40429, + "videos": [], + "companies": [] }, { "title": "Minimum Difference in Sums After Removal of Elements", "id": 2267, "frontend_id": 2163, - "videos": [] + "rating": 2225, + "difficulty_lvl": 3, + "acceptance": 0.4743, + "videos": [], + "companies": [] }, { "title": "Remove All Ones With Row and Column Flips", "id": 2268, "frontend_id": 2128, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.76318, + "videos": [], + "companies": [] }, { "title": "Count Elements With Strictly Smaller and Greater Elements ", "id": 2269, "frontend_id": 2148, - "videos": [] + "rating": 1202, + "difficulty_lvl": 1, + "acceptance": 0.59374, + "videos": [], + "companies": [] }, { "title": "Find All Lonely Numbers in the Array", "id": 2270, "frontend_id": 2150, + "rating": 1276, + "difficulty_lvl": 2, + "acceptance": 0.60217, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -44219,11 +51419,14 @@ "title": "Rearrange Array Elements by Sign", "id": 2271, "frontend_id": 2149, + "rating": 1236, + "difficulty_lvl": 2, + "acceptance": 0.81529, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } ] }, @@ -44231,23 +51434,34 @@ "title": "Maximum Good People Based on Statements", "id": 2272, "frontend_id": 2151, - "videos": [] + "rating": 1980, + "difficulty_lvl": 3, + "acceptance": 0.49445, + "videos": [], + "companies": [] }, { "title": "Pour Water Between Buckets to Make Water Levels Equal", "id": 2273, "frontend_id": 2137, - "videos": [] + "rating": 1295, + "difficulty_lvl": 2, + "acceptance": 0.67307, + "videos": [], + "companies": [] }, { "title": "Keep Multiplying Found Values by Two", "id": 2274, "frontend_id": 2154, + "rating": 1236, + "difficulty_lvl": 1, + "acceptance": 0.71888, "videos": [], "companies": [ { "name": "Goldman Sachs", - "score": 6 + "score": 1 } ] }, @@ -44255,35 +51469,49 @@ "title": "Find Substring With Given Hash Value", "id": 2275, "frontend_id": 2156, - "videos": [] + "rating": 2063, + "difficulty_lvl": 3, + "acceptance": 0.22474, + "videos": [], + "companies": [] }, { "title": "Groups of Strings", "id": 2276, "frontend_id": 2157, - "videos": [] + "rating": 2499, + "difficulty_lvl": 3, + "acceptance": 0.25539, + "videos": [], + "companies": [] }, { "title": "Count Equal and Divisible Pairs in an Array", "id": 2277, "frontend_id": 2176, + "difficulty_lvl": 1, + "acceptance": 0.79373, "videos": [], "companies": [ { "name": "zeta suite", - "score": 6 + "score": 1 } - ] + ], + "rating": 1216 }, { "title": "Find Three Consecutive Integers That Sum to a Given Number", "id": 2278, "frontend_id": 2177, + "rating": 1257, + "difficulty_lvl": 2, + "acceptance": 0.64012, "videos": [], "companies": [ { "name": "FPT", - "score": 6 + "score": 1 } ] }, @@ -44291,35 +51519,53 @@ "title": "Maximum Split of Positive Even Integers", "id": 2279, "frontend_id": 2178, - "videos": [] + "rating": 1538, + "difficulty_lvl": 2, + "acceptance": 0.5936, + "videos": [], + "companies": [] }, { "title": "Count Good Triplets in an Array", "id": 2280, "frontend_id": 2179, - "videos": [] + "rating": 2272, + "difficulty_lvl": 3, + "acceptance": 0.39593, + "videos": [], + "companies": [] }, { "title": "The Number of Passengers in Each Bus I", "id": 2281, "frontend_id": 2142, - "videos": [] + "rating": 2621, + "difficulty_lvl": 2, + "acceptance": 0.48336, + "videos": [], + "companies": [] }, { "title": "Choose Numbers From Two Arrays in Range", "id": 2282, "frontend_id": 2143, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.52224, + "videos": [], + "companies": [] }, { "title": "Sort Even and Odd Indices Independently", "id": 2283, "frontend_id": 2164, + "rating": 1253, + "difficulty_lvl": 1, + "acceptance": 0.63983, "videos": [], "companies": [ { "name": "Zoho", - "score": 6 + "score": 1 } ] }, @@ -44327,11 +51573,14 @@ "title": "Smallest Value of the Rearranged Number", "id": 2284, "frontend_id": 2165, + "rating": 1362, + "difficulty_lvl": 2, + "acceptance": 0.51506, "videos": [], "companies": [ { "name": "Cognizant", - "score": 6 + "score": "T-mobile" } ] }, @@ -44339,11 +51588,14 @@ "title": "Design Bitset", "id": 2285, "frontend_id": 2166, + "rating": 1752, + "difficulty_lvl": 2, + "acceptance": 0.3188, "videos": [], "companies": [ { "name": "Bloomberg", - "score": 6 + "score": 2 } ] }, @@ -44351,23 +51603,34 @@ "title": "Minimum Time to Remove All Cars Containing Illegal Goods", "id": 2286, "frontend_id": 2167, - "videos": [] + "rating": 2219, + "difficulty_lvl": 3, + "acceptance": 0.40969, + "videos": [], + "companies": [] }, { "title": "Minimum Number of Lines to Cover Points", "id": 2287, "frontend_id": 2152, - "videos": [] + "rating": 1300, + "difficulty_lvl": 2, + "acceptance": 0.46985, + "videos": [], + "companies": [] }, { "title": "Count Operations to Obtain Zero", "id": 2288, "frontend_id": 2169, + "rating": 1200, + "difficulty_lvl": 1, + "acceptance": 0.74594, "videos": [], "companies": [ { "name": "payu", - "score": 6 + "score": 1 } ] }, @@ -44375,41 +51638,59 @@ "title": "Minimum Operations to Make the Array Alternating", "id": 2289, "frontend_id": 2170, - "videos": [] + "rating": 1663, + "difficulty_lvl": 2, + "acceptance": 0.33062, + "videos": [], + "companies": [] }, { "title": "Removing Minimum Number of Magic Beans", "id": 2290, "frontend_id": 2171, - "videos": [] + "rating": 1748, + "difficulty_lvl": 2, + "acceptance": 0.42162, + "videos": [], + "companies": [] }, { "title": "Maximum AND Sum of Array", "id": 2291, "frontend_id": 2172, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.48567, + "videos": [], + "companies": [], + "rating": 2392 }, { "title": "Counting Words With a Given Prefix", "id": 2292, "frontend_id": 2185, + "difficulty_lvl": 1, + "acceptance": 0.77263, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } - ] + ], + "rating": 1167 }, { "title": "Minimum Number of Steps to Make Two Strings Anagram II", "id": 2293, "frontend_id": 2186, + "rating": 1253, + "difficulty_lvl": 2, + "acceptance": 0.71949, "videos": [], "companies": [ { "name": "Wealthfront", - "score": 6 + "score": 1 } ] }, @@ -44417,47 +51698,73 @@ "title": "Minimum Time to Complete Trips", "id": 2294, "frontend_id": 2187, - "videos": [] + "rating": 1641, + "difficulty_lvl": 2, + "acceptance": 0.39052, + "videos": [], + "companies": [] }, { "title": "Minimum Time to Finish the Race", "id": 2295, "frontend_id": 2188, - "videos": [] + "rating": 2315, + "difficulty_lvl": 3, + "acceptance": 0.41467, + "videos": [], + "companies": [] }, { "title": "The Number of Passengers in Each Bus II", "id": 2296, "frontend_id": 2153, - "videos": [] + "rating": 1912, + "difficulty_lvl": 3, + "acceptance": 0.42107, + "videos": [], + "companies": [] }, { "title": "Amount of New Area Painted Each Day", "id": 2297, "frontend_id": 2158, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.54548, + "videos": [], + "companies": [] }, { "title": "Count Integers With Even Digit Sum", "id": 2298, "frontend_id": 2180, + "difficulty_lvl": 1, + "acceptance": 0.65919, "videos": [], "companies": [ { "name": "MindTree", - "score": 6 + "score": 1 } - ] + ], + "rating": 1257 }, { "title": "Merge Nodes in Between Zeros", "id": 2299, "frontend_id": 2181, - "videos": [], + "rating": 1333, + "difficulty_lvl": 2, + "acceptance": 0.85986, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/jrSav7fulJY", + "channel": "NeetCodeIO" + } + ], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 1 } ] }, @@ -44465,101 +51772,158 @@ "title": "Construct String With Repeat Limit", "id": 2300, "frontend_id": 2182, + "rating": 1680, + "difficulty_lvl": 2, + "acceptance": 0.52667, "videos": [], "companies": [ { "name": "Arista Networks", - "score": 6 + "score": 1 } - ] + ], + "languages": [] }, { "title": "Count Array Pairs Divisible by K", "id": 2301, "frontend_id": 2183, - "videos": [] + "rating": 2246, + "difficulty_lvl": 3, + "acceptance": 0.28388, + "videos": [], + "companies": [] }, { "title": "Order Two Columns Independently", "id": 2302, "frontend_id": 2159, - "videos": [] + "rating": 1808, + "difficulty_lvl": 2, + "acceptance": 0.59622, + "videos": [], + "companies": [] }, { "title": "Unique Substrings With Equal Digit Frequency", "id": 2303, "frontend_id": 2168, - "videos": [] + "rating": 1284, + "difficulty_lvl": 2, + "acceptance": 0.60053, + "videos": [], + "companies": [] }, { "title": "Cells in a Range on an Excel Sheet", "id": 2304, "frontend_id": 2194, - "videos": [] + "rating": 1253, + "difficulty_lvl": 1, + "acceptance": 0.8402, + "videos": [], + "companies": [] }, { "title": "Append K Integers With Minimal Sum", "id": 2305, "frontend_id": 2195, - "videos": [] + "rating": 1659, + "difficulty_lvl": 2, + "acceptance": 0.24973, + "videos": [], + "companies": [] }, { "title": "Create Binary Tree From Descriptions", "id": 2306, "frontend_id": 2196, - "videos": [] + "rating": 1644, + "difficulty_lvl": 2, + "acceptance": 0.72386, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/yWkrFfqO7NA", + "channel": "NeetCodeIO" + } + ], + "companies": [], + "languages": [] }, { "title": "Replace Non-Coprime Numbers in Array", "id": 2307, "frontend_id": 2197, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.3858, + "videos": [], + "companies": [], + "rating": 2057 }, { "title": "Divide Array Into Equal Pairs", "id": 2308, "frontend_id": 2206, + "difficulty_lvl": 1, + "acceptance": 0.73308, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 1 } - ] + ], + "rating": 1223 }, { "title": "Maximize Number of Subsequences in a String", "id": 2309, "frontend_id": 2207, - "videos": [] + "rating": 1550, + "difficulty_lvl": 2, + "acceptance": 0.3375, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Minimum Operations to Halve Array Sum", "id": 2310, "frontend_id": 2208, + "rating": 1550, + "difficulty_lvl": 2, + "acceptance": 0.4579, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 1 } - ] + ], + "languages": [] }, { "title": "Minimum White Tiles After Covering With Carpets", "id": 2311, "frontend_id": 2209, - "videos": [] + "rating": 2106, + "difficulty_lvl": 3, + "acceptance": 0.34774, + "videos": [], + "companies": [] }, { "title": "Most Frequent Number Following Key In an Array", "id": 2312, "frontend_id": 2190, + "rating": 1289, + "difficulty_lvl": 1, + "acceptance": 0.59213, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -44567,29 +51931,43 @@ "title": "Longest Winning Streak", "id": 2313, "frontend_id": 2173, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.52684, + "videos": [], + "companies": [] }, { "title": "Remove All Ones With Row and Column Flips II", "id": 2314, "frontend_id": 2174, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.68109, + "videos": [], + "companies": [] }, { "title": "The Change in Global Rankings", "id": 2315, "frontend_id": 2175, - "videos": [] + "rating": 1251, + "difficulty_lvl": 2, + "acceptance": 0.62359, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Count Hills and Valleys in an Array", "id": 2316, "frontend_id": 2210, + "rating": 1355, + "difficulty_lvl": 1, + "acceptance": 0.58569, "videos": [], "companies": [ { "name": "Facebook", - "score": 6 + "score": 1 } ] }, @@ -44597,29 +51975,44 @@ "title": "Count Collisions on a Road", "id": 2317, "frontend_id": 2211, - "videos": [] + "rating": 1581, + "difficulty_lvl": 2, + "acceptance": 0.42932, + "videos": [], + "companies": [] }, { "title": "Maximum Points in an Archery Competition", "id": 2318, "frontend_id": 2212, - "videos": [] + "rating": 1869, + "difficulty_lvl": 2, + "acceptance": 0.49535, + "videos": [], + "companies": [] }, { "title": "Longest Substring of One Repeating Character", "id": 2319, "frontend_id": 2213, - "videos": [] + "rating": 2629, + "difficulty_lvl": 3, + "acceptance": 0.31635, + "videos": [], + "companies": [] }, { "title": "Find All K-Distant Indices in an Array", "id": 2320, "frontend_id": 2200, + "rating": 1266, + "difficulty_lvl": 1, + "acceptance": 0.6486, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -44627,77 +52020,119 @@ "title": "Minimum Weighted Subgraph With the Required Paths", "id": 2321, "frontend_id": 2203, - "videos": [] + "rating": 2364, + "difficulty_lvl": 3, + "acceptance": 0.36222, + "videos": [], + "companies": [] }, { "title": "Number of Ways to Build Sturdy Brick Wall", "id": 2322, "frontend_id": 2184, - "videos": [] + "rating": 2392, + "difficulty_lvl": 2, + "acceptance": 0.50294, + "videos": [], + "companies": [] }, { "title": "Minimum Bit Flips to Convert Number", "id": 2323, "frontend_id": 2220, + "difficulty_lvl": 1, + "acceptance": 0.82459, "videos": [], "companies": [ { "name": "persistent systems", - "score": 6 + "score": 1 } - ] + ], + "rating": 1282 }, { "title": "Find Triangular Sum of an Array", "id": 2324, "frontend_id": 2221, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.78195, + "videos": [], + "companies": [], + "rating": 1317 }, { "title": "Number of Ways to Select Buildings", "id": 2325, "frontend_id": 2222, - "videos": [] + "rating": 1657, + "difficulty_lvl": 2, + "acceptance": 0.50675, + "videos": [], + "companies": [] }, { "title": "Sum of Scores of Built Strings", "id": 2326, "frontend_id": 2223, - "videos": [] + "rating": 2220, + "difficulty_lvl": 3, + "acceptance": 0.37502, + "videos": [], + "companies": [] }, { "title": "Largest Number After Digit Swaps by Parity", "id": 2327, "frontend_id": 2231, - "videos": [] + "rating": 1365, + "difficulty_lvl": 1, + "acceptance": 0.60665, + "videos": [], + "companies": [] }, { "title": "Minimize Result by Adding Parentheses to Expression", "id": 2328, "frontend_id": 2232, - "videos": [] + "rating": 1612, + "difficulty_lvl": 2, + "acceptance": 0.65956, + "videos": [], + "companies": [] }, { "title": "Maximum Product After K Increments", "id": 2329, "frontend_id": 2233, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.41162, + "videos": [], + "companies": [], + "rating": 1686 }, { "title": "Maximum Total Beauty of the Gardens", "id": 2330, "frontend_id": 2234, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.2871, + "videos": [], + "companies": [], + "rating": 2562 }, { "title": "Intersection of Multiple Arrays", "id": 2331, "frontend_id": 2248, + "rating": 1264, + "difficulty_lvl": 1, + "acceptance": 0.68246, "videos": [], "companies": [ { "name": "Uber", - "score": 6 + "score": 1 } ] }, @@ -44705,41 +52140,67 @@ "title": "Count Lattice Points Inside a Circle", "id": 2332, "frontend_id": 2249, - "videos": [] + "rating": 1603, + "difficulty_lvl": 2, + "acceptance": 0.50909, + "videos": [], + "companies": [] }, { "title": "Count Number of Rectangles Containing Each Point", "id": 2333, "frontend_id": 2250, - "videos": [] + "rating": 1998, + "difficulty_lvl": 2, + "acceptance": 0.34108, + "videos": [], + "companies": [] }, { "title": "Number of Flowers in Full Bloom", "id": 2334, "frontend_id": 2251, - "videos": [] + "rating": 2022, + "difficulty_lvl": 3, + "acceptance": 0.50926, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Finding the Topic of Each Post", "id": 2335, "frontend_id": 2199, - "videos": [] + "rating": 1360, + "difficulty_lvl": 3, + "acceptance": 0.48875, + "videos": [], + "companies": [] }, { "title": "The Number of Users That Are Eligible for Discount", "id": 2336, "frontend_id": 2205, - "videos": [] + "rating": 1375, + "difficulty_lvl": 1, + "acceptance": 0.50427, + "videos": [], + "companies": [] }, { "title": "Remove Digit From Number to Maximize Result", "id": 2337, "frontend_id": 2259, + "rating": 1332, + "difficulty_lvl": 1, + "acceptance": 0.45326, "videos": [], "companies": [ { "name": "Microsoft", - "score": 6 + "score": 2 } ] }, @@ -44747,11 +52208,14 @@ "title": "Minimum Consecutive Cards to Pick Up", "id": 2338, "frontend_id": 2260, + "rating": 1365, + "difficulty_lvl": 2, + "acceptance": 0.50757, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -44759,23 +52223,34 @@ "title": "K Divisible Elements Subarrays", "id": 2339, "frontend_id": 2261, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.48785, + "videos": [], + "companies": [], + "rating": 1724 }, { "title": "Total Appeal of A String", "id": 2340, "frontend_id": 2262, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.55624, + "videos": [], + "companies": [], + "rating": 2033 }, { "title": "Count Prefixes of a Given String", "id": 2341, "frontend_id": 2255, + "rating": 1261, + "difficulty_lvl": 1, + "acceptance": 0.7249, "videos": [], "companies": [ { "name": "Google", - "score": 6 + "score": 1 } ] }, @@ -44783,11 +52258,14 @@ "title": "Minimum Average Difference", "id": 2342, "frontend_id": 2256, + "rating": 1395, + "difficulty_lvl": 2, + "acceptance": 0.43026, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } ] }, @@ -44795,53 +52273,88 @@ "title": "Count Unguarded Cells in the Grid", "id": 2343, "frontend_id": 2257, - "videos": [] + "rating": 1709, + "difficulty_lvl": 2, + "acceptance": 0.51919, + "videos": [], + "companies": [] }, { "title": "Escape the Spreading Fire", "id": 2344, "frontend_id": 2258, - "videos": [] + "rating": 2347, + "difficulty_lvl": 3, + "acceptance": 0.34527, + "videos": [], + "companies": [] }, { "title": "Minimum Number of Operations to Convert Time", "id": 2345, "frontend_id": 2224, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.64753, + "videos": [], + "companies": [], + "rating": 1296 }, { "title": "Largest 3-Same-Digit Number in String", "id": 2346, "frontend_id": 2264, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.59943, + "videos": [], + "companies": [], + "rating": 1309, + "languages": [ + "java" + ] }, { "title": "Count Nodes Equal to Average of Subtree", "id": 2347, "frontend_id": 2265, - "videos": [] + "rating": 1473, + "difficulty_lvl": 2, + "acceptance": 0.84901, + "videos": [], + "companies": [] }, { "title": "Count Number of Texts", "id": 2348, "frontend_id": 2266, - "videos": [] + "rating": 1857, + "difficulty_lvl": 2, + "acceptance": 0.47146, + "videos": [], + "companies": [], + "languages": [] }, { "title": " Check if There Is a Valid Parentheses String Path", "id": 2349, "frontend_id": 2267, - "videos": [] + "rating": 1540, + "difficulty_lvl": 3, + "acceptance": 0.38019, + "videos": [], + "companies": [] }, { "title": "Find Closest Number to Zero", "id": 2350, "frontend_id": 2239, + "rating": 1256, + "difficulty_lvl": 1, + "acceptance": 0.44686, "videos": [], "companies": [ { "name": "Tiger Analytics", - "score": 6 + "score": 1 } ] }, @@ -44849,2106 +52362,3583 @@ "title": "Number of Ways to Buy Pens and Pencils", "id": 2351, "frontend_id": 2240, - "videos": [] + "rating": 1400, + "difficulty_lvl": 2, + "acceptance": 0.56816, + "videos": [], + "companies": [] }, { "title": "Design an ATM Machine", "id": 2352, "frontend_id": 2241, - "videos": [] + "rating": 1616, + "difficulty_lvl": 2, + "acceptance": 0.39115, + "videos": [], + "companies": [] }, { "title": "Maximum Score of a Node Sequence", "id": 2353, "frontend_id": 2242, - "videos": [] + "rating": 2304, + "difficulty_lvl": 3, + "acceptance": 0.37876, + "videos": [], + "companies": [] }, { "title": "Minimum Health to Beat Game", "id": 2354, "frontend_id": 2214, - "videos": [] + "rating": 2076, + "difficulty_lvl": 2, + "acceptance": 0.5783, + "videos": [], + "companies": [] }, { "title": "Maximum Consecutive Floors Without Special Floors", "id": 2355, "frontend_id": 2274, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.51955, + "videos": [], + "companies": [], + "rating": 1333 }, { "title": "Largest Combination With Bitwise AND Greater Than Zero", "id": 2356, "frontend_id": 2275, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.72507, + "videos": [], + "companies": [], + "rating": 1642 }, { "title": "Count Integers in Intervals", "id": 2357, "frontend_id": 2276, - "videos": [] + "rating": 2222, + "difficulty_lvl": 3, + "acceptance": 0.34736, + "videos": [], + "companies": [] }, { "title": "Number of Ways to Split Array", "id": 2358, "frontend_id": 2270, - "videos": [] + "rating": 1334, + "difficulty_lvl": 2, + "acceptance": 0.46175, + "videos": [], + "companies": [] }, { "title": "Maximum White Tiles Covered by a Carpet", "id": 2359, "frontend_id": 2271, - "videos": [] + "rating": 2022, + "difficulty_lvl": 2, + "acceptance": 0.33171, + "videos": [], + "companies": [] }, { "title": "Substring With Largest Variance", "id": 2360, "frontend_id": 2272, - "videos": [] + "rating": 2516, + "difficulty_lvl": 3, + "acceptance": 0.4714, + "videos": [], + "companies": [] }, { "title": "Calculate Digit Sum of a String", "id": 2361, "frontend_id": 2243, + "difficulty_lvl": 1, + "acceptance": 0.65652, "videos": [], "companies": [ { "name": "Uber", - "score": 6 + "score": 1 } - ] + ], + "rating": 1302 }, { "title": "Minimum Rounds to Complete All Tasks", "id": 2362, "frontend_id": 2244, + "difficulty_lvl": 2, + "acceptance": 0.62817, "videos": [], "companies": [ { "name": "Amazon", - "score": 6 + "score": 1 } - ] + ], + "rating": 1372 }, { "title": "Maximum Trailing Zeros in a Cornered Path", "id": 2363, "frontend_id": 2245, - "videos": [] + "rating": 2037, + "difficulty_lvl": 2, + "acceptance": 0.35461, + "videos": [], + "companies": [] }, { "title": "Longest Path With Different Adjacent Characters", "id": 2364, "frontend_id": 2246, - "videos": [] + "rating": 2126, + "difficulty_lvl": 3, + "acceptance": 0.55262, + "videos": [], + "companies": [] }, { "title": "Percentage of Letter in String", "id": 2365, "frontend_id": 2278, - "videos": [] + "rating": 1162, + "difficulty_lvl": 1, + "acceptance": 0.73987, + "videos": [], + "companies": [] }, { "title": "Maximum Bags With Full Capacity of Rocks", "id": 2366, "frontend_id": 2279, - "videos": [] + "rating": 1249, + "difficulty_lvl": 2, + "acceptance": 0.67639, + "videos": [], + "companies": [] }, { "title": "Minimum Lines to Represent a Line Chart", "id": 2367, "frontend_id": 2280, - "videos": [] + "rating": 1681, + "difficulty_lvl": 2, + "acceptance": 0.24741, + "videos": [], + "companies": [] }, { "title": "Sum of Total Strength of Wizards", "id": 2368, "frontend_id": 2281, - "videos": [] + "rating": 2621, + "difficulty_lvl": 3, + "acceptance": 0.27441, + "videos": [], + "companies": [] }, { "title": "Maximum Sum Score of Array", "id": 2369, "frontend_id": 2219, - "videos": [] + "rating": 1780, + "difficulty_lvl": 2, + "acceptance": 0.61642, + "videos": [], + "companies": [] }, { "title": "Users With Two Purchases Within Seven Days", "id": 2370, "frontend_id": 2228, - "videos": [] + "rating": 1835, + "difficulty_lvl": 2, + "acceptance": 0.43646, + "videos": [], + "companies": [] }, { "title": "The Users That Are Eligible for Discount", "id": 2371, "frontend_id": 2230, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.49655, + "videos": [], + "companies": [] }, { "title": "Rearrange Characters to Make Target String", "id": 2372, "frontend_id": 2287, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.57879, + "videos": [], + "companies": [], + "rating": 1300 }, { "title": "Apply Discount to Prices", "id": 2373, "frontend_id": 2288, - "videos": [] + "rating": 1577, + "difficulty_lvl": 2, + "acceptance": 0.28345, + "videos": [], + "companies": [] }, { "title": "Steps to Make Array Non-decreasing", "id": 2374, "frontend_id": 2289, - "videos": [] + "rating": 2482, + "difficulty_lvl": 2, + "acceptance": 0.20956, + "videos": [], + "companies": [] }, { "title": "Minimum Obstacle Removal to Reach Corner", "id": 2375, "frontend_id": 2290, - "videos": [] + "rating": 2138, + "difficulty_lvl": 3, + "acceptance": 0.5078, + "videos": [], + "companies": [] }, { "title": "Number of Times a Driver Was a Passenger", "id": 2376, "frontend_id": 2238, - "videos": [] + "rating": 2120, + "difficulty_lvl": 2, + "acceptance": 0.70706, + "videos": [], + "companies": [] }, { "title": "Check if Number Has Equal Digit Count and Digit Value", "id": 2377, "frontend_id": 2283, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.72661, + "videos": [], + "companies": [], + "rating": 1253 }, { "title": "Sender With Largest Word Count", "id": 2378, "frontend_id": 2284, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.56258, + "videos": [], + "companies": [], + "rating": 1347 }, { "title": "Maximum Total Importance of Roads", "id": 2379, "frontend_id": 2285, - "videos": [] + "rating": 1496, + "difficulty_lvl": 2, + "acceptance": 0.60751, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/NIhXLEiQAPM", + "channel": "NeetCodeIO" + } + ], + "companies": [] }, { "title": "Booking Concert Tickets in Groups", "id": 2380, "frontend_id": 2286, - "videos": [] + "rating": 2470, + "difficulty_lvl": 3, + "acceptance": 0.15742, + "videos": [], + "companies": [] }, { "title": "Dynamic Pivoting of a Table", "id": 2381, "frontend_id": 2252, - "videos": [] + "rating": 1793, + "difficulty_lvl": 3, + "acceptance": 0.54054, + "videos": [], + "companies": [] }, { "title": "Dynamic Unpivoting of a Table", "id": 2382, "frontend_id": 2253, - "videos": [] + "rating": 2136, + "difficulty_lvl": 3, + "acceptance": 0.64968, + "videos": [], + "companies": [] }, { "title": "Add Two Integers", "id": 2383, "frontend_id": 2235, - "videos": [] + "rating": 1413, + "difficulty_lvl": 1, + "acceptance": 0.87606, + "videos": [], + "companies": [], + "languages": [ + "javascript", + "cpp" + ] }, { "title": "Root Equals Sum of Children", "id": 2384, "frontend_id": 2236, - "videos": [] + "rating": 1636, + "difficulty_lvl": 1, + "acceptance": 0.83681, + "videos": [], + "companies": [] }, { "title": "Count Positions on Street With Required Brightness", "id": 2385, "frontend_id": 2237, - "videos": [] + "rating": 1711, + "difficulty_lvl": 2, + "acceptance": 0.64181, + "videos": [], + "companies": [] }, { "title": "Min Max Game", "id": 2386, "frontend_id": 2293, - "videos": [] + "rating": 1241, + "difficulty_lvl": 1, + "acceptance": 0.63156, + "videos": [], + "companies": [] }, { "title": "Partition Array Such That Maximum Difference Is K", "id": 2387, "frontend_id": 2294, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.72861, + "videos": [], + "companies": [], + "rating": 1416 }, { "title": "Replace Elements in an Array", "id": 2388, "frontend_id": 2295, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.57577, + "videos": [], + "companies": [], + "rating": 1445 }, { "title": "Design a Text Editor", "id": 2389, "frontend_id": 2296, - "videos": [] + "rating": 1912, + "difficulty_lvl": 3, + "acceptance": 0.41845, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Naming a Company", "id": 2390, "frontend_id": 2306, + "rating": 2305, + "difficulty_lvl": 3, + "acceptance": 0.46916, "videos": [ { "embedded_url": "https://www.youtube.com/embed/NrHpgTScOcY", "channel": "NeetCodeIO" } + ], + "companies": [], + "languages": [ + "javascript", + "cpp", + "java" ] }, { "title": "Strong Password Checker II", "id": 2391, "frontend_id": 2299, - "videos": [] + "rating": 1242, + "difficulty_lvl": 1, + "acceptance": 0.55455, + "videos": [], + "companies": [] }, { "title": "Successful Pairs of Spells and Potions", "id": 2392, "frontend_id": 2300, + "rating": 1477, + "difficulty_lvl": 2, + "acceptance": 0.41528, "videos": [ { "embedded_url": "https://www.youtube.com/embed/OKnm5oyAhWg", "channel": "NeetCodeIO" } + ], + "companies": [], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Match Substring After Replacement", "id": 2393, "frontend_id": 2301, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.39532, + "videos": [], + "companies": [], + "rating": 1861 }, { "title": "Count Subarrays With Score Less Than K", "id": 2394, "frontend_id": 2302, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.5323, + "videos": [], + "companies": [], + "rating": 1808 }, { "title": "Longest Binary Subsequence Less Than or Equal to K", "id": 2395, "frontend_id": 2311, - "videos": [] + "rating": 1840, + "difficulty_lvl": 2, + "acceptance": 0.37248, + "videos": [], + "companies": [] }, { "title": "Design Video Sharing Platform", "id": 2396, "frontend_id": 2254, - "videos": [] + "rating": 1329, + "difficulty_lvl": 3, + "acceptance": 0.64348, + "videos": [], + "companies": [] }, { "title": "Count Number of Ways to Place Houses", "id": 2397, "frontend_id": 2320, - "videos": [] + "rating": 1608, + "difficulty_lvl": 2, + "acceptance": 0.40962, + "videos": [], + "companies": [] }, { "title": "Check if Matrix Is X-Matrix", "id": 2398, "frontend_id": 2319, - "videos": [] + "rating": 1201, + "difficulty_lvl": 1, + "acceptance": 0.65764, + "videos": [], + "companies": [] }, { "title": "Minimum Flips in Binary Tree to Get Result", "id": 2399, "frontend_id": 2313, - "videos": [] + "rating": 1244, + "difficulty_lvl": 3, + "acceptance": 0.60007, + "videos": [], + "companies": [] }, { "title": "Minimum Score After Removals on a Tree", "id": 2400, "frontend_id": 2322, - "videos": [] + "rating": 2392, + "difficulty_lvl": 3, + "acceptance": 0.50672, + "videos": [], + "companies": [] }, { "title": "Count Asterisks", "id": 2401, "frontend_id": 2315, - "videos": [] + "rating": 1251, + "difficulty_lvl": 1, + "acceptance": 0.81662, + "videos": [], + "companies": [], + "languages": [ + "cpp" + ] }, { "title": "Maximum XOR After Operations ", "id": 2402, "frontend_id": 2317, - "videos": [] + "rating": 1679, + "difficulty_lvl": 2, + "acceptance": 0.79383, + "videos": [], + "companies": [] }, { "title": "Count Unreachable Pairs of Nodes in an Undirected Graph", "id": 2403, "frontend_id": 2316, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.50262, + "videos": [], + "companies": [], + "rating": 1604 }, { "title": "Number of Distinct Roll Sequences", "id": 2404, "frontend_id": 2318, - "videos": [] + "rating": 2090, + "difficulty_lvl": 3, + "acceptance": 0.56375, + "videos": [], + "companies": [] }, { "title": "Minimum Number of Keypresses", "id": 2405, "frontend_id": 2268, - "videos": [] + "rating": 1355, + "difficulty_lvl": 2, + "acceptance": 0.72028, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Decode the Message", "id": 2406, "frontend_id": 2325, - "videos": [] + "rating": 1268, + "difficulty_lvl": 1, + "acceptance": 0.83632, + "videos": [], + "companies": [] }, { "title": "Number of People Aware of a Secret", "id": 2408, "frontend_id": 2327, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.44918, + "videos": [], + "companies": [], + "rating": 1894 }, { "title": "Number of Increasing Paths in a Grid", "id": 2409, "frontend_id": 2328, - "videos": [] + "rating": 2001, + "difficulty_lvl": 3, + "acceptance": 0.59592, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Spiral Matrix IV", "id": 2411, "frontend_id": 2326, - "videos": [] + "rating": 1422, + "difficulty_lvl": 2, + "acceptance": 0.74995, + "videos": [], + "companies": [] }, { "title": "Minimum Amount of Time to Fill Cups", "id": 2412, "frontend_id": 2335, - "videos": [] + "rating": 1360, + "difficulty_lvl": 1, + "acceptance": 0.56748, + "videos": [], + "companies": [] }, { "title": "Smallest Number in Infinite Set", "id": 2413, "frontend_id": 2336, - "videos": [] + "rating": 1375, + "difficulty_lvl": 2, + "acceptance": 0.74145, + "videos": [], + "companies": [] }, { "title": "Move Pieces to Obtain a String", "id": 2414, "frontend_id": 2337, - "videos": [] + "rating": 1693, + "difficulty_lvl": 2, + "acceptance": 0.47669, + "videos": [], + "companies": [] }, { "title": "Count the Number of Ideal Arrays", "id": 2415, "frontend_id": 2338, - "videos": [] + "rating": 2615, + "difficulty_lvl": 3, + "acceptance": 0.26329, + "videos": [], + "companies": [] }, { "title": "Evaluate Boolean Binary Tree", "id": 2416, "frontend_id": 2331, - "videos": [] + "rating": 1304, + "difficulty_lvl": 1, + "acceptance": 0.78007, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/9a_cP54jn8Q", + "channel": "NeetCodeIO" + } + ], + "companies": [] }, { "title": "The Latest Time to Catch a Bus", "id": 2417, "frontend_id": 2332, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.25063, + "videos": [], + "companies": [], + "rating": 1841 }, { "title": "Minimum Sum of Squared Difference", "id": 2418, "frontend_id": 2333, - "videos": [] + "rating": 2011, + "difficulty_lvl": 2, + "acceptance": 0.25417, + "videos": [], + "companies": [] }, { "title": "Subarray With Elements Greater Than Varying Threshold", "id": 2419, "frontend_id": 2334, - "videos": [] + "rating": 2381, + "difficulty_lvl": 3, + "acceptance": 0.418, + "videos": [], + "companies": [] }, { "title": "Closest Node to Path in Tree", "id": 2420, "frontend_id": 2277, - "videos": [] + "rating": 1695, + "difficulty_lvl": 3, + "acceptance": 0.62987, + "videos": [], + "companies": [] }, { "title": "Maximum Number of Pairs in Array", "id": 2421, "frontend_id": 2341, - "videos": [] + "rating": 1185, + "difficulty_lvl": 1, + "acceptance": 0.75464, + "videos": [], + "companies": [] }, { "title": "Query Kth Smallest Trimmed Number", "id": 2422, "frontend_id": 2343, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.41601, + "videos": [], + "companies": [], + "rating": 1652 }, { "title": "Minimum Deletions to Make Array Divisible", "id": 2423, "frontend_id": 2344, - "videos": [] + "rating": 1641, + "difficulty_lvl": 3, + "acceptance": 0.56262, + "videos": [], + "companies": [] }, { "title": "Number of People That Can Be Seen in a Grid", "id": 2425, "frontend_id": 2282, - "videos": [] + "rating": 1622, + "difficulty_lvl": 2, + "acceptance": 0.48617, + "videos": [], + "companies": [] }, { "title": "Maximum Profit From Trading Stocks", "id": 2426, "frontend_id": 2291, - "videos": [] + "rating": 2030, + "difficulty_lvl": 2, + "acceptance": 0.45122, + "videos": [], + "companies": [] }, { "title": "First Letter to Appear Twice", "id": 2427, "frontend_id": 2351, - "videos": [] + "rating": 1155, + "difficulty_lvl": 1, + "acceptance": 0.73878, + "videos": [], + "companies": [] }, { "title": "Equal Row and Column Pairs", "id": 2428, "frontend_id": 2352, - "videos": [] + "rating": 1286, + "difficulty_lvl": 2, + "acceptance": 0.73973, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Design a Food Rating System", "id": 2429, "frontend_id": 2353, - "videos": [] + "rating": 1782, + "difficulty_lvl": 2, + "acceptance": 0.3436, + "videos": [], + "companies": [] }, { "title": "Number of Excellent Pairs", "id": 2430, "frontend_id": 2354, - "videos": [] + "rating": 2076, + "difficulty_lvl": 3, + "acceptance": 0.46148, + "videos": [], + "companies": [] }, { "title": "Products With Three or More Orders in Two Consecutive Years", "id": 2431, "frontend_id": 2292, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.38183, + "videos": [], + "companies": [] }, { "title": "Number of Zero-Filled Subarrays", "id": 2432, "frontend_id": 2348, + "rating": 1316, + "difficulty_lvl": 2, + "acceptance": 0.66714, "videos": [ { "embedded_url": "https://www.youtube.com/embed/G-EWVGCcL_w", "channel": "NeetCodeIO" } + ], + "companies": [], + "languages": [ + "python", + "cpp", + "java" ] }, { "title": "Best Poker Hand", "id": 2433, "frontend_id": 2347, - "videos": [] + "rating": 1242, + "difficulty_lvl": 1, + "acceptance": 0.60346, + "videos": [], + "companies": [] }, { "title": "Design a Number Container System", "id": 2434, "frontend_id": 2349, - "videos": [] + "rating": 1540, + "difficulty_lvl": 2, + "acceptance": 0.45242, + "videos": [], + "companies": [] }, { "title": "Shortest Impossible Sequence of Rolls", "id": 2435, "frontend_id": 2350, - "videos": [] + "rating": 1961, + "difficulty_lvl": 3, + "acceptance": 0.68037, + "videos": [], + "companies": [] }, { "title": "Make Array Zero by Subtracting Equal Amounts", "id": 2436, "frontend_id": 2357, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.7192, + "videos": [], + "companies": [], + "rating": 1225 }, { "title": "Maximum Number of Groups Entering a Competition", "id": 2437, "frontend_id": 2358, - "videos": [] + "rating": 1503, + "difficulty_lvl": 2, + "acceptance": 0.67633, + "videos": [], + "companies": [] }, { "title": "Find Closest Node to Given Two Nodes", "id": 2438, "frontend_id": 2359, - "videos": [] + "rating": 1715, + "difficulty_lvl": 2, + "acceptance": 0.45828, + "videos": [], + "companies": [] }, { "title": "Longest Cycle in a Graph", "id": 2439, "frontend_id": 2360, - "videos": [] + "rating": 1897, + "difficulty_lvl": 3, + "acceptance": 0.50384, + "videos": [], + "companies": [] }, { "title": "Tasks Count in the Weekend", "id": 2440, "frontend_id": 2298, - "videos": [] + "rating": 2460, + "difficulty_lvl": 2, + "acceptance": 0.82091, + "videos": [], + "companies": [] }, { "title": "Arrange Table by Gender", "id": 2441, "frontend_id": 2308, - "videos": [] + "rating": 1168, + "difficulty_lvl": 2, + "acceptance": 0.68804, + "videos": [], + "companies": [] }, { "title": "Number of Arithmetic Triplets", "id": 2442, "frontend_id": 2367, - "videos": [] + "rating": 1203, + "difficulty_lvl": 1, + "acceptance": 0.83336, + "videos": [], + "companies": [] }, { "title": "Check if There is a Valid Partition For The Array", "id": 2443, "frontend_id": 2369, - "videos": [] + "rating": 1780, + "difficulty_lvl": 2, + "acceptance": 0.40234, + "videos": [], + "companies": [] }, { "title": "Longest Ideal Subsequence", "id": 2444, "frontend_id": 2370, - "videos": [] + "rating": 1835, + "difficulty_lvl": 2, + "acceptance": 0.37535, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/gR1E2oLQYSY", + "channel": "NeetCodeIO" + } + ], + "companies": [] }, { "title": "Reachable Nodes With Restrictions", "id": 2445, "frontend_id": 2368, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.58206, + "videos": [], + "companies": [], + "rating": 1477 }, { "title": "The First Day of the Maximum Recorded Degree in Each City", "id": 2446, "frontend_id": 2314, - "videos": [] + "rating": 1322, + "difficulty_lvl": 2, + "acceptance": 0.71565, + "videos": [], + "companies": [] }, { "title": "Merge Similar Items", "id": 2447, "frontend_id": 2363, - "videos": [] + "rating": 1271, + "difficulty_lvl": 1, + "acceptance": 0.75396, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Count Number of Bad Pairs", "id": 2448, "frontend_id": 2364, - "videos": [] + "rating": 1622, + "difficulty_lvl": 2, + "acceptance": 0.41065, + "videos": [], + "companies": [] }, { "title": "Maximum Number of Robots Within Budget", "id": 2449, "frontend_id": 2398, - "videos": [] + "rating": 1917, + "difficulty_lvl": 3, + "acceptance": 0.33319, + "videos": [], + "companies": [] }, { "title": "Minimum Replacements to Sort the Array", "id": 2450, "frontend_id": 2366, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.41196, + "videos": [], + "companies": [], + "rating": 2060 }, { "title": "Product Sales Analysis IV", "id": 2451, "frontend_id": 2324, - "videos": [] + "rating": 1406, + "difficulty_lvl": 2, + "acceptance": 0.7478, + "videos": [], + "companies": [] }, { "title": "Product Sales Analysis V", "id": 2452, "frontend_id": 2329, - "videos": [] + "rating": 1460, + "difficulty_lvl": 1, + "acceptance": 0.68634, + "videos": [], + "companies": [] }, { "title": "All the Matches of the League", "id": 2453, "frontend_id": 2339, - "videos": [] + "rating": 1762, + "difficulty_lvl": 1, + "acceptance": 0.87268, + "videos": [], + "companies": [] }, { "title": "Largest Local Values in a Matrix", "id": 2454, "frontend_id": 2373, - "videos": [] + "rating": 1331, + "difficulty_lvl": 1, + "acceptance": 0.82904, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/wdTRu9sarFA", + "channel": "NeetCodeIO" + } + ], + "companies": [] }, { "title": "Node With Highest Edge Score", "id": 2455, "frontend_id": 2374, - "videos": [] + "rating": 1419, + "difficulty_lvl": 2, + "acceptance": 0.46611, + "videos": [], + "companies": [] }, { "title": "Construct Smallest Number From DI String", "id": 2456, "frontend_id": 2375, - "videos": [] + "rating": 1642, + "difficulty_lvl": 2, + "acceptance": 0.74908, + "videos": [], + "companies": [] }, { "title": "Count Special Integers", "id": 2457, "frontend_id": 2376, - "videos": [] + "rating": 2120, + "difficulty_lvl": 3, + "acceptance": 0.37198, + "videos": [], + "companies": [] }, { "title": "Find Minimum Time to Finish All Jobs II", "id": 2458, "frontend_id": 2323, - "videos": [] + "rating": 2299, + "difficulty_lvl": 2, + "acceptance": 0.70127, + "videos": [], + "companies": [] }, { "title": "Minimum Hours of Training to Win a Competition", "id": 2459, "frontend_id": 2383, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.40748, + "videos": [], + "companies": [], + "rating": 1413 }, { "title": "Amount of Time for Binary Tree to Be Infected", "id": 2461, "frontend_id": 2385, - "videos": [] + "rating": 1711, + "difficulty_lvl": 2, + "acceptance": 0.58045, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Find the K-Sum of an Array", "id": 2462, "frontend_id": 2386, - "videos": [] + "rating": 2648, + "difficulty_lvl": 3, + "acceptance": 0.38233, + "videos": [], + "companies": [] }, { "title": "Minimum Recolors to Get K Consecutive Black Blocks", "id": 2463, "frontend_id": 2379, - "videos": [] + "rating": 1360, + "difficulty_lvl": 1, + "acceptance": 0.58082, + "videos": [], + "companies": [] }, { "title": "Time Needed to Rearrange a Binary String", "id": 2464, "frontend_id": 2380, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.49391, + "videos": [], + "companies": [], + "rating": 1481 }, { "title": "Shifting Letters II", "id": 2465, "frontend_id": 2381, - "videos": [] + "rating": 1793, + "difficulty_lvl": 2, + "acceptance": 0.35788, + "videos": [], + "companies": [] }, { "title": "Maximum Segment Sum After Removals", "id": 2466, "frontend_id": 2382, - "videos": [] + "rating": 2136, + "difficulty_lvl": 3, + "acceptance": 0.4869, + "videos": [], + "companies": [] }, { "title": "Valid Palindrome IV", "id": 2468, "frontend_id": 2330, - "videos": [] + "rating": 2382, + "difficulty_lvl": 2, + "acceptance": 0.76369, + "videos": [], + "companies": [] }, { "title": "Longest Subsequence With Limited Sum", "id": 2469, "frontend_id": 2389, - "videos": [] + "rating": 1388, + "difficulty_lvl": 1, + "acceptance": 0.71902, + "videos": [], + "companies": [], + "languages": [ + "cpp" + ] }, { "title": "Removing Stars From a String", "id": 2470, "frontend_id": 2390, - "videos": [] + "rating": 1348, + "difficulty_lvl": 2, + "acceptance": 0.72979, + "videos": [], + "companies": [ + "python" + ], + "languages": [ + "javascript", + "python", + "cpp", + "java" + ] }, { "title": "Minimum Amount of Time to Collect Garbage", "id": 2471, "frontend_id": 2391, - "videos": [] + "rating": 1456, + "difficulty_lvl": 2, + "acceptance": 0.83228, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Build a Matrix With Conditions", "id": 2472, "frontend_id": 2392, - "videos": [] + "rating": 1961, + "difficulty_lvl": 3, + "acceptance": 0.60447, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Max Sum of a Pair With Equal Sum of Digits", "id": 2473, "frontend_id": 2342, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.53428, + "videos": [], + "companies": [], + "rating": 1309 }, { "title": "Minimum Adjacent Swaps to Make a Valid Array", "id": 2474, "frontend_id": 2340, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.73618, + "videos": [], + "companies": [] }, { "title": "Largest Palindromic Number", "id": 2475, "frontend_id": 2384, - "videos": [] + "rating": 1636, + "difficulty_lvl": 2, + "acceptance": 0.31678, + "videos": [], + "companies": [] }, { "title": "Check Distances Between Same Letters", "id": 2476, "frontend_id": 2399, - "videos": [] + "rating": 1244, + "difficulty_lvl": 1, + "acceptance": 0.70118, + "videos": [], + "companies": [] }, { "title": "Number of Ways to Reach a Position After Exactly k Steps", "id": 2477, "frontend_id": 2400, - "videos": [] + "rating": 1751, + "difficulty_lvl": 2, + "acceptance": 0.33377, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Longest Nice Subarray", "id": 2478, "frontend_id": 2401, - "videos": [] + "rating": 1750, + "difficulty_lvl": 2, + "acceptance": 0.49766, + "videos": [], + "companies": [] }, { "title": "Meeting Rooms III", "id": 2479, "frontend_id": 2402, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.33345, + "videos": [], + "companies": [], + "rating": 2093 }, { "title": "Find Subarrays With Equal Sum", "id": 2480, "frontend_id": 2395, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.64488, + "videos": [], + "companies": [], + "rating": 1250 }, { "title": "Strictly Palindromic Number", "id": 2481, "frontend_id": 2396, - "videos": [] + "rating": 1329, + "difficulty_lvl": 2, + "acceptance": 0.87397, + "videos": [], + "companies": [] }, { "title": "Maximum Rows Covered by Columns", "id": 2482, "frontend_id": 2397, - "videos": [] + "rating": 1719, + "difficulty_lvl": 2, + "acceptance": 0.53841, + "videos": [], + "companies": [] }, { "title": "Task Scheduler II", "id": 2483, "frontend_id": 2365, - "videos": [] + "rating": 1623, + "difficulty_lvl": 2, + "acceptance": 0.47003, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Compute the Rank as a Percentage", "id": 2484, "frontend_id": 2346, - "videos": [] + "rating": 2223, + "difficulty_lvl": 2, + "acceptance": 0.32713, + "videos": [], + "companies": [] }, { "title": "Finding the Number of Visible Mountains", "id": 2485, "frontend_id": 2345, - "videos": [] + "rating": 1207, + "difficulty_lvl": 2, + "acceptance": 0.39194, + "videos": [], + "companies": [] }, { "title": "Most Frequent Even Element", "id": 2486, "frontend_id": 2404, - "videos": [] + "rating": 1259, + "difficulty_lvl": 1, + "acceptance": 0.50419, + "videos": [], + "companies": [] }, { "title": "Optimal Partition of String", "id": 2487, "frontend_id": 2405, + "rating": 1355, + "difficulty_lvl": 2, + "acceptance": 0.79209, "videos": [ { "embedded_url": "https://www.youtube.com/embed/CKZPdiXiQf0", "channel": "NeetCodeIO" } + ], + "companies": [], + "languages": [ + "python", + "java" ] }, { "title": "Divide Intervals Into Minimum Number of Groups", "id": 2488, "frontend_id": 2406, - "videos": [] + "rating": 1713, + "difficulty_lvl": 2, + "acceptance": 0.46283, + "videos": [], + "companies": [] }, { "title": "Sort Array by Moving Items to Empty Space", "id": 2489, "frontend_id": 2459, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.47371, + "videos": [], + "companies": [] }, { "title": "Maximum Number of Books You Can Take", "id": 2490, "frontend_id": 2355, - "videos": [] + "rating": 1263, + "difficulty_lvl": 3, + "acceptance": 0.42531, + "videos": [], + "companies": [] }, { "title": "Smallest Even Multiple", "id": 2491, "frontend_id": 2413, - "videos": [] + "rating": 1145, + "difficulty_lvl": 1, + "acceptance": 0.87403, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Length of the Longest Alphabetical Continuous Substring", "id": 2492, "frontend_id": 2414, - "videos": [] + "rating": 1222, + "difficulty_lvl": 2, + "acceptance": 0.56966, + "videos": [], + "companies": [] }, { "title": "Reverse Odd Levels of Binary Tree", "id": 2493, "frontend_id": 2415, - "videos": [] + "rating": 1431, + "difficulty_lvl": 2, + "acceptance": 0.77238, + "videos": [], + "companies": [] }, { "title": "Sum of Prefix Scores of Strings", "id": 2494, "frontend_id": 2416, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.44267, + "videos": [], + "companies": [], + "rating": 1725 }, { "title": "Number of Unique Subjects Taught by Each Teacher", "id": 2495, "frontend_id": 2356, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.87587, + "videos": [], + "companies": [] }, { "title": "Count Days Spent Together", "id": 2496, "frontend_id": 2409, - "videos": [] + "rating": 1562, + "difficulty_lvl": 1, + "acceptance": 0.44211, + "videos": [], + "companies": [] }, { "title": "Maximum Matching of Players With Trainers", "id": 2497, "frontend_id": 2410, - "videos": [] + "rating": 1381, + "difficulty_lvl": 2, + "acceptance": 0.61552, + "videos": [], + "companies": [] }, { "title": "Smallest Subarrays With Maximum Bitwise OR", "id": 2498, "frontend_id": 2411, - "videos": [] + "rating": 1938, + "difficulty_lvl": 2, + "acceptance": 0.42451, + "videos": [], + "companies": [] }, { "title": "Minimum Money Required Before Transactions", "id": 2499, "frontend_id": 2412, - "videos": [] + "rating": 2092, + "difficulty_lvl": 3, + "acceptance": 0.39762, + "videos": [], + "companies": [] }, { "title": "Minimum Costs Using the Train Line", "id": 2500, "frontend_id": 2361, - "videos": [] + "rating": 1310, + "difficulty_lvl": 3, + "acceptance": 0.79397, + "videos": [], + "companies": [] }, { "title": "Generate the Invoice", "id": 2501, "frontend_id": 2362, - "videos": [] + "rating": 1480, + "difficulty_lvl": 3, + "acceptance": 0.7369, + "videos": [], + "companies": [] }, { "title": "Sort the People", "id": 2502, "frontend_id": 2418, - "videos": [] + "rating": 1193, + "difficulty_lvl": 1, + "acceptance": 0.80266, + "videos": [], + "companies": [] }, { "title": "Longest Subarray With Maximum Bitwise AND", "id": 2503, "frontend_id": 2419, - "videos": [] + "rating": 1496, + "difficulty_lvl": 2, + "acceptance": 0.48532, + "videos": [], + "companies": [] }, { "title": "Find All Good Indices", "id": 2504, "frontend_id": 2420, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.3781, + "videos": [], + "companies": [], + "rating": 1695 }, { "title": "Number of Good Paths", "id": 2505, "frontend_id": 2421, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.57025, + "videos": [], + "companies": [], + "languages": [ + "javascript" + ], + "rating": 2445 }, { "title": "Minimize Maximum Value in a Grid", "id": 2506, "frontend_id": 2371, - "videos": [] + "rating": 1335, + "difficulty_lvl": 3, + "acceptance": 0.65536, + "videos": [], + "companies": [] }, { "title": "Number of Common Factors", "id": 2507, "frontend_id": 2427, - "videos": [] + "rating": 1172, + "difficulty_lvl": 1, + "acceptance": 0.78878, + "videos": [], + "companies": [], + "languages": [ + "javascript" + ] }, { "title": "Maximum Sum of an Hourglass", "id": 2508, "frontend_id": 2428, - "videos": [] + "rating": 1290, + "difficulty_lvl": 2, + "acceptance": 0.74602, + "videos": [], + "companies": [] }, { "title": "Minimize XOR", "id": 2509, "frontend_id": 2429, - "videos": [] + "rating": 1532, + "difficulty_lvl": 2, + "acceptance": 0.43107, + "videos": [], + "companies": [] }, { "title": "Maximum Deletions on a String", "id": 2510, "frontend_id": 2430, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.32047, + "videos": [], + "companies": [], + "rating": 2102 }, { "title": "Partition String Into Substrings With Values at Most K", "id": 2511, "frontend_id": 2522, - "videos": [] + "rating": 1605, + "difficulty_lvl": 2, + "acceptance": 0.46612, + "videos": [], + "companies": [] }, { "title": "Longest Uploaded Prefix", "id": 2512, "frontend_id": 2424, - "videos": [] + "rating": 1604, + "difficulty_lvl": 2, + "acceptance": 0.54409, + "videos": [], + "companies": [] }, { "title": "Number of Pairs Satisfying Inequality", "id": 2513, "frontend_id": 2426, - "videos": [] + "rating": 2030, + "difficulty_lvl": 3, + "acceptance": 0.43582, + "videos": [], + "companies": [] }, { "title": "Calculate the Influence of Each Salesperson", "id": 2515, "frontend_id": 2372, - "videos": [] + "rating": 1367, + "difficulty_lvl": 2, + "acceptance": 0.82832, + "videos": [], + "companies": [] }, { "title": "Sort the Olympic Table", "id": 2516, "frontend_id": 2377, - "videos": [] + "rating": 1948, + "difficulty_lvl": 1, + "acceptance": 0.78107, + "videos": [], + "companies": [] }, { "title": "Choose Edges to Maximize Score in a Tree", "id": 2517, "frontend_id": 2378, - "videos": [] + "rating": 2021, + "difficulty_lvl": 2, + "acceptance": 0.59098, + "videos": [], + "companies": [] }, { "title": "The Employee That Worked on the Longest Task", "id": 2518, "frontend_id": 2432, - "videos": [] + "rating": 1267, + "difficulty_lvl": 1, + "acceptance": 0.4911, + "videos": [], + "companies": [] }, { "title": "Find The Original Array of Prefix Xor", "id": 2519, "frontend_id": 2433, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.85471, + "videos": [], + "companies": [], + "rating": 1367, + "languages": [ + "java" + ] }, { "title": "Using a Robot to Print the Lexicographically Smallest String", "id": 2520, "frontend_id": 2434, - "videos": [] + "rating": 1953, + "difficulty_lvl": 2, + "acceptance": 0.38577, + "videos": [], + "companies": [] }, { "title": "Paths in Matrix Whose Sum Is Divisible by K", "id": 2521, "frontend_id": 2435, - "videos": [] + "rating": 1952, + "difficulty_lvl": 3, + "acceptance": 0.42161, + "videos": [], + "companies": [] }, { "title": "Median of a Row Wise Sorted Matrix", "id": 2522, "frontend_id": 2387, - "videos": [] + "rating": 1605, + "difficulty_lvl": 2, + "acceptance": 0.68221, + "videos": [], + "companies": [] }, { "title": "Change Null Values in a Table to the Previous Value", "id": 2523, "frontend_id": 2388, - "videos": [] + "rating": 1650, + "difficulty_lvl": 2, + "acceptance": 0.54857, + "videos": [], + "companies": [] }, { "title": "Largest Positive Integer That Exists With Its Negative", "id": 2524, "frontend_id": 2441, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.6726, + "videos": [], + "companies": [], + "rating": 1168 }, { "title": "Count Number of Distinct Integers After Reverse Operations", "id": 2525, "frontend_id": 2442, - "videos": [] + "rating": 1219, + "difficulty_lvl": 2, + "acceptance": 0.78519, + "videos": [], + "companies": [] }, { "title": "Longest Increasing Subsequence II", "id": 2526, "frontend_id": 2407, - "videos": [] + "rating": 2280, + "difficulty_lvl": 3, + "acceptance": 0.22043, + "videos": [], + "companies": [] }, { "title": "Count Subarrays With Fixed Bounds", "id": 2527, "frontend_id": 2444, - "videos": [] + "rating": 2093, + "difficulty_lvl": 3, + "acceptance": 0.61801, + "videos": [], + "companies": [] }, { "title": "Number of Valid Clock Times", "id": 2528, "frontend_id": 2437, - "videos": [] + "rating": 1427, + "difficulty_lvl": 1, + "acceptance": 0.42896, + "videos": [], + "companies": [] }, { "title": "Range Product Queries of Powers", "id": 2529, "frontend_id": 2438, - "videos": [] + "rating": 1610, + "difficulty_lvl": 2, + "acceptance": 0.3919, + "videos": [], + "companies": [] }, { "title": "Minimize Maximum of Array", "id": 2530, "frontend_id": 2439, + "rating": 1965, + "difficulty_lvl": 2, + "acceptance": 0.47132, "videos": [ { "embedded_url": "https://www.youtube.com/embed/AeHMvcKuR0Y", "channel": "NeetCodeIO" } - ] + ], + "companies": [] }, { "title": "Create Components With Same Value", "id": 2531, "frontend_id": 2440, - "videos": [] + "rating": 2460, + "difficulty_lvl": 3, + "acceptance": 0.53734, + "videos": [], + "companies": [] }, { "title": "Remove Letter To Equalize Frequency", "id": 2532, "frontend_id": 2423, - "videos": [] + "rating": 1648, + "difficulty_lvl": 1, + "acceptance": 0.17461, + "videos": [], + "companies": [] }, { "title": "Bitwise XOR of All Pairings", "id": 2533, "frontend_id": 2425, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.58303, + "videos": [], + "companies": [], + "rating": 1622 }, { "title": "Employees With Deductions", "id": 2534, "frontend_id": 2394, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.40381, + "videos": [], + "companies": [] }, { "title": "Count Strictly Increasing Subarrays", "id": 2535, "frontend_id": 2393, - "videos": [] + "rating": 1222, + "difficulty_lvl": 2, + "acceptance": 0.72117, + "videos": [], + "companies": [] }, { "title": "Determine if Two Events Have Conflict", "id": 2536, "frontend_id": 2446, - "videos": [] + "rating": 1322, + "difficulty_lvl": 1, + "acceptance": 0.49887, + "videos": [], + "companies": [] }, { "title": "Minimum Time to Kill All Monsters", "id": 2537, "frontend_id": 2403, - "videos": [] + "rating": 1892, + "difficulty_lvl": 3, + "acceptance": 0.5413, + "videos": [], + "companies": [] }, { "title": "Minimum Cost to Make Array Equal", "id": 2538, "frontend_id": 2448, - "videos": [] + "rating": 2005, + "difficulty_lvl": 3, + "acceptance": 0.45941, + "videos": [], + "companies": [] }, { "title": "Minimum Number of Operations to Make Arrays Similar", "id": 2539, "frontend_id": 2449, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.62745, + "videos": [], + "companies": [], + "rating": 2076 }, { "title": "Sum of Number and Its Reverse", "id": 2541, "frontend_id": 2443, - "videos": [] + "rating": 1376, + "difficulty_lvl": 2, + "acceptance": 0.46342, + "videos": [], + "companies": [] }, { "title": "Average Value of Even Numbers That Are Divisible by Three", "id": 2542, "frontend_id": 2455, - "videos": [] + "rating": 1151, + "difficulty_lvl": 1, + "acceptance": 0.5927, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Most Popular Video Creator", "id": 2543, "frontend_id": 2456, - "videos": [] + "rating": 1548, + "difficulty_lvl": 2, + "acceptance": 0.43502, + "videos": [], + "companies": [] }, { "title": "Minimum Addition to Make Integer Beautiful", "id": 2544, "frontend_id": 2457, - "videos": [] + "rating": 1680, + "difficulty_lvl": 2, + "acceptance": 0.37013, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Height of Binary Tree After Subtree Removal Queries", "id": 2545, "frontend_id": 2458, - "videos": [] + "rating": 2299, + "difficulty_lvl": 3, + "acceptance": 0.37723, + "videos": [], + "companies": [] }, { "title": "Number of Subarrays With GCD Equal to K", "id": 2546, "frontend_id": 2447, - "videos": [] + "rating": 1603, + "difficulty_lvl": 2, + "acceptance": 0.48987, + "videos": [], + "companies": [] }, { "title": "Odd String Difference", "id": 2547, "frontend_id": 2451, - "videos": [] + "rating": 1406, + "difficulty_lvl": 1, + "acceptance": 0.58752, + "videos": [], + "companies": [] }, { "title": "Destroy Sequential Targets", "id": 2548, "frontend_id": 2453, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.38378, + "videos": [], + "companies": [], + "rating": 1762 }, { "title": "Next Greater Element IV", "id": 2549, "frontend_id": 2454, - "videos": [] + "rating": 2175, + "difficulty_lvl": 3, + "acceptance": 0.38625, + "videos": [], + "companies": [] }, { "title": "Words Within Two Edits of Dictionary", "id": 2550, "frontend_id": 2452, - "videos": [] + "rating": 1460, + "difficulty_lvl": 2, + "acceptance": 0.60313, + "videos": [], + "companies": [] }, { "title": "Apply Operations to an Array", "id": 2551, "frontend_id": 2460, - "videos": [] + "rating": 1224, + "difficulty_lvl": 1, + "acceptance": 0.67025, + "videos": [], + "companies": [] }, { "title": "Maximum Sum of Distinct Subarrays With Length K", "id": 2552, "frontend_id": 2461, - "videos": [] + "rating": 1553, + "difficulty_lvl": 2, + "acceptance": 0.33889, + "videos": [], + "companies": [] }, { "title": "Total Cost to Hire K Workers", "id": 2553, "frontend_id": 2462, - "videos": [] + "rating": 1764, + "difficulty_lvl": 2, + "acceptance": 0.44842, + "videos": [], + "companies": [] }, { "title": "Minimum Total Distance Traveled", "id": 2554, "frontend_id": 2463, - "videos": [] + "rating": 2454, + "difficulty_lvl": 3, + "acceptance": 0.40534, + "videos": [], + "companies": [] }, { "title": "Design SQL", "id": 2555, "frontend_id": 2408, - "videos": [] + "rating": 2081, + "difficulty_lvl": 2, + "acceptance": 0.8007, + "videos": [], + "companies": [] }, { "title": "Convert the Temperature", "id": 2556, "frontend_id": 2469, - "videos": [] + "rating": 1153, + "difficulty_lvl": 1, + "acceptance": 0.88845, + "videos": [], + "companies": [], + "languages": [ + "javascript" + ] }, { "title": "Number of Subarrays With LCM Equal to K", "id": 2557, "frontend_id": 2470, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.38439, + "videos": [], + "companies": [], + "rating": 1560 }, { "title": "Minimum Number of Operations to Sort a Binary Tree by Level", "id": 2558, "frontend_id": 2471, - "videos": [] + "rating": 1635, + "difficulty_lvl": 2, + "acceptance": 0.62123, + "videos": [], + "companies": [] }, { "title": "Maximum Number of Non-overlapping Palindrome Substrings", "id": 2559, "frontend_id": 2472, - "videos": [] + "rating": 2013, + "difficulty_lvl": 3, + "acceptance": 0.38652, + "videos": [], + "companies": [] }, { "title": "Closest Fair Integer", "id": 2560, "frontend_id": 2417, - "videos": [] + "rating": 2081, + "difficulty_lvl": 2, + "acceptance": 0.44578, + "videos": [], + "companies": [] }, { "title": "Number of Distinct Averages", "id": 2561, "frontend_id": 2465, - "videos": [] + "rating": 1250, + "difficulty_lvl": 1, + "acceptance": 0.57941, + "videos": [], + "companies": [] }, { "title": "Count Ways To Build Good Strings", "id": 2562, "frontend_id": 2466, - "videos": [] + "rating": 1694, + "difficulty_lvl": 2, + "acceptance": 0.55942, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Split Message Based on Limit", "id": 2563, "frontend_id": 2468, - "videos": [] + "rating": 2382, + "difficulty_lvl": 3, + "acceptance": 0.4395, + "videos": [], + "companies": [] }, { "title": "Most Profitable Path in a Tree", "id": 2564, "frontend_id": 2467, - "videos": [] + "rating": 2053, + "difficulty_lvl": 2, + "acceptance": 0.48187, + "videos": [], + "companies": [] }, { "title": "Merge Operations to Turn Array Into a Palindrome", "id": 2565, "frontend_id": 2422, - "videos": [] + "rating": 2432, + "difficulty_lvl": 2, + "acceptance": 0.66393, + "videos": [], + "companies": [] }, { "title": "Number of Unequal Triplets in Array", "id": 2566, "frontend_id": 2475, - "videos": [] + "rating": 1256, + "difficulty_lvl": 1, + "acceptance": 0.70421, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Closest Nodes Queries in a Binary Search Tree", "id": 2567, "frontend_id": 2476, - "videos": [] + "rating": 1597, + "difficulty_lvl": 2, + "acceptance": 0.41068, + "videos": [], + "companies": [] }, { "title": "Minimum Fuel Cost to Report to the Capital", "id": 2568, "frontend_id": 2477, + "rating": 2012, + "difficulty_lvl": 2, + "acceptance": 0.66356, "videos": [ { "embedded_url": "https://www.youtube.com/embed/I3lnDUIzIG4", "channel": "NeetCodeIO" } + ], + "companies": [], + "languages": [ + "java" ] }, { "title": "Number of Beautiful Partitions", "id": 2569, "frontend_id": 2478, - "videos": [] + "rating": 2344, + "difficulty_lvl": 3, + "acceptance": 0.30461, + "videos": [], + "companies": [] }, { "title": "Maximize Total Tastiness of Purchased Fruits", "id": 2570, "frontend_id": 2431, - "videos": [] + "rating": 1281, + "difficulty_lvl": 2, + "acceptance": 0.64876, + "videos": [], + "companies": [] }, { "title": "Find the Pivot Integer", "id": 2571, "frontend_id": 2485, - "videos": [] + "rating": 1207, + "difficulty_lvl": 1, + "acceptance": 0.79648, + "videos": [], + "companies": [], + "languages": [ + "javascript" + ] }, { "title": "Append Characters to String to Make Subsequence", "id": 2572, "frontend_id": 2486, - "videos": [] + "rating": 1363, + "difficulty_lvl": 2, + "acceptance": 0.64569, + "videos": [], + "companies": [] }, { "title": "Remove Nodes From Linked List", "id": 2573, "frontend_id": 2487, - "videos": [] + "rating": 1455, + "difficulty_lvl": 2, + "acceptance": 0.66506, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/y783sRTezDg", + "channel": "NeetCodeIO" + } + ], + "companies": [] }, { "title": "Count Subarrays With Median K", "id": 2574, "frontend_id": 2488, - "videos": [] + "rating": 1999, + "difficulty_lvl": 3, + "acceptance": 0.43496, + "videos": [], + "companies": [] }, { "title": "Minimum Cuts to Divide a Circle", "id": 2575, "frontend_id": 2481, - "videos": [] + "rating": 1246, + "difficulty_lvl": 1, + "acceptance": 0.52092, + "videos": [], + "companies": [] }, { "title": "Minimum Penalty for a Shop", "id": 2576, "frontend_id": 2483, - "videos": [] + "rating": 1495, + "difficulty_lvl": 2, + "acceptance": 0.56424, + "videos": [], + "companies": [], + "languages": [ + "cpp", + "java" + ] }, { "title": "Count Palindromic Subsequences", "id": 2577, "frontend_id": 2484, - "videos": [] + "rating": 2223, + "difficulty_lvl": 3, + "acceptance": 0.34333, + "videos": [], + "companies": [] }, { "title": "Minimum Split Into Subarrays With GCD Greater Than One", "id": 2579, "frontend_id": 2436, - "videos": [] + "rating": 1356, + "difficulty_lvl": 2, + "acceptance": 0.72801, + "videos": [], + "companies": [] }, { "title": "Circular Sentence", "id": 2580, "frontend_id": 2490, - "videos": [] + "rating": 1263, + "difficulty_lvl": 1, + "acceptance": 0.63268, + "videos": [], + "companies": [] }, { "title": "Divide Players Into Teams of Equal Skill", "id": 2581, "frontend_id": 2491, - "videos": [] + "rating": 1323, + "difficulty_lvl": 2, + "acceptance": 0.58836, + "videos": [], + "companies": [] }, { "title": "Minimum Score of a Path Between Two Cities", "id": 2582, "frontend_id": 2492, + "rating": 1680, + "difficulty_lvl": 2, + "acceptance": 0.57736, "videos": [ { "embedded_url": "https://www.youtube.com/embed/K7-mXA0irhY", "channel": "NeetCodeIO" } - ] + ], + "companies": [] }, { "title": "Divide Nodes Into the Maximum Number of Groups", "id": 2583, "frontend_id": 2493, - "videos": [] + "rating": 2415, + "difficulty_lvl": 3, + "acceptance": 0.37428, + "videos": [], + "companies": [] }, { "title": "Number of Nodes With Value One", "id": 2584, "frontend_id": 2445, - "videos": [] + "rating": 2159, + "difficulty_lvl": 2, + "acceptance": 0.69772, + "videos": [], + "companies": [] }, { "title": "Delete Greatest Value in Each Row", "id": 2585, "frontend_id": 2500, - "videos": [] + "rating": 1310, + "difficulty_lvl": 1, + "acceptance": 0.79159, + "videos": [], + "companies": [] }, { "title": "Longest Square Streak in an Array", "id": 2586, "frontend_id": 2501, - "videos": [] + "rating": 1480, + "difficulty_lvl": 2, + "acceptance": 0.39601, + "videos": [], + "companies": [] }, { "title": "Design Memory Allocator", "id": 2587, "frontend_id": 2502, - "videos": [] + "rating": 1746, + "difficulty_lvl": 2, + "acceptance": 0.52207, + "videos": [], + "companies": [] }, { "title": "Maximum Number of Points From Grid Queries", "id": 2588, "frontend_id": 2503, - "videos": [] + "rating": 2196, + "difficulty_lvl": 3, + "acceptance": 0.3724, + "videos": [], + "companies": [] }, { "title": "Maximum Value of a String in an Array", "id": 2589, "frontend_id": 2496, - "videos": [] + "rating": 1293, + "difficulty_lvl": 1, + "acceptance": 0.71393, + "videos": [], + "companies": [] }, { "title": "Maximum Star Sum of a Graph", "id": 2590, "frontend_id": 2497, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.3816, + "videos": [], + "companies": [], + "rating": 1682 }, { "title": "Frog Jump II", "id": 2591, "frontend_id": 2498, - "videos": [] + "rating": 1759, + "difficulty_lvl": 2, + "acceptance": 0.61261, + "videos": [], + "companies": [] }, { "title": "Minimum Total Cost to Make Arrays Unequal", "id": 2592, "frontend_id": 2499, - "videos": [] + "rating": 2633, + "difficulty_lvl": 3, + "acceptance": 0.4279, + "videos": [], + "companies": [] }, { "title": "Number of Distinct Binary Strings After Applying Operations", "id": 2593, "frontend_id": 2450, - "videos": [] + "rating": 1665, + "difficulty_lvl": 2, + "acceptance": 0.65296, + "videos": [], + "companies": [] }, { "title": "Count Pairs Of Similar Strings", "id": 2594, "frontend_id": 2506, - "videos": [] + "rating": 1335, + "difficulty_lvl": 1, + "acceptance": 0.69538, + "videos": [], + "companies": [] }, { "title": "Smallest Value After Replacing With Sum of Prime Factors", "id": 2595, "frontend_id": 2507, - "videos": [] + "rating": 1500, + "difficulty_lvl": 2, + "acceptance": 0.48729, + "videos": [], + "companies": [] }, { "title": "Add Edges to Make Degrees of All Nodes Even", "id": 2596, "frontend_id": 2508, - "videos": [] + "rating": 2060, + "difficulty_lvl": 3, + "acceptance": 0.32386, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Cycle Length Queries in a Tree", "id": 2597, "frontend_id": 2509, - "videos": [] + "rating": 1948, + "difficulty_lvl": 3, + "acceptance": 0.57222, + "videos": [], + "companies": [] }, { "title": "Shortest Distance to Target String in a Circular Array", "id": 2598, "frontend_id": 2515, - "videos": [] + "rating": 1367, + "difficulty_lvl": 1, + "acceptance": 0.48619, + "videos": [], + "companies": [] }, { "title": "Take K of Each Character From Left and Right", "id": 2599, "frontend_id": 2516, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.34485, + "videos": [], + "companies": [], + "rating": 1948 }, { "title": "Maximum Tastiness of Candy Basket", "id": 2600, "frontend_id": 2517, - "videos": [] + "rating": 2021, + "difficulty_lvl": 2, + "acceptance": 0.64921, + "videos": [], + "companies": [] }, { "title": "Number of Great Partitions", "id": 2601, "frontend_id": 2518, - "videos": [] + "rating": 2415, + "difficulty_lvl": 3, + "acceptance": 0.32133, + "videos": [], + "companies": [] }, { "title": "Maximum Enemy Forts That Can Be Captured", "id": 2602, "frontend_id": 2511, - "videos": [] + "rating": 1450, + "difficulty_lvl": 1, + "acceptance": 0.37642, + "videos": [], + "companies": [] }, { "title": "Reward Top K Students", "id": 2603, "frontend_id": 2512, - "videos": [] + "rating": 1637, + "difficulty_lvl": 2, + "acceptance": 0.46205, + "videos": [], + "companies": [] }, { "title": "Minimum Operations to Make Array Equal II", "id": 2604, "frontend_id": 2541, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.31211, + "videos": [], + "companies": [], + "rating": 1620 }, { "title": "Count Anagrams", "id": 2605, "frontend_id": 2514, - "videos": [] + "rating": 2070, + "difficulty_lvl": 3, + "acceptance": 0.33332, + "videos": [], + "companies": [] }, { "title": "Difference Between Ones and Zeros in Row and Column", "id": 2606, "frontend_id": 2482, - "videos": [] + "rating": 1373, + "difficulty_lvl": 2, + "acceptance": 0.79872, + "videos": [], + "companies": [], + "languages": [ + "java" + ] }, { "title": "Minimum Subarrays in a Valid Split", "id": 2607, "frontend_id": 2464, - "videos": [] + "rating": 2071, + "difficulty_lvl": 2, + "acceptance": 0.55369, + "videos": [], + "companies": [] }, { "title": "Count the Digits That Divide a Number", "id": 2608, "frontend_id": 2520, - "videos": [] + "rating": 1261, + "difficulty_lvl": 1, + "acceptance": 0.84226, + "videos": [], + "companies": [] }, { "title": "Distinct Prime Factors of Product of Array", "id": 2609, "frontend_id": 2521, - "videos": [] + "rating": 1413, + "difficulty_lvl": 2, + "acceptance": 0.50515, + "videos": [], + "companies": [] }, { "title": "Closest Prime Numbers in Range", "id": 2610, "frontend_id": 2523, - "videos": [] + "rating": 1650, + "difficulty_lvl": 2, + "acceptance": 0.37081, + "videos": [], + "companies": [] }, { "title": "Minimum Cost to Buy Apples", "id": 2612, "frontend_id": 2473, - "videos": [] + "rating": 2824, + "difficulty_lvl": 2, + "acceptance": 0.60446, + "videos": [], + "companies": [] }, { "title": "Customers With Strictly Increasing Purchases", "id": 2613, "frontend_id": 2474, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.39926, + "videos": [], + "companies": [] }, { "title": "Maximum Count of Positive Integer and Negative Integer", "id": 2614, "frontend_id": 2529, - "videos": [] + "rating": 1196, + "difficulty_lvl": 1, + "acceptance": 0.72664, + "videos": [], + "companies": [] }, { "title": "Make Number of Distinct Characters Equal", "id": 2615, "frontend_id": 2531, - "videos": [] + "rating": 1776, + "difficulty_lvl": 2, + "acceptance": 0.26066, + "videos": [], + "companies": [] }, { "title": "Maximal Score After Applying K Operations", "id": 2616, "frontend_id": 2530, - "videos": [] + "rating": 1386, + "difficulty_lvl": 2, + "acceptance": 0.44467, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Time Taken to Cross the Door", "id": 2617, "frontend_id": 2534, - "videos": [] + "rating": 2582, + "difficulty_lvl": 3, + "acceptance": 0.54228, + "videos": [], + "companies": [] }, { "title": "Maximize the Minimum Powered City", "id": 2618, "frontend_id": 2528, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.33183, + "videos": [], + "companies": [], + "rating": 2236 }, { "title": "Categorize Box According to Criteria", "id": 2619, "frontend_id": 2525, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.34339, + "videos": [], + "companies": [], + "rating": 1301 }, { "title": "Find Consecutive Integers from a Data Stream", "id": 2620, "frontend_id": 2526, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.46413, + "videos": [], + "companies": [], + "rating": 1444 }, { "title": "Find Xor-Beauty of Array", "id": 2621, "frontend_id": 2527, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.69935, + "videos": [], + "companies": [], + "rating": 1550 }, { "title": "Form a Chemical Bond", "id": 2622, "frontend_id": 2480, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.66465, + "videos": [], + "companies": [] }, { "title": "Maximum XOR of Two Non-Overlapping Subtrees", "id": 2623, "frontend_id": 2479, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.49116, + "videos": [], + "companies": [] }, { "title": "Difference Between Element Sum and Digit Sum of an Array", "id": 2624, "frontend_id": 2535, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.84053, + "videos": [], + "companies": [], + "rating": 1222 }, { "title": "Increment Submatrices by One", "id": 2625, "frontend_id": 2536, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.48969, + "videos": [], + "companies": [], + "rating": 1583 }, { "title": "Count the Number of Good Subarrays", "id": 2626, "frontend_id": 2537, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.49277, + "videos": [], + "companies": [], + "rating": 1892 }, { "title": "Difference Between Maximum and Minimum Price Sum", "id": 2627, "frontend_id": 2538, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.34369, + "videos": [], + "companies": [], + "rating": 2398 }, { "title": "Minimize the Maximum of Two Arrays", "id": 2628, "frontend_id": 2513, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.27378, + "videos": [], + "companies": [], + "rating": 2302 }, { "title": "Number of Substrings With Fixed Ratio", "id": 2629, "frontend_id": 2489, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.58494, + "videos": [], + "companies": [] }, { "title": "Alternating Digit Sum", "id": 2630, "frontend_id": 2544, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.68988, + "videos": [], + "companies": [], + "rating": 1184, + "languages": [ + "java" + ] }, { "title": "Sort the Students by Their Kth Score", "id": 2631, "frontend_id": 2545, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.85474, + "videos": [], + "companies": [], + "rating": 1294 }, { "title": "Apply Bitwise Operations to Make Strings Equal", "id": 2632, "frontend_id": 2546, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.40929, + "videos": [], + "companies": [], + "rating": 1605 }, { "title": "Minimum Cost to Split an Array", "id": 2633, "frontend_id": 2547, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.39428, + "videos": [], + "companies": [], + "rating": 2020 }, { "title": "Minimum Common Value", "id": 2634, "frontend_id": 2540, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.50493, + "videos": [], + "companies": [], + "rating": 1250 }, { "title": "Check if Point Is Reachable", "id": 2635, "frontend_id": 2543, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.4355, + "videos": [], + "companies": [], + "rating": 2221 }, { "title": "Maximum Subsequence Score", "id": 2636, "frontend_id": 2542, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.55761, + "videos": [], + "companies": [], + "rating": 2056, + "languages": [ + "cpp" + ] }, { "title": "Merge Overlapping Events in the Same Hall", "id": 2637, "frontend_id": 2494, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.23908, + "videos": [], + "companies": [] }, { "title": "Number of Subarrays Having Even Product", "id": 2638, "frontend_id": 2495, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.64684, + "videos": [], + "companies": [] }, { "title": "Separate the Digits in an Array", "id": 2639, "frontend_id": 2553, - "videos": [] + "rating": 1217, + "difficulty_lvl": 1, + "acceptance": 0.78966, + "videos": [], + "companies": [] }, { "title": "Maximum Number of Integers to Choose From a Range I", "id": 2640, "frontend_id": 2554, - "videos": [] + "rating": 1333, + "difficulty_lvl": 2, + "acceptance": 0.52933, + "videos": [], + "companies": [] }, { "title": "Disconnect Path in a Binary Matrix by at Most One Flip", "id": 2641, "frontend_id": 2556, - "videos": [] + "rating": 2369, + "difficulty_lvl": 2, + "acceptance": 0.2807, + "videos": [], + "companies": [] }, { "title": "Time to Cross a Bridge", "id": 2642, "frontend_id": 2532, - "videos": [] + "rating": 2589, + "difficulty_lvl": 3, + "acceptance": 0.51193, + "videos": [], + "companies": [] }, { "title": "Concatenate the Name and the Profession", "id": 2643, "frontend_id": 2504, - "videos": [] + "rating": 1174, + "difficulty_lvl": 1, + "acceptance": 0.65401, + "videos": [], + "companies": [] }, { "title": "Bitwise OR of All Subsequence Sums", "id": 2644, "frontend_id": 2505, - "videos": [] + "rating": 1258, + "difficulty_lvl": 2, + "acceptance": 0.59148, + "videos": [], + "companies": [] }, { "title": "Pass the Pillow", "id": 2645, "frontend_id": 2582, - "videos": [] + "rating": 1278, + "difficulty_lvl": 1, + "acceptance": 0.45851, + "videos": [], + "companies": [] }, { "title": "Kth Largest Sum in a Binary Tree", "id": 2646, "frontend_id": 2583, - "videos": [] + "rating": 1374, + "difficulty_lvl": 2, + "acceptance": 0.47042, + "videos": [], + "companies": [] }, { "title": "Split the Array to Make Coprime Products", "id": 2647, "frontend_id": 2584, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.22434, + "videos": [], + "companies": [], + "rating": 2159 }, { "title": "Number of Ways to Earn Points", "id": 2648, "frontend_id": 2585, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.58915, + "videos": [], + "companies": [], + "rating": 1910 }, { "title": "Count Total Number of Colored Cells", "id": 2649, "frontend_id": 2579, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.57656, + "videos": [], + "companies": [], + "rating": 1356 }, { "title": "Split With Minimum Sum", "id": 2650, "frontend_id": 2578, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.69746, + "videos": [], + "companies": [], + "rating": 1351 }, { "title": "Count Ways to Group Overlapping Ranges", "id": 2651, "frontend_id": 2580, - "videos": [] + "rating": 1632, + "difficulty_lvl": 2, + "acceptance": 0.35333, + "videos": [], + "companies": [] }, { "title": "Count Number of Possible Root Nodes", "id": 2652, "frontend_id": 2581, - "videos": [] + "rating": 2228, + "difficulty_lvl": 3, + "acceptance": 0.48963, + "videos": [], + "companies": [] }, { "title": "Check if There is a Path With Equal Number of 0's And 1's", "id": 2653, "frontend_id": 2510, - "videos": [] + "rating": 1786, + "difficulty_lvl": 2, + "acceptance": 0.50893, + "videos": [], + "companies": [] }, { "title": "Count the Number of Vowel Strings in Range", "id": 2654, "frontend_id": 2586, - "videos": [] + "rating": 1179, + "difficulty_lvl": 1, + "acceptance": 0.75016, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Rearrange Array to Maximize Prefix Score", "id": 2655, "frontend_id": 2587, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.4027, + "videos": [], + "companies": [], + "rating": 1337 }, { "title": "Count the Number of Beautiful Subarrays", "id": 2656, "frontend_id": 2588, - "videos": [] + "rating": 1697, + "difficulty_lvl": 2, + "acceptance": 0.50099, + "videos": [], + "companies": [] }, { "title": "Minimum Time to Complete All Tasks", "id": 2657, "frontend_id": 2589, - "videos": [] + "rating": 2381, + "difficulty_lvl": 3, + "acceptance": 0.38086, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Count the Number of K-Big Indices", "id": 2658, "frontend_id": 2519, - "videos": [] + "rating": 1490, + "difficulty_lvl": 3, + "acceptance": 0.59789, + "videos": [], + "companies": [] }, { "title": "Number of Even and Odd Bits", "id": 2659, "frontend_id": 2595, - "videos": [] + "rating": 1207, + "difficulty_lvl": 1, + "acceptance": 0.71518, + "videos": [], + "companies": [] }, { "title": "Smallest Missing Non-negative Integer After Operations", "id": 2661, "frontend_id": 2598, - "videos": [] + "rating": 1846, + "difficulty_lvl": 2, + "acceptance": 0.39231, + "videos": [], + "companies": [] }, { "title": "Check Knight Tour Configuration", "id": 2662, "frontend_id": 2596, - "videos": [] + "rating": 1448, + "difficulty_lvl": 2, + "acceptance": 0.58101, + "videos": [], + "companies": [] }, { "title": "Distribute Money to Maximum Children", "id": 2663, "frontend_id": 2591, - "videos": [] + "rating": 1531, + "difficulty_lvl": 1, + "acceptance": 0.18675, + "videos": [], + "companies": [] }, { "title": "Maximize Greatness of an Array", "id": 2664, "frontend_id": 2592, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.57544, + "videos": [], + "companies": [], + "rating": 1569 }, { "title": "Minimum Time to Repair Cars", "id": 2665, "frontend_id": 2594, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.43721, + "videos": [], + "companies": [], + "rating": 1915 }, { "title": "Maximum Frequency Score of a Subarray", "id": 2667, "frontend_id": 2524, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.40339, + "videos": [], + "companies": [] }, { "title": "Number of Good Binary Strings", "id": 2672, "frontend_id": 2533, - "videos": [] + "rating": 1705, + "difficulty_lvl": 2, + "acceptance": 0.58848, + "videos": [], + "companies": [] }, { "title": "Maximize Win From Two Segments", "id": 2673, "frontend_id": 2555, - "videos": [] + "rating": 2081, + "difficulty_lvl": 2, + "acceptance": 0.32272, + "videos": [], + "companies": [] }, { "title": "Make the Prefix Sum Non-negative", "id": 2674, "frontend_id": 2599, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.51937, + "videos": [], + "companies": [] }, { "title": "Count Distinct Numbers on Board", "id": 2679, "frontend_id": 2549, - "videos": [] + "rating": 1266, + "difficulty_lvl": 1, + "acceptance": 0.59669, + "videos": [], + "companies": [] }, { "title": "Count Collisions of Monkeys on a Polygon", "id": 2680, "frontend_id": 2550, - "videos": [] + "rating": 1663, + "difficulty_lvl": 2, + "acceptance": 0.26923, + "videos": [], + "companies": [] }, { "title": "Put Marbles in Bags", "id": 2681, "frontend_id": 2551, - "videos": [] + "rating": 2042, + "difficulty_lvl": 3, + "acceptance": 0.6848, + "videos": [], + "companies": [] }, { "title": "Count Increasing Quadruplets", "id": 2682, "frontend_id": 2552, - "videos": [] + "rating": 2433, + "difficulty_lvl": 3, + "acceptance": 0.31999, + "videos": [], + "companies": [] }, { "title": "Count the Number of Good Subsequences", "id": 2683, "frontend_id": 2539, - "videos": [] + "rating": 1518, + "difficulty_lvl": 2, + "acceptance": 0.68574, + "videos": [], + "companies": [] }, { "title": "Design a Todo List", "id": 2688, "frontend_id": 2590, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.60301, + "videos": [], + "companies": [] }, { "title": "Rearranging Fruits", "id": 2689, "frontend_id": 2561, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.34603, + "videos": [], + "companies": [], + "rating": 2222 }, { "title": "House Robber IV", "id": 2690, "frontend_id": 2560, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.41906, + "videos": [], + "companies": [], + "rating": 2081 }, { "title": "Count Vowel Strings in Ranges", "id": 2691, "frontend_id": 2559, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.51879, + "videos": [], + "companies": [], + "rating": 1435 }, { "title": "Take Gifts From the Richest Pile", "id": 2692, "frontend_id": 2558, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.66403, + "videos": [], + "companies": [], + "rating": 1277 }, { "title": "Maximum Price to Fill a Bag", "id": 2693, "frontend_id": 2548, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.66307, + "videos": [], + "companies": [] }, { "title": "Find Score of an Array After Marking All Elements", "id": 2695, "frontend_id": 2593, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.53816, + "videos": [], + "companies": [], + "rating": 1665 }, { "title": "The Number of Beautiful Subsets", "id": 2696, "frontend_id": 2597, - "videos": [] + "rating": 2023, + "difficulty_lvl": 2, + "acceptance": 0.30067, + "videos": [ + { + "embedded_url": "https://www.youtube.com/embed/Dle_SpjHTio", + "channel": "NeetCodeIO" + } + ], + "companies": [] }, { "title": "Find the Array Concatenation Value", "id": 2698, "frontend_id": 2562, - "videos": [] + "rating": 1260, + "difficulty_lvl": 1, + "acceptance": 0.69409, + "videos": [], + "companies": [] }, { "title": "Count the Number of Fair Pairs", "id": 2699, "frontend_id": 2563, - "videos": [] + "rating": 1721, + "difficulty_lvl": 2, + "acceptance": 0.33028, + "videos": [], + "companies": [] }, { "title": "Substring XOR Queries", "id": 2700, "frontend_id": 2564, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.33961, + "videos": [], + "companies": [], + "rating": 1959 }, { "title": "Subsequence With the Minimum Score", "id": 2701, "frontend_id": 2565, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.32348, + "videos": [], + "companies": [], + "rating": 2432 }, { "title": "Maximum Number of Integers to Choose From a Range II", "id": 2702, "frontend_id": 2557, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.42899, + "videos": [], + "companies": [] }, { "title": "Handling Sum Queries After Update", "id": 2703, "frontend_id": 2569, - "videos": [] + "difficulty_lvl": 3, + "acceptance": 0.27984, + "videos": [], + "companies": [], + "rating": 2398 }, { "title": "Maximum Difference by Remapping a Digit", "id": 2704, "frontend_id": 2566, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.59632, + "videos": [], + "companies": [], + "rating": 1396 }, { "title": "Minimum Impossible OR", "id": 2705, "frontend_id": 2568, - "videos": [] + "difficulty_lvl": 2, + "acceptance": 0.58338, + "videos": [], + "companies": [], + "rating": 1754 }, { "title": "Minimum Score by Changing Two Elements", "id": 2706, "frontend_id": 2567, - "videos": [] + "rating": 1609, + "difficulty_lvl": 2, + "acceptance": 0.48425, + "videos": [], + "companies": [] }, { "title": "Merge Two 2D Arrays by Summing Values", "id": 2707, "frontend_id": 2570, - "videos": [] + "rating": 1281, + "difficulty_lvl": 1, + "acceptance": 0.72931, + "videos": [], + "companies": [], + "languages": [] }, { "title": "Find the String with LCP", "id": 2708, "frontend_id": 2573, - "videos": [] + "rating": 2682, + "difficulty_lvl": 3, + "acceptance": 0.34304, + "videos": [], + "companies": [] }, { "title": "Count the Number of Square-Free Subsets", "id": 2709, "frontend_id": 2572, - "videos": [] + "rating": 2420, + "difficulty_lvl": 2, + "acceptance": 0.21905, + "videos": [], + "companies": [] }, { "title": "Minimum Operations to Reduce an Integer to 0", "id": 2710, "frontend_id": 2571, - "videos": [] + "rating": 1649, + "difficulty_lvl": 2, + "acceptance": 0.51085, + "videos": [], + "companies": [] }, { "title": "Minimum Time to Visit a Cell In a Grid", "id": 2711, "frontend_id": 2577, - "videos": [] + "rating": 2382, + "difficulty_lvl": 3, + "acceptance": 0.35643, + "videos": [], + "companies": [] }, { "title": "Find the Maximum Number of Marked Indices", "id": 2712, "frontend_id": 2576, - "videos": [] + "rating": 1843, + "difficulty_lvl": 2, + "acceptance": 0.38038, + "videos": [], + "companies": [] }, { "title": "Find the Divisibility Array of a String", "id": 2713, "frontend_id": 2575, - "videos": [] + "rating": 1541, + "difficulty_lvl": 2, + "acceptance": 0.31642, + "videos": [], + "companies": [] }, { "title": "Left and Right Sum Differences", "id": 2714, "frontend_id": 2574, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.86552, + "videos": [], + "companies": [], + "rating": 1206 }, { "title": "K Items With the Maximum Sum", "id": 2715, "frontend_id": 2600, - "videos": [] + "difficulty_lvl": 1, + "acceptance": 0.61438, + "videos": [], + "companies": [], + "rating": 1434 }, { "title": "Prime Subtraction Operation", "id": 2716, "frontend_id": 2601, - "videos": [] + "rating": 1779, + "difficulty_lvl": 2, + "acceptance": 0.3727, + "videos": [], + "companies": [] }, { "title": "Collect Coins in a Tree", "id": 2717, "frontend_id": 2603, - "videos": [] + "rating": 2712, + "difficulty_lvl": 3, + "acceptance": 0.37383, + "videos": [], + "companies": [] }, { "title": "Minimum Operations to Make All Array Elements Equal", "id": 2718, "frontend_id": 2602, - "videos": [] + "rating": 1903, + "difficulty_lvl": 2, + "acceptance": 0.35125, + "videos": [], + "companies": [] } ] } \ No newline at end of file diff --git a/src/assets/data/problems_by_company.json b/src/assets/data/problems_by_company.json new file mode 100644 index 0000000..43d3165 --- /dev/null +++ b/src/assets/data/problems_by_company.json @@ -0,0 +1,7778 @@ +{ + "Amazon": [ + { + "title": "Number of Islands", + "id": 200, + "rank": 1 + }, + { + "title": "Rotting Oranges", + "id": 1036, + "rank": 2 + }, + { + "title": "Most Common Word", + "id": 837, + "rank": 3 + }, + { + "title": "Copy List with Random Pointer", + "id": 138, + "rank": 4 + }, + { + "title": "Partition Labels", + "id": 768, + "rank": 5 + }, + { + "title": "Top K Frequent Words", + "id": 692, + "rank": 6 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 7 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 8 + }, + { + "title": "Subtree of Another ee", + "id": 572, + "rank": 9 + }, + { + "title": "Search a 2D Matrix II", + "id": 240, + "rank": 10 + }, + { + "title": "Longest Palindromic Substring", + "id": 5, + "rank": 11 + }, + { + "title": "Merge Two Sorted Lists", + "id": 21, + "rank": 12 + }, + { + "title": "Concatenated Words", + "id": 472, + "rank": 13 + }, + { + "title": "K Closest Points to Origin", + "id": 1014, + "rank": 14 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 15 + }, + { + "title": "Prison Cells After N Days", + "id": 994, + "rank": 16 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 17 + }, + { + "title": "Analyze User Website Visit Pattern", + "id": 1108, + "rank": 18 + }, + { + "title": "Search Suggestions System", + "id": 1397, + "rank": 19 + }, + { + "title": "Design In-Memory File System", + "id": 588, + "rank": 20 + }, + { + "title": "LFU Cache", + "id": 460, + "rank": 21 + }, + { + "title": "Serialize and Deserialize Binary Tree", + "id": 297, + "rank": 22 + }, + { + "title": "Design Search Autocomplete System", + "id": 642, + "rank": 23 + }, + { + "title": "Design Tic-Tac-Toe", + "id": 348, + "rank": 24 + }, + { + "title": "Word Ladder", + "id": 127, + "rank": 25 + }, + { + "title": "Number of Distinct Islands", + "id": 694, + "rank": 26 + }, + { + "title": "Word Search II", + "id": 212, + "rank": 27 + }, + { + "title": "Word Ladder II", + "id": 126, + "rank": 28 + }, + { + "title": "Meeting Rooms II", + "id": 253, + "rank": 29 + }, + { + "title": "Integer to English Words", + "id": 273, + "rank": 30 + }, + { + "title": "Insert Delete GetRandom O(1)", + "id": 380, + "rank": 31 + }, + { + "title": "Two Sum Less Than K", + "id": 1083, + "rank": 32 + }, + { + "title": "Add Two Numbers", + "id": 2, + "rank": 33 + }, + { + "title": "Best Time to Buy and Sell Stock", + "id": 121, + "rank": 34 + }, + { + "title": "Group Anagrams", + "id": 49, + "rank": 35 + }, + { + "title": "Word Break", + "id": 139, + "rank": 36 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 37 + }, + { + "title": "3Sum", + "id": 15, + "rank": 38 + }, + { + "title": "Alien Dictionary", + "id": 269, + "rank": 39 + }, + { + "title": "Sliding Window Maximum", + "id": 239, + "rank": 40 + }, + { + "title": "Boundary of Binary Tree", + "id": 545, + "rank": 41 + }, + { + "title": "Recover Binary Search Tree", + "id": 99, + "rank": 42 + }, + { + "title": "Product of Array Except Self", + "id": 238, + "rank": 43 + }, + { + "title": "Min Stack", + "id": 155, + "rank": 44 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 45 + }, + { + "title": "The Maze", + "id": 490, + "rank": 46 + }, + { + "title": "Design Snake Game", + "id": 353, + "rank": 47 + }, + { + "title": "Coin Change", + "id": 322, + "rank": 48 + }, + { + "title": "Letter Combinations of a Phone Number", + "id": 17, + "rank": 49 + }, + { + "title": "Word Break II", + "id": 140, + "rank": 50 + } + ], + "Adobe": [ + { + "title": "Two Sum", + "id": 1, + "rank": 1 + }, + { + "title": "Add Two Numbers", + "id": 2, + "rank": 2 + }, + { + "title": "Merge Two Sorted Lists", + "id": 21, + "rank": 3 + }, + { + "title": "Longest Palindromic Substring", + "id": 5, + "rank": 4 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 5 + }, + { + "title": "Remove Duplicates from Sorted List II", + "id": 82, + "rank": 6 + }, + { + "title": "H-Index", + "id": 274, + "rank": 7 + }, + { + "title": "Design HashMap", + "id": 817, + "rank": 8 + }, + { + "title": "Generate Parentheses", + "id": 22, + "rank": 9 + }, + { + "title": "Distinct Subsequences", + "id": 115, + "rank": 10 + }, + { + "title": "Daily Temperatures", + "id": 739, + "rank": 11 + }, + { + "title": "Strong Password Checker", + "id": 420, + "rank": 12 + }, + { + "title": "The Skyline Problem", + "id": 218, + "rank": 13 + }, + { + "title": "Minimum Window Substring", + "id": 76, + "rank": 14 + }, + { + "title": "Self Dividing Numbers", + "id": 728, + "rank": 15 + }, + { + "title": "3Sum", + "id": 15, + "rank": 16 + }, + { + "title": "Reverse Linked List", + "id": 206, + "rank": 17 + }, + { + "title": "Split Linked List in Parts", + "id": 725, + "rank": 18 + }, + { + "title": "Maximum Subarray", + "id": 53, + "rank": 19 + }, + { + "title": "Sudoku Solver", + "id": 37, + "rank": 20 + }, + { + "title": "Reverse Nodes in k-Group", + "id": 25, + "rank": 21 + }, + { + "title": "Happy Number", + "id": 202, + "rank": 22 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 23 + }, + { + "title": "Subarray Sum Equals K", + "id": 560, + "rank": 24 + }, + { + "title": "Reverse Integer", + "id": 7, + "rank": 25 + }, + { + "title": "Search a 2D Matrix", + "id": 74, + "rank": 26 + }, + { + "title": "Median of Two Sorted Arrays", + "id": 4, + "rank": 27 + }, + { + "title": "Shortest Palindrome", + "id": 214, + "rank": 28 + }, + { + "title": "Integer to Roman", + "id": 12, + "rank": 29 + }, + { + "title": "Merge Two Binary Trees", + "id": 617, + "rank": 30 + }, + { + "title": "Print in Order", + "id": 1203, + "rank": 31 + }, + { + "title": "Jump Game", + "id": 55, + "rank": 32 + }, + { + "title": "Largest Divisible Subset", + "id": 368, + "rank": 33 + }, + { + "title": "Defanging an IP Address", + "id": 1205, + "rank": 34 + }, + { + "title": "Contains Duplicate II", + "id": 219, + "rank": 35 + }, + { + "title": "Container With Most Water", + "id": 11, + "rank": 36 + }, + { + "title": "Integer Break", + "id": 343, + "rank": 37 + }, + { + "title": "Burst Balloons", + "id": 312, + "rank": 38 + }, + { + "title": "Contains Duplicate III", + "id": 220, + "rank": 39 + }, + { + "title": "Longest Substring with At Least K Repeating Characters", + "id": 395, + "rank": 40 + }, + { + "title": "Rectangle Overlap", + "id": 866, + "rank": 41 + }, + { + "title": "Maximal Square", + "id": 221, + "rank": 42 + }, + { + "title": "4Sum", + "id": 18, + "rank": 43 + }, + { + "title": "Jump Game II", + "id": 45, + "rank": 44 + }, + { + "title": "Contiguous Array", + "id": 525, + "rank": 45 + }, + { + "title": "Majority Element II", + "id": 229, + "rank": 46 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 47 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 48 + }, + { + "title": "Cousins in Binary Tree", + "id": 1035, + "rank": 49 + }, + { + "title": "Rotting Oranges", + "id": 1036, + "rank": 50 + } + ], + "Google": [ + { + "title": "Expressive Words", + "id": 827, + "rank": 1 + }, + { + "title": "Delete Nodes And Return Forest", + "id": 1207, + "rank": 2 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 3 + }, + { + "title": "Split Array into Consecutive Subsequences", + "id": 659, + "rank": 4 + }, + { + "title": "Minimum Window Subsequence", + "id": 727, + "rank": 5 + }, + { + "title": "Compare Strings by Frequency of the Smallest Character", + "id": 1273, + "rank": 6 + }, + { + "title": "Logger Rate Limiter", + "id": 359, + "rank": 7 + }, + { + "title": "Design Search Autocomplete System", + "id": 642, + "rank": 8 + }, + { + "title": "Validate Stack Sequences", + "id": 983, + "rank": 9 + }, + { + "title": "Student Attendance Record II", + "id": 552, + "rank": 10 + }, + { + "title": "Optimal Account Balancing", + "id": 465, + "rank": 11 + }, + { + "title": "Max Sum of Rectangle No Larger Than K", + "id": 363, + "rank": 12 + }, + { + "title": "Longest Continuous Subarray With Absolute Diff Less Than or Equal to Limit", + "id": 1549, + "rank": 13 + }, + { + "title": "Split Array Largest Sum", + "id": 410, + "rank": 14 + }, + { + "title": "Campus Bikes", + "id": 1052, + "rank": 15 + }, + { + "title": "Count Complete Tree Nodes", + "id": 222, + "rank": 16 + }, + { + "title": "Flip Equivalent Binary Trees", + "id": 988, + "rank": 17 + }, + { + "title": "Bulls and Cows", + "id": 299, + "rank": 18 + }, + { + "title": "Count of Smaller Numbers After Self", + "id": 315, + "rank": 19 + }, + { + "title": "24 Game", + "id": 679, + "rank": 20 + }, + { + "title": "Snapshot Array", + "id": 1249, + "rank": 21 + }, + { + "title": "Longest Line of Consecutive One in Matrix", + "id": 562, + "rank": 22 + }, + { + "title": "Encode and Decode Strings", + "id": 271, + "rank": 23 + }, + { + "title": "Maximum Points You Can Obtain from Cards", + "id": 1538, + "rank": 24 + }, + { + "title": "Sequence Reconstruction", + "id": 444, + "rank": 25 + }, + { + "title": "Maximal Square", + "id": 221, + "rank": 26 + }, + { + "title": "Maximal Rectangle", + "id": 85, + "rank": 27 + }, + { + "title": "My Calendar I", + "id": 729, + "rank": 28 + }, + { + "title": "Candy Crush", + "id": 723, + "rank": 29 + }, + { + "title": "Backspace String Compare", + "id": 874, + "rank": 30 + }, + { + "title": "Text Justification", + "id": 68, + "rank": 31 + }, + { + "title": "Insert Interval", + "id": 57, + "rank": 32 + }, + { + "title": "Random Pick with Weight", + "id": 912, + "rank": 33 + }, + { + "title": "Divide Array in Sets of K Consecutive Numbers", + "id": 1422, + "rank": 34 + }, + { + "title": "Design Hit Counter", + "id": 362, + "rank": 35 + }, + { + "title": "License Key Formatting", + "id": 482, + "rank": 36 + }, + { + "title": "Moving Average from Data Stream", + "id": 346, + "rank": 37 + }, + { + "title": "Decode String", + "id": 394, + "rank": 38 + }, + { + "title": "Evaluate Division", + "id": 399, + "rank": 39 + }, + { + "title": "Strobogrammatic Number III", + "id": 248, + "rank": 40 + }, + { + "title": "Time Needed to Inform All Employees", + "id": 1492, + "rank": 41 + }, + { + "title": "Network Delay Time", + "id": 744, + "rank": 42 + }, + { + "title": "Number of Matching Subsequences", + "id": 808, + "rank": 43 + }, + { + "title": "Valid Square", + "id": 593, + "rank": 44 + }, + { + "title": "Binary Tree Longest Consecutive Sequence", + "id": 298, + "rank": 45 + }, + { + "title": "X of a Kind in a Deck of Cards", + "id": 950, + "rank": 46 + }, + { + "title": "Parallel Courses", + "id": 1101, + "rank": 47 + }, + { + "title": "Reorganize String", + "id": 778, + "rank": 48 + }, + { + "title": "Minimum Window Substring", + "id": 76, + "rank": 49 + }, + { + "title": "House Robber III", + "id": 337, + "rank": 50 + } + ], + "Apple": [ + { + "title": "Peeking Iterator", + "id": 284, + "rank": 1 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 2 + }, + { + "title": "Perfect Rectangle", + "id": 391, + "rank": 3 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 4 + }, + { + "title": "Flatten Nested List Iterator", + "id": 341, + "rank": 5 + }, + { + "title": "Word Search II", + "id": 212, + "rank": 6 + }, + { + "title": "Interleaving String", + "id": 97, + "rank": 7 + }, + { + "title": "Median of Two Sorted Arrays", + "id": 4, + "rank": 8 + }, + { + "title": "Maximum Subarray", + "id": 53, + "rank": 9 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 10 + }, + { + "title": "Add Two Numbers", + "id": 2, + "rank": 11 + }, + { + "title": "Time Based Key-Value Store", + "id": 1023, + "rank": 12 + }, + { + "title": "Knight Probability in Chessboard", + "id": 688, + "rank": 13 + }, + { + "title": "Android Unlock Patterns", + "id": 351, + "rank": 14 + }, + { + "title": "Find Duplicate File in System", + "id": 609, + "rank": 15 + }, + { + "title": "Design Tic-Tac-Toe", + "id": 348, + "rank": 16 + }, + { + "title": "Group Anagrams", + "id": 49, + "rank": 17 + }, + { + "title": "Integer to Roman", + "id": 12, + "rank": 18 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 19 + }, + { + "title": "Basic Calculator II", + "id": 227, + "rank": 20 + }, + { + "title": "Shortest Distance to a Character", + "id": 841, + "rank": 21 + }, + { + "title": "Sparse Matrix Multiplication", + "id": 311, + "rank": 22 + }, + { + "title": "Reverse Linked List", + "id": 206, + "rank": 23 + }, + { + "title": "Product of Array Except Self", + "id": 238, + "rank": 24 + }, + { + "title": "Longest Palindromic Substring", + "id": 5, + "rank": 25 + }, + { + "title": "Frog Jump", + "id": 403, + "rank": 26 + }, + { + "title": "Design Hit Counter", + "id": 362, + "rank": 27 + }, + { + "title": "Alien Dictionary", + "id": 269, + "rank": 28 + }, + { + "title": "Remove Boxes", + "id": 546, + "rank": 29 + }, + { + "title": "Rectangle Overlap", + "id": 866, + "rank": 30 + }, + { + "title": "Find K Closest Elements", + "id": 658, + "rank": 31 + }, + { + "title": "Word Break", + "id": 139, + "rank": 32 + }, + { + "title": "Spiral Matrix", + "id": 54, + "rank": 33 + }, + { + "title": "Exclusive Time of Functions", + "id": 636, + "rank": 34 + }, + { + "title": "Happy Number", + "id": 202, + "rank": 35 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 36 + }, + { + "title": "Valid Sudoku", + "id": 36, + "rank": 37 + }, + { + "title": "Concatenated Words", + "id": 472, + "rank": 38 + }, + { + "title": "Longest Absolute File Path", + "id": 388, + "rank": 39 + }, + { + "title": "Integer Break", + "id": 343, + "rank": 40 + }, + { + "title": "Merge Sorted Array", + "id": 88, + "rank": 41 + }, + { + "title": "UTF-8 Validation", + "id": 393, + "rank": 42 + }, + { + "title": "Rectangle Area", + "id": 223, + "rank": 43 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 44 + }, + { + "title": "Rotate Image", + "id": 48, + "rank": 45 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 46 + }, + { + "title": "Design Search Autocomplete System", + "id": 642, + "rank": 47 + }, + { + "title": "Scramble String", + "id": 87, + "rank": 48 + }, + { + "title": "Word Ladder", + "id": 127, + "rank": 49 + }, + { + "title": "Palindrome Permutation", + "id": 266, + "rank": 50 + } + ], + "Microsoft": [ + { + "title": "Integer to English Words", + "id": 273, + "rank": 1 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 2 + }, + { + "title": "Design Tic-Tac-Toe", + "id": 348, + "rank": 3 + }, + { + "title": "Copy List with Random Pointer", + "id": 138, + "rank": 4 + }, + { + "title": "Spiral Matrix", + "id": 54, + "rank": 5 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 6 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 7 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 8 + }, + { + "title": "The Skyline Problem", + "id": 218, + "rank": 9 + }, + { + "title": "Gas Station", + "id": 134, + "rank": 10 + }, + { + "title": "Reverse Nodes in k-Group", + "id": 25, + "rank": 11 + }, + { + "title": "Longest Palindromic Substring", + "id": 5, + "rank": 12 + }, + { + "title": "Word Search II", + "id": 212, + "rank": 13 + }, + { + "title": "Longest Substring with At Most K Distinct Characters", + "id": 340, + "rank": 14 + }, + { + "title": "Boundary of Binary Tree", + "id": 545, + "rank": 15 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 16 + }, + { + "title": "Restore IP Addresses", + "id": 93, + "rank": 17 + }, + { + "title": "String Compression", + "id": 443, + "rank": 18 + }, + { + "title": "Recover Binary Search Tree", + "id": 99, + "rank": 19 + }, + { + "title": "Validate IP Address", + "id": 468, + "rank": 20 + }, + { + "title": "Validate Binary Search Tree", + "id": 98, + "rank": 21 + }, + { + "title": "Add Two Numbers II", + "id": 445, + "rank": 22 + }, + { + "title": "Serialize and Deserialize Binary Tree", + "id": 297, + "rank": 23 + }, + { + "title": "Reverse Words in a String III", + "id": 557, + "rank": 24 + }, + { + "title": "24 Game", + "id": 679, + "rank": 25 + }, + { + "title": "Search a 2D Matrix II", + "id": 240, + "rank": 26 + }, + { + "title": "Implement Queue using Stacks", + "id": 232, + "rank": 27 + }, + { + "title": "Meeting Rooms II", + "id": 253, + "rank": 28 + }, + { + "title": "Generate Parentheses", + "id": 22, + "rank": 29 + }, + { + "title": "Word Ladder", + "id": 127, + "rank": 30 + }, + { + "title": "Largest Number", + "id": 179, + "rank": 31 + }, + { + "title": "Day of the Week", + "id": 1289, + "rank": 32 + }, + { + "title": "Encode and Decode TinyURL", + "id": 535, + "rank": 33 + }, + { + "title": "Lowest Common Ancestor of a Binary Tree", + "id": 236, + "rank": 34 + }, + { + "title": "Delete Node in a BST", + "id": 450, + "rank": 35 + }, + { + "title": "Maximum Subarray", + "id": 53, + "rank": 36 + }, + { + "title": "Reverse Linked List", + "id": 206, + "rank": 37 + }, + { + "title": "Construct Binary Tree from Preorder and Inorder Traversal", + "id": 105, + "rank": 38 + }, + { + "title": "Search in Rotated Sorted Array", + "id": 33, + "rank": 39 + }, + { + "title": "Merge Two Sorted Lists", + "id": 21, + "rank": 40 + }, + { + "title": "Wildcard Matching", + "id": 44, + "rank": 41 + }, + { + "title": "Min Stack", + "id": 155, + "rank": 42 + }, + { + "title": "String to Integer (atoi)", + "id": 8, + "rank": 43 + }, + { + "title": "Search a 2D Matrix", + "id": 74, + "rank": 44 + }, + { + "title": "Reorganize String", + "id": 778, + "rank": 45 + }, + { + "title": "Reverse Words in a String II", + "id": 186, + "rank": 46 + }, + { + "title": "Letter Combinations of a Phone Number", + "id": 17, + "rank": 47 + }, + { + "title": "Binary Tree Maximum Path Sum", + "id": 124, + "rank": 48 + }, + { + "title": "Permutations", + "id": 46, + "rank": 49 + }, + { + "title": "Sudoku Solver", + "id": 37, + "rank": 50 + } + ], + "Facebook": [ + { + "title": "Verifying an Alien Dictionary", + "id": 990, + "rank": 1 + }, + { + "title": "Minimum Remove to Make Valid Parentheses", + "id": 1371, + "rank": 2 + }, + { + "title": "K Closest Points to Origin", + "id": 1014, + "rank": 3 + }, + { + "title": "Product of Array Except Self", + "id": 238, + "rank": 4 + }, + { + "title": "Remove Invalid Parentheses", + "id": 301, + "rank": 5 + }, + { + "title": "Valid Palindrome II", + "id": 680, + "rank": 6 + }, + { + "title": "Subarray Sum Equals K", + "id": 560, + "rank": 7 + }, + { + "title": "Integer to English Words", + "id": 273, + "rank": 8 + }, + { + "title": "Alien Dictionary", + "id": 269, + "rank": 9 + }, + { + "title": "Add Strings", + "id": 415, + "rank": 10 + }, + { + "title": "Binary Tree Maximum Path Sum", + "id": 124, + "rank": 11 + }, + { + "title": "Serialize and Deserialize Binary Tree", + "id": 297, + "rank": 12 + }, + { + "title": "Binary Tree Right Side View", + "id": 199, + "rank": 13 + }, + { + "title": "Find All Anagrams in a String", + "id": 438, + "rank": 14 + }, + { + "title": "First Bad Version", + "id": 278, + "rank": 15 + }, + { + "title": "Continuous Subarray Sum", + "id": 523, + "rank": 16 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 17 + }, + { + "title": "Valid Palindrome", + "id": 125, + "rank": 18 + }, + { + "title": "Binary Search Tree Iterator", + "id": 173, + "rank": 19 + }, + { + "title": "Add Binary", + "id": 67, + "rank": 20 + }, + { + "title": "Expression Add Operators", + "id": 282, + "rank": 21 + }, + { + "title": "Longest Substring with At Most K Distinct Characters", + "id": 340, + "rank": 22 + }, + { + "title": "Kth Largest Element in an Array", + "id": 215, + "rank": 23 + }, + { + "title": "Diameter of Binary Tree", + "id": 543, + "rank": 24 + }, + { + "title": "Exclusive Time of Functions", + "id": 636, + "rank": 25 + }, + { + "title": "Valid Number", + "id": 65, + "rank": 26 + }, + { + "title": "Minimum Window Substring", + "id": 76, + "rank": 27 + }, + { + "title": "Leftmost Column with at Least a One", + "id": 1374, + "rank": 28 + }, + { + "title": "Random Pick Index", + "id": 398, + "rank": 29 + }, + { + "title": "Range Sum of BST", + "id": 975, + "rank": 30 + }, + { + "title": "Sparse Matrix Multiplication", + "id": 311, + "rank": 31 + }, + { + "title": "Closest Binary Search Tree Value", + "id": 270, + "rank": 32 + }, + { + "title": "Maximum Sum of 3 Non-Overlapping Subarrays", + "id": 689, + "rank": 33 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 34 + }, + { + "title": "Word Break", + "id": 139, + "rank": 35 + }, + { + "title": "Vertical Order Traversal of a Binary Tree", + "id": 1029, + "rank": 36 + }, + { + "title": "Clone Graph", + "id": 133, + "rank": 37 + }, + { + "title": "Simplify Path", + "id": 71, + "rank": 38 + }, + { + "title": "Merge Sorted Array", + "id": 88, + "rank": 39 + }, + { + "title": "Monotonic Array", + "id": 932, + "rank": 40 + }, + { + "title": "Accounts Merge", + "id": 721, + "rank": 41 + }, + { + "title": "Intersection of Two Arrays", + "id": 349, + "rank": 42 + }, + { + "title": "Divide Two Integers", + "id": 29, + "rank": 43 + }, + { + "title": "Group Shifted Strings", + "id": 249, + "rank": 44 + }, + { + "title": "Nested List Weight Sum", + "id": 339, + "rank": 45 + }, + { + "title": "Binary Tree Vertical Order Traversal", + "id": 314, + "rank": 46 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 47 + }, + { + "title": "Reorganize String", + "id": 778, + "rank": 48 + }, + { + "title": "Check Completeness of a Binary Tree", + "id": 998, + "rank": 49 + }, + { + "title": "Lowest Common Ancestor of a Binary Tree", + "id": 236, + "rank": 50 + } + ], + "Bloomberg": [ + { + "title": "Design Underground System", + "id": 1512, + "rank": 1 + }, + { + "title": "Flatten a Multilevel Doubly Linked List", + "id": 766, + "rank": 2 + }, + { + "title": "Decode String", + "id": 394, + "rank": 3 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 4 + }, + { + "title": "Two City Scheduling", + "id": 1095, + "rank": 5 + }, + { + "title": "Remove All Adjacent Duplicates in String II", + "id": 1320, + "rank": 6 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 7 + }, + { + "title": "Candy Crush", + "id": 723, + "rank": 8 + }, + { + "title": "Meeting Rooms II", + "id": 253, + "rank": 9 + }, + { + "title": "Add Two Numbers II", + "id": 445, + "rank": 10 + }, + { + "title": "Min Stack", + "id": 155, + "rank": 11 + }, + { + "title": "Add Two Numbers", + "id": 2, + "rank": 12 + }, + { + "title": "Insert Delete GetRandom O(1)", + "id": 380, + "rank": 13 + }, + { + "title": "Vertical Order Traversal of a Binary Tree", + "id": 1029, + "rank": 14 + }, + { + "title": "Design Browser History", + "id": 1582, + "rank": 15 + }, + { + "title": "First Unique Character in a String", + "id": 387, + "rank": 16 + }, + { + "title": "Validate Binary Search Tree", + "id": 98, + "rank": 17 + }, + { + "title": "Elimination Game", + "id": 390, + "rank": 18 + }, + { + "title": "Valid Triangle Number", + "id": 611, + "rank": 19 + }, + { + "title": "Binary Tree Vertical Order Traversal", + "id": 314, + "rank": 20 + }, + { + "title": "Kill Process", + "id": 582, + "rank": 21 + }, + { + "title": "Sort Characters By Frequency", + "id": 451, + "rank": 22 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 23 + }, + { + "title": "Valid Word Square", + "id": 422, + "rank": 24 + }, + { + "title": "Word Break", + "id": 139, + "rank": 25 + }, + { + "title": "Copy List with Random Pointer", + "id": 138, + "rank": 26 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 27 + }, + { + "title": "Integer to Roman", + "id": 12, + "rank": 28 + }, + { + "title": "Search in Rotated Sorted Array", + "id": 33, + "rank": 29 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 30 + }, + { + "title": "Move Zeroes", + "id": 283, + "rank": 31 + }, + { + "title": "Valid Anagram", + "id": 242, + "rank": 32 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 33 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 34 + }, + { + "title": "Remove All Adjacent Duplicates In String", + "id": 1128, + "rank": 35 + }, + { + "title": "Longest Palindromic Substring", + "id": 5, + "rank": 36 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 37 + }, + { + "title": "Odd Even Linked List", + "id": 328, + "rank": 38 + }, + { + "title": "Max Area of Island", + "id": 695, + "rank": 39 + }, + { + "title": "Longest Consecutive Sequence", + "id": 128, + "rank": 40 + }, + { + "title": "Find K Closest Elements", + "id": 658, + "rank": 41 + }, + { + "title": "First Missing Positive", + "id": 41, + "rank": 42 + }, + { + "title": "Island Perimeter", + "id": 463, + "rank": 43 + }, + { + "title": "Merge Two Sorted Lists", + "id": 21, + "rank": 44 + }, + { + "title": "Find Duplicate Subtrees", + "id": 652, + "rank": 45 + }, + { + "title": "3Sum", + "id": 15, + "rank": 46 + }, + { + "title": "Broken Calculator", + "id": 1033, + "rank": 47 + }, + { + "title": "Regular Expression Matching", + "id": 10, + "rank": 48 + }, + { + "title": "Reconstruct Itinerary", + "id": 332, + "rank": 49 + }, + { + "title": "Word Break II", + "id": 140, + "rank": 50 + } + ], + "Uber": [ + { + "title": "Minesweeper", + "id": 529, + "rank": 1 + }, + { + "title": "Set Intersection Size At Least Two", + "id": 759, + "rank": 2 + }, + { + "title": "Palindrome Permutation II", + "id": 267, + "rank": 3 + }, + { + "title": "Number of Islands II", + "id": 305, + "rank": 4 + }, + { + "title": "Word Pattern II", + "id": 291, + "rank": 5 + }, + { + "title": "Reconstruct Itinerary", + "id": 332, + "rank": 6 + }, + { + "title": "Kth Smallest Number in Multiplication Table", + "id": 668, + "rank": 7 + }, + { + "title": "Optimal Account Balancing", + "id": 465, + "rank": 8 + }, + { + "title": "Print Binary Tree", + "id": 655, + "rank": 9 + }, + { + "title": "Subtract the Product and Sum of Digits of an Integer", + "id": 1406, + "rank": 10 + }, + { + "title": "Parallel Courses", + "id": 1101, + "rank": 11 + }, + { + "title": "Basic Calculator II", + "id": 227, + "rank": 12 + }, + { + "title": "Word Abbreviation", + "id": 527, + "rank": 13 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 14 + }, + { + "title": "Fraction to Recurring Decimal", + "id": 166, + "rank": 15 + }, + { + "title": "Flatten Nested List Iterator", + "id": 341, + "rank": 16 + }, + { + "title": "Serialize and Deserialize Binary Tree", + "id": 297, + "rank": 17 + }, + { + "title": "Meeting Rooms II", + "id": 253, + "rank": 18 + }, + { + "title": "Water and Jug Problem", + "id": 365, + "rank": 19 + }, + { + "title": "Longest Consecutive Sequence", + "id": 128, + "rank": 20 + }, + { + "title": "Bomb Enemy", + "id": 361, + "rank": 21 + }, + { + "title": "Random Pick with Weight", + "id": 912, + "rank": 22 + }, + { + "title": "Maximal Square", + "id": 221, + "rank": 23 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 24 + }, + { + "title": "Max Points on a Line", + "id": 149, + "rank": 25 + }, + { + "title": "Design Search Autocomplete System", + "id": 642, + "rank": 26 + }, + { + "title": "Sliding Window Maximum", + "id": 239, + "rank": 27 + }, + { + "title": "Insert Delete GetRandom O(1)", + "id": 380, + "rank": 28 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 29 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 30 + }, + { + "title": "Valid Sudoku", + "id": 36, + "rank": 31 + }, + { + "title": "Text Justification", + "id": 68, + "rank": 32 + }, + { + "title": "Design Snake Game", + "id": 353, + "rank": 33 + }, + { + "title": "Group Anagrams", + "id": 49, + "rank": 34 + }, + { + "title": "Add Two Numbers", + "id": 2, + "rank": 35 + }, + { + "title": "Perfect Squares", + "id": 279, + "rank": 36 + }, + { + "title": "24 Game", + "id": 679, + "rank": 37 + }, + { + "title": "Maximal Rectangle", + "id": 85, + "rank": 38 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 39 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 40 + }, + { + "title": "Alien Dictionary", + "id": 269, + "rank": 41 + }, + { + "title": "Expression Add Operators", + "id": 282, + "rank": 42 + }, + { + "title": "Find All Anagrams in a String", + "id": 438, + "rank": 43 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 44 + }, + { + "title": "Surrounded Regions", + "id": 130, + "rank": 45 + }, + { + "title": "Logger Rate Limiter", + "id": 359, + "rank": 46 + }, + { + "title": "Reverse Pairs", + "id": 493, + "rank": 47 + }, + { + "title": "Insert Delete GetRandom O(1) - Duplicates allowed", + "id": 381, + "rank": 48 + }, + { + "title": "Word Ladder II", + "id": 126, + "rank": 49 + }, + { + "title": "House Robber III", + "id": 337, + "rank": 50 + } + ], + "Spotify": [ + { + "title": "Walls and Gates", + "id": 286, + "rank": 1 + }, + { + "title": "Ransom Note", + "id": 383, + "rank": 2 + }, + { + "title": "Letter Case Permutation", + "id": 800, + "rank": 3 + }, + { + "title": "Generate Parentheses", + "id": 22, + "rank": 4 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 5 + }, + { + "title": "String Compression", + "id": 443, + "rank": 6 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 7 + }, + { + "title": "Reverse Linked List", + "id": 206, + "rank": 8 + }, + { + "title": "Longest Consecutive Sequence", + "id": 128, + "rank": 9 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 10 + }, + { + "title": "Word Ladder", + "id": 127, + "rank": 11 + }, + { + "title": "Kth Largest Element in an Array", + "id": 215, + "rank": 12 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 13 + }, + { + "title": "Top K Frequent Elements", + "id": 347, + "rank": 14 + } + ], + "Expedia": [ + { + "title": "Find the Smallest Divisor Given a Threshold", + "id": 1408, + "rank": 1 + }, + { + "title": "String Compression", + "id": 443, + "rank": 2 + }, + { + "title": "Find Pivot Index", + "id": 724, + "rank": 3 + }, + { + "title": "Search in Rotated Sorted Array", + "id": 33, + "rank": 4 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 5 + }, + { + "title": "Gas Station", + "id": 134, + "rank": 6 + }, + { + "title": "K Closest Points to Origin", + "id": 1014, + "rank": 7 + }, + { + "title": "Daily Temperatures", + "id": 739, + "rank": 8 + }, + { + "title": "House Robber", + "id": 198, + "rank": 9 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 10 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 11 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 12 + }, + { + "title": "Maximum Subarray", + "id": 53, + "rank": 13 + }, + { + "title": "Best Time to Buy and Sell Stock", + "id": 121, + "rank": 14 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 15 + } + ], + "Oracle": [ + { + "title": "Brick Wall", + "id": 554, + "rank": 1 + }, + { + "title": "Data Stream as Disjoint Intervals", + "id": 352, + "rank": 2 + }, + { + "title": "Design Hit Counter", + "id": 362, + "rank": 3 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 4 + }, + { + "title": "Word Squares", + "id": 425, + "rank": 5 + }, + { + "title": "Frog Jump", + "id": 403, + "rank": 6 + }, + { + "title": "Design HashMap", + "id": 817, + "rank": 7 + }, + { + "title": "Meeting Rooms II", + "id": 253, + "rank": 8 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 9 + }, + { + "title": "Exclusive Time of Functions", + "id": 636, + "rank": 10 + }, + { + "title": "Add Strings", + "id": 415, + "rank": 11 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 12 + }, + { + "title": "Delete Node in a BST", + "id": 450, + "rank": 13 + }, + { + "title": "Basic Calculator II", + "id": 227, + "rank": 14 + }, + { + "title": "Serialize and Deserialize Binary Tree", + "id": 297, + "rank": 15 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 16 + }, + { + "title": "Top K Frequent Words", + "id": 692, + "rank": 17 + }, + { + "title": "Kth Smallest Element in a BST", + "id": 230, + "rank": 18 + }, + { + "title": "Sort Colors", + "id": 75, + "rank": 19 + }, + { + "title": "Decode String", + "id": 394, + "rank": 20 + }, + { + "title": "Search in Rotated Sorted Array", + "id": 33, + "rank": 21 + }, + { + "title": "Boundary of Binary Tree", + "id": 545, + "rank": 22 + }, + { + "title": "Insert Delete GetRandom O(1)", + "id": 380, + "rank": 23 + }, + { + "title": "Spiral Matrix", + "id": 54, + "rank": 24 + }, + { + "title": "Minimum Index Sum of Two Lists", + "id": 599, + "rank": 25 + }, + { + "title": "Copy List with Random Pointer", + "id": 138, + "rank": 26 + }, + { + "title": "The Maze II", + "id": 505, + "rank": 27 + }, + { + "title": "Implement Queue using Stacks", + "id": 232, + "rank": 28 + }, + { + "title": "Intersection of Two Arrays", + "id": 349, + "rank": 29 + }, + { + "title": "Set Matrix Zeroes", + "id": 73, + "rank": 30 + }, + { + "title": "Product of Array Except Self", + "id": 238, + "rank": 31 + }, + { + "title": "Compare Strings by Frequency of the Smallest Character", + "id": 1273, + "rank": 32 + }, + { + "title": "Number of Islands II", + "id": 305, + "rank": 33 + }, + { + "title": "Reverse Substrings Between Each Pair of Parentheses", + "id": 1298, + "rank": 34 + }, + { + "title": "Design Twitter", + "id": 355, + "rank": 35 + }, + { + "title": "Maximum Subarray", + "id": 53, + "rank": 36 + }, + { + "title": "Binary Search Tree Iterator", + "id": 173, + "rank": 37 + }, + { + "title": "Serialize and Deserialize BST", + "id": 449, + "rank": 38 + }, + { + "title": "Find Duplicate File in System", + "id": 609, + "rank": 39 + }, + { + "title": "Encode and Decode TinyURL", + "id": 535, + "rank": 40 + }, + { + "title": "Lowest Common Ancestor of a Binary Tree", + "id": 236, + "rank": 41 + }, + { + "title": "Reverse Linked List II", + "id": 92, + "rank": 42 + }, + { + "title": "Shortest Word Distance", + "id": 243, + "rank": 43 + }, + { + "title": "Find Duplicate Subtrees", + "id": 652, + "rank": 44 + }, + { + "title": "Sudoku Solver", + "id": 37, + "rank": 45 + }, + { + "title": "Word Ladder II", + "id": 126, + "rank": 46 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 47 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 48 + }, + { + "title": "Multiply Strings", + "id": 43, + "rank": 49 + }, + { + "title": "Word Break", + "id": 139, + "rank": 50 + } + ], + "Yahoo": [ + { + "title": "Two Sum", + "id": 1, + "rank": 1 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 2 + }, + { + "title": "Container With Most Water", + "id": 11, + "rank": 3 + }, + { + "title": "Can Place Flowers", + "id": 605, + "rank": 4 + }, + { + "title": "Add Two Numbers", + "id": 2, + "rank": 5 + }, + { + "title": "Permutation Sequence", + "id": 60, + "rank": 6 + }, + { + "title": "Sort Colors", + "id": 75, + "rank": 7 + }, + { + "title": "Trim a Binary Search Tree", + "id": 669, + "rank": 8 + }, + { + "title": "Unique Binary Search Trees II", + "id": 95, + "rank": 9 + }, + { + "title": "Increasing Triplet Subsequence", + "id": 334, + "rank": 10 + }, + { + "title": "Kth Largest Element in an Array", + "id": 215, + "rank": 11 + }, + { + "title": "Merge Two Sorted Lists", + "id": 21, + "rank": 12 + }, + { + "title": "Palindrome Partitioning", + "id": 131, + "rank": 13 + }, + { + "title": "Copy List with Random Pointer", + "id": 138, + "rank": 14 + }, + { + "title": "Roman to Integer", + "id": 13, + "rank": 15 + }, + { + "title": "Combinations", + "id": 77, + "rank": 16 + }, + { + "title": "Add Two Numbers II", + "id": 445, + "rank": 17 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 18 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 19 + }, + { + "title": "Partition Equal Subset Sum", + "id": 416, + "rank": 20 + }, + { + "title": "Defanging an IP Address", + "id": 1205, + "rank": 21 + }, + { + "title": "Search in Rotated Sorted Array", + "id": 33, + "rank": 22 + }, + { + "title": "Flatten Binary Tree to Linked List", + "id": 114, + "rank": 23 + }, + { + "title": "Find All Numbers Disappeared in an Array", + "id": 448, + "rank": 24 + }, + { + "title": "Reverse Linked List", + "id": 206, + "rank": 25 + }, + { + "title": "Course Schedule", + "id": 207, + "rank": 26 + }, + { + "title": "Intersection of Two Linked Lists", + "id": 160, + "rank": 27 + }, + { + "title": "Maximum Subarray", + "id": 53, + "rank": 28 + }, + { + "title": "Majority Element", + "id": 169, + "rank": 29 + }, + { + "title": "Generate Parentheses", + "id": 22, + "rank": 30 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 31 + }, + { + "title": "Subarray Sum Equals K", + "id": 560, + "rank": 32 + }, + { + "title": "Reverse Integer", + "id": 7, + "rank": 33 + }, + { + "title": "Permutations", + "id": 46, + "rank": 34 + }, + { + "title": "Median of Two Sorted Arrays", + "id": 4, + "rank": 35 + }, + { + "title": "Group Anagrams", + "id": 49, + "rank": 36 + }, + { + "title": "Move Zeroes", + "id": 283, + "rank": 37 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 38 + }, + { + "title": "Longest Palindromic Substring", + "id": 5, + "rank": 39 + }, + { + "title": "Single Number III", + "id": 260, + "rank": 40 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 41 + } + ], + "Zoho": [ + { + "title": "3Sum", + "id": 15, + "rank": 1 + }, + { + "title": "Add Two Numbers", + "id": 2, + "rank": 2 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 3 + } + ], + "Visa": [ + { + "title": "Design Hit Counter", + "id": 362, + "rank": 1 + }, + { + "title": "Maximum Number of Events That Can Be Attended", + "id": 1478, + "rank": 2 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 3 + }, + { + "title": "Spiral Matrix", + "id": 54, + "rank": 4 + }, + { + "title": "Minimum Window Substring", + "id": 76, + "rank": 5 + }, + { + "title": "Insert Delete GetRandom O(1)", + "id": 380, + "rank": 6 + }, + { + "title": "Meeting Rooms II", + "id": 253, + "rank": 7 + }, + { + "title": "Validate Binary Search Tree", + "id": 98, + "rank": 8 + }, + { + "title": "3Sum", + "id": 15, + "rank": 9 + }, + { + "title": "Best Time to Buy and Sell Stock", + "id": 121, + "rank": 10 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 11 + }, + { + "title": "Reverse Linked List", + "id": 206, + "rank": 12 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 13 + } + ], + "Paypal": [ + { + "title": "Maximum Number of Occurrences of a Substring", + "id": 1423, + "rank": 1 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 2 + }, + { + "title": "Shortest Word Distance", + "id": 243, + "rank": 3 + }, + { + "title": "Wiggle Sort II", + "id": 324, + "rank": 4 + }, + { + "title": "Text Justification", + "id": 68, + "rank": 5 + }, + { + "title": "Integer to Roman", + "id": 12, + "rank": 6 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 7 + }, + { + "title": "Set Matrix Zeroes", + "id": 73, + "rank": 8 + }, + { + "title": "Squares of a Sorted Array", + "id": 1019, + "rank": 9 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 10 + }, + { + "title": "Remove All Adjacent Duplicates In String", + "id": 1128, + "rank": 11 + }, + { + "title": "Basic Calculator II", + "id": 227, + "rank": 12 + }, + { + "title": "Valid Anagram", + "id": 242, + "rank": 13 + }, + { + "title": "Longest Consecutive Sequence", + "id": 128, + "rank": 14 + }, + { + "title": "Middle of the Linked List", + "id": 908, + "rank": 15 + }, + { + "title": "Add Two Numbers", + "id": 2, + "rank": 16 + }, + { + "title": "K Closest Points to Origin", + "id": 1014, + "rank": 17 + }, + { + "title": "Sort Colors", + "id": 75, + "rank": 18 + }, + { + "title": "Maximum Subarray", + "id": 53, + "rank": 19 + }, + { + "title": "Rotate Array", + "id": 189, + "rank": 20 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 21 + }, + { + "title": "Longest Palindromic Substring", + "id": 5, + "rank": 22 + }, + { + "title": "3Sum", + "id": 15, + "rank": 23 + } + ], + "Intel": [ + { + "title": "Count Primes", + "id": 204, + "rank": 1 + }, + { + "title": "Reverse Linked List", + "id": 206, + "rank": 2 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 3 + }, + { + "title": "Merge Two Sorted Lists", + "id": 21, + "rank": 4 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 5 + } + ], + "Salesforce": [ + { + "title": "Find the Smallest Divisor Given a Threshold", + "id": 1408, + "rank": 1 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 2 + }, + { + "title": "Maximum Frequency Stack", + "id": 931, + "rank": 3 + }, + { + "title": "Design HashMap", + "id": 817, + "rank": 4 + }, + { + "title": "Letter Combinations of a Phone Number", + "id": 17, + "rank": 5 + }, + { + "title": "LFU Cache", + "id": 460, + "rank": 6 + }, + { + "title": "Find Pivot Index", + "id": 724, + "rank": 7 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 8 + }, + { + "title": "Design Tic-Tac-Toe", + "id": 348, + "rank": 9 + }, + { + "title": "Reverse Words in a String III", + "id": 557, + "rank": 10 + }, + { + "title": "Word Search II", + "id": 212, + "rank": 11 + }, + { + "title": "Fizz Buzz", + "id": 412, + "rank": 12 + }, + { + "title": "Validate Binary Search Tree", + "id": 98, + "rank": 13 + }, + { + "title": "First Missing Positive", + "id": 41, + "rank": 14 + }, + { + "title": "Minimum Window Substring", + "id": 76, + "rank": 15 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 16 + }, + { + "title": "Rotate Image", + "id": 48, + "rank": 17 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 18 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 19 + }, + { + "title": "Maximum Subarray", + "id": 53, + "rank": 20 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 21 + }, + { + "title": "Add Two Numbers", + "id": 2, + "rank": 22 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 23 + } + ], + "Samsung": [ + { + "title": "Burst Balloons", + "id": 312, + "rank": 1 + }, + { + "title": "Maximal Rectangle", + "id": 85, + "rank": 2 + }, + { + "title": "Longest Palindromic Substring", + "id": 5, + "rank": 3 + }, + { + "title": "3Sum", + "id": 15, + "rank": 4 + }, + { + "title": "Reverse Bits", + "id": 190, + "rank": 5 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 6 + }, + { + "title": "Binary Tree Zigzag Level Order Traversal", + "id": 103, + "rank": 7 + } + ], + "Intuit": [ + { + "title": "Text Justification", + "id": 68, + "rank": 1 + }, + { + "title": "Subdomain Visit Count", + "id": 829, + "rank": 2 + }, + { + "title": "Word Search", + "id": 79, + "rank": 3 + }, + { + "title": "My Calendar I", + "id": 729, + "rank": 4 + }, + { + "title": "Longest Palindrome", + "id": 409, + "rank": 5 + }, + { + "title": "Course Schedule II", + "id": 210, + "rank": 6 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 7 + }, + { + "title": "Find the Duplicate Number", + "id": 287, + "rank": 8 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 9 + }, + { + "title": "Course Schedule", + "id": 207, + "rank": 10 + }, + { + "title": "Group Anagrams", + "id": 49, + "rank": 11 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 12 + } + ], + "Zillow": [ + { + "title": "Lowest Common Ancestor of a Binary Tree", + "id": 236, + "rank": 1 + }, + { + "title": "Path Sum III", + "id": 437, + "rank": 2 + }, + { + "title": "String Compression", + "id": 443, + "rank": 3 + }, + { + "title": "Time Based Key-Value Store", + "id": 1023, + "rank": 4 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 5 + }, + { + "title": "Word Ladder", + "id": 127, + "rank": 6 + }, + { + "title": "Integer to English Words", + "id": 273, + "rank": 7 + }, + { + "title": "First Unique Character in a String", + "id": 387, + "rank": 8 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 9 + }, + { + "title": "Word Break", + "id": 139, + "rank": 10 + }, + { + "title": "Move Zeroes", + "id": 283, + "rank": 11 + }, + { + "title": "Maximum Subarray", + "id": 53, + "rank": 12 + }, + { + "title": "Best Time to Buy and Sell Stock", + "id": 121, + "rank": 13 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 14 + } + ], + "Ebay": [ + { + "title": "Boundary of Binary Tree", + "id": 545, + "rank": 1 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 2 + }, + { + "title": "Diagonal Traverse", + "id": 498, + "rank": 3 + }, + { + "title": "Count Univalue Subtrees", + "id": 250, + "rank": 4 + }, + { + "title": "Shortest Word Distance II", + "id": 244, + "rank": 5 + }, + { + "title": "Meeting Rooms II", + "id": 253, + "rank": 6 + }, + { + "title": "Find Leaves of Binary Tree", + "id": 366, + "rank": 7 + }, + { + "title": "Reorder List", + "id": 143, + "rank": 8 + }, + { + "title": "Flatten Nested List Iterator", + "id": 341, + "rank": 9 + }, + { + "title": "Snapshot Array", + "id": 1249, + "rank": 10 + }, + { + "title": "Peeking Iterator", + "id": 284, + "rank": 11 + }, + { + "title": "Basic Calculator II", + "id": 227, + "rank": 12 + }, + { + "title": "Longest Continuous Subarray With Absolute Diff Less Than or Equal to Limit", + "id": 1549, + "rank": 13 + }, + { + "title": "Surrounded Regions", + "id": 130, + "rank": 14 + }, + { + "title": "Flip Equivalent Binary Trees", + "id": 988, + "rank": 15 + }, + { + "title": "Combination Sum II", + "id": 40, + "rank": 16 + }, + { + "title": "Partition to K Equal Sum Subsets", + "id": 698, + "rank": 17 + }, + { + "title": "Relative Sort Array", + "id": 1217, + "rank": 18 + }, + { + "title": "Decode String", + "id": 394, + "rank": 19 + }, + { + "title": "Move Zeroes", + "id": 283, + "rank": 20 + }, + { + "title": "Subarray Sum Equals K", + "id": 560, + "rank": 21 + }, + { + "title": "Search a 2D Matrix II", + "id": 240, + "rank": 22 + }, + { + "title": "Find K Closest Elements", + "id": 658, + "rank": 23 + }, + { + "title": "N-Queens", + "id": 51, + "rank": 24 + }, + { + "title": "Serialize and Deserialize Binary Tree", + "id": 297, + "rank": 25 + }, + { + "title": "Kth Largest Element in an Array", + "id": 215, + "rank": 26 + }, + { + "title": "Squares of a Sorted Array", + "id": 1019, + "rank": 27 + }, + { + "title": "Find Minimum in Rotated Sorted Array", + "id": 153, + "rank": 28 + }, + { + "title": "String Compression", + "id": 443, + "rank": 29 + }, + { + "title": "Kth Largest Element in a Stream", + "id": 789, + "rank": 30 + }, + { + "title": "Copy List with Random Pointer", + "id": 138, + "rank": 31 + }, + { + "title": "Reorganize String", + "id": 778, + "rank": 32 + }, + { + "title": "Non-decreasing Array", + "id": 665, + "rank": 33 + }, + { + "title": "Search in Rotated Sorted Array", + "id": 33, + "rank": 34 + }, + { + "title": "Sum Root to Leaf Numbers", + "id": 129, + "rank": 35 + }, + { + "title": "House Robber II", + "id": 213, + "rank": 36 + }, + { + "title": "Find the Duplicate Number", + "id": 287, + "rank": 37 + }, + { + "title": "Add Two Numbers II", + "id": 445, + "rank": 38 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 39 + }, + { + "title": "Intersection of Two Linked Lists", + "id": 160, + "rank": 40 + }, + { + "title": "Maximum Width of Binary Tree", + "id": 662, + "rank": 41 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 42 + }, + { + "title": "Letter Combinations of a Phone Number", + "id": 17, + "rank": 43 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 44 + }, + { + "title": "Permutations", + "id": 46, + "rank": 45 + }, + { + "title": "Reverse Linked List", + "id": 206, + "rank": 46 + }, + { + "title": "Longest Palindromic Substring", + "id": 5, + "rank": 47 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 48 + }, + { + "title": "Binary Search Tree Iterator", + "id": 173, + "rank": 49 + }, + { + "title": "Binary Tree Level Order Traversal", + "id": 102, + "rank": 50 + } + ], + "Alibaba": [ + { + "title": "Two Sum", + "id": 1, + "rank": 1 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 2 + }, + { + "title": "Symmetric Tree", + "id": 101, + "rank": 3 + } + ], + "Affirm": [ + { + "title": "Insert Delete GetRandom O(1) - Duplicates allowed", + "id": 381, + "rank": 1 + }, + { + "title": "Insert Delete GetRandom O(1)", + "id": 380, + "rank": 2 + }, + { + "title": "Group Anagrams", + "id": 49, + "rank": 3 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 4 + }, + { + "title": "Coin Change", + "id": 322, + "rank": 5 + } + ], + "Huawei": [ + { + "title": "Maximal Square", + "id": 221, + "rank": 1 + }, + { + "title": "Merge Two Binary Trees", + "id": 617, + "rank": 2 + }, + { + "title": "Jump Game II", + "id": 45, + "rank": 3 + }, + { + "title": "Decode Ways", + "id": 91, + "rank": 4 + }, + { + "title": "Sqrt(x)", + "id": 69, + "rank": 5 + }, + { + "title": "Add Two Numbers", + "id": 2, + "rank": 6 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 7 + }, + { + "title": "Climbing Stairs", + "id": 70, + "rank": 8 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 9 + } + ], + "Morgan-stanley": [ + { + "title": "Best Time to Buy and Sell Stock", + "id": 121, + "rank": 1 + }, + { + "title": "First Missing Positive", + "id": 41, + "rank": 2 + }, + { + "title": "Intersection of Two Linked Lists", + "id": 160, + "rank": 3 + }, + { + "title": "Maximum Subarray", + "id": 53, + "rank": 4 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 5 + } + ], + "Ibm": [ + { + "title": "Gas Station", + "id": 134, + "rank": 1 + }, + { + "title": "3Sum", + "id": 15, + "rank": 2 + }, + { + "title": "Merge Sorted Array", + "id": 88, + "rank": 3 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 4 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 5 + } + ], + "Linkedin": [ + { + "title": "Nested List Weight Sum II", + "id": 364, + "rank": 1 + }, + { + "title": "Shortest Word Distance II", + "id": 244, + "rank": 2 + }, + { + "title": "Closest Binary Search Tree Value II", + "id": 272, + "rank": 3 + }, + { + "title": "Max Stack", + "id": 716, + "rank": 4 + }, + { + "title": "Factor Combinations", + "id": 254, + "rank": 5 + }, + { + "title": "Find Leaves of Binary Tree", + "id": 366, + "rank": 6 + }, + { + "title": "Can Place Flowers", + "id": 605, + "rank": 7 + }, + { + "title": "Nested List Weight Sum", + "id": 339, + "rank": 8 + }, + { + "title": "Binary Tree Upside Down", + "id": 156, + "rank": 9 + }, + { + "title": "Shortest Word Distance", + "id": 243, + "rank": 10 + }, + { + "title": "All O`one Data Structure", + "id": 432, + "rank": 11 + }, + { + "title": "Paint House", + "id": 256, + "rank": 12 + }, + { + "title": "Evaluate Reverse Polish Notation", + "id": 150, + "rank": 13 + }, + { + "title": "Insert Delete GetRandom O(1)", + "id": 380, + "rank": 14 + }, + { + "title": "Max Points on a Line", + "id": 149, + "rank": 15 + }, + { + "title": "Serialize and Deserialize Binary Tree", + "id": 297, + "rank": 16 + }, + { + "title": "Partition to K Equal Sum Subsets", + "id": 698, + "rank": 17 + }, + { + "title": "Find K Pairs with Smallest Sums", + "id": 373, + "rank": 18 + }, + { + "title": "Second Minimum Node In a Binary Tree", + "id": 671, + "rank": 19 + }, + { + "title": "Text Justification", + "id": 68, + "rank": 20 + }, + { + "title": "Paint House II", + "id": 265, + "rank": 21 + }, + { + "title": "Graph Valid Tree", + "id": 261, + "rank": 22 + }, + { + "title": "Insert Interval", + "id": 57, + "rank": 23 + }, + { + "title": "Maximum Subarray", + "id": 53, + "rank": 24 + }, + { + "title": "Minimum Window Substring", + "id": 76, + "rank": 25 + }, + { + "title": "Maximum Product Subarray", + "id": 152, + "rank": 26 + }, + { + "title": "Daily Temperatures", + "id": 739, + "rank": 27 + }, + { + "title": "Find the Celebrity", + "id": 277, + "rank": 28 + }, + { + "title": "Accounts Merge", + "id": 721, + "rank": 29 + }, + { + "title": "Kth Largest Element in an Array", + "id": 215, + "rank": 30 + }, + { + "title": "Valid Triangle Number", + "id": 611, + "rank": 31 + }, + { + "title": "Insert Delete GetRandom O(1) - Duplicates allowed", + "id": 381, + "rank": 32 + }, + { + "title": "Valid Number", + "id": 65, + "rank": 33 + }, + { + "title": "Serialize and Deserialize BST", + "id": 449, + "rank": 34 + }, + { + "title": "Integer to English Words", + "id": 273, + "rank": 35 + }, + { + "title": "Lowest Common Ancestor of a Binary Search Tree", + "id": 235, + "rank": 36 + }, + { + "title": "Word Ladder", + "id": 127, + "rank": 37 + }, + { + "title": "Two Sum III - Data structure design", + "id": 170, + "rank": 38 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 39 + }, + { + "title": "Edit Distance", + "id": 72, + "rank": 40 + }, + { + "title": "Can I Win", + "id": 464, + "rank": 41 + }, + { + "title": "Rotate List", + "id": 61, + "rank": 42 + }, + { + "title": "Integer to Roman", + "id": 12, + "rank": 43 + }, + { + "title": "Search in Rotated Sorted Array", + "id": 33, + "rank": 44 + }, + { + "title": "Permutations", + "id": 46, + "rank": 45 + }, + { + "title": "Exclusive Time of Functions", + "id": 636, + "rank": 46 + }, + { + "title": "Flatten Nested List Iterator", + "id": 341, + "rank": 47 + }, + { + "title": "Binary Tree Level Order Traversal", + "id": 102, + "rank": 48 + }, + { + "title": "Roman to Integer", + "id": 13, + "rank": 49 + }, + { + "title": "Symmetric Tree", + "id": 101, + "rank": 50 + } + ], + "Bytedance": [ + { + "title": "Trapping Rain Water II", + "id": 407, + "rank": 1 + }, + { + "title": "Frog Jump", + "id": 403, + "rank": 2 + }, + { + "title": "Reverse Pairs", + "id": 493, + "rank": 3 + }, + { + "title": "Optimal Account Balancing", + "id": 465, + "rank": 4 + }, + { + "title": "Reverse Nodes in k-Group", + "id": 25, + "rank": 5 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 6 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 7 + }, + { + "title": "Remove Duplicate Letters", + "id": 316, + "rank": 8 + }, + { + "title": "Generalized Abbreviation", + "id": 320, + "rank": 9 + }, + { + "title": "Android Unlock Patterns", + "id": 351, + "rank": 10 + }, + { + "title": "N-Queens", + "id": 51, + "rank": 11 + }, + { + "title": "Asteroid Collision", + "id": 735, + "rank": 12 + }, + { + "title": "Longest Substring with At Least K Repeating Characters", + "id": 395, + "rank": 13 + }, + { + "title": "Maximum Product of Splitted Binary Tree", + "id": 1465, + "rank": 14 + }, + { + "title": "Expression Add Operators", + "id": 282, + "rank": 15 + }, + { + "title": "Serialize and Deserialize BST", + "id": 449, + "rank": 16 + }, + { + "title": "Find the Smallest Divisor Given a Threshold", + "id": 1408, + "rank": 17 + }, + { + "title": "Search a 2D Matrix II", + "id": 240, + "rank": 18 + }, + { + "title": "Score of Parentheses", + "id": 886, + "rank": 19 + }, + { + "title": "Reorder List", + "id": 143, + "rank": 20 + }, + { + "title": "Shortest Distance from All Buildings", + "id": 317, + "rank": 21 + }, + { + "title": "Remove K Digits", + "id": 402, + "rank": 22 + }, + { + "title": "Minimum Remove to Make Valid Parentheses", + "id": 1371, + "rank": 23 + }, + { + "title": "Binary Tree Right Side View", + "id": 199, + "rank": 24 + }, + { + "title": "Kth Largest Element in an Array", + "id": 215, + "rank": 25 + }, + { + "title": "Subarray Sums Divisible by K", + "id": 1016, + "rank": 26 + }, + { + "title": "Course Schedule", + "id": 207, + "rank": 27 + }, + { + "title": "Wildcard Matching", + "id": 44, + "rank": 28 + }, + { + "title": "Lowest Common Ancestor of a Binary Tree", + "id": 236, + "rank": 29 + }, + { + "title": "Search in Rotated Sorted Array", + "id": 33, + "rank": 30 + }, + { + "title": "Max Area of Island", + "id": 695, + "rank": 31 + }, + { + "title": "Add Two Numbers II", + "id": 445, + "rank": 32 + }, + { + "title": "Word Search", + "id": 79, + "rank": 33 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 34 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 35 + }, + { + "title": "Subsets", + "id": 78, + "rank": 36 + }, + { + "title": "Edit Distance", + "id": 72, + "rank": 37 + }, + { + "title": "Binary Tree Maximum Path Sum", + "id": 124, + "rank": 38 + }, + { + "title": "Partition to K Equal Sum Subsets", + "id": 698, + "rank": 39 + }, + { + "title": "Diameter of Binary Tree", + "id": 543, + "rank": 40 + }, + { + "title": "Maximum Swap", + "id": 670, + "rank": 41 + }, + { + "title": "Longest Common Subsequence", + "id": 1250, + "rank": 42 + }, + { + "title": "Binary Search Tree Iterator", + "id": 173, + "rank": 43 + }, + { + "title": "Top K Frequent Elements", + "id": 347, + "rank": 44 + }, + { + "title": "Queue Reconstruction by Height", + "id": 406, + "rank": 45 + }, + { + "title": "Add Strings", + "id": 415, + "rank": 46 + }, + { + "title": "First Missing Positive", + "id": 41, + "rank": 47 + }, + { + "title": "Count Complete Tree Nodes", + "id": 222, + "rank": 48 + }, + { + "title": "Minimum Window Substring", + "id": 76, + "rank": 49 + }, + { + "title": "Largest Number", + "id": 179, + "rank": 50 + } + ], + "Lyft": [ + { + "title": "Asteroid Collision", + "id": 735, + "rank": 1 + }, + { + "title": "Product of Array Except Self", + "id": 238, + "rank": 2 + }, + { + "title": "Water and Jug Problem", + "id": 365, + "rank": 3 + }, + { + "title": "Time Based Key-Value Store", + "id": 1023, + "rank": 4 + }, + { + "title": "Max Stack", + "id": 716, + "rank": 5 + }, + { + "title": "Word Ladder", + "id": 127, + "rank": 6 + }, + { + "title": "Design Search Autocomplete System", + "id": 642, + "rank": 7 + }, + { + "title": "Convert Sorted List to Binary Search Tree", + "id": 109, + "rank": 8 + }, + { + "title": "Minimum Window Substring", + "id": 76, + "rank": 9 + }, + { + "title": "Range Sum Query 2D - Immutable", + "id": 304, + "rank": 10 + }, + { + "title": "Decode Ways", + "id": 91, + "rank": 11 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 12 + }, + { + "title": "Regular Expression Matching", + "id": 10, + "rank": 13 + }, + { + "title": "Permutation in String", + "id": 567, + "rank": 14 + }, + { + "title": "Merge Sorted Array", + "id": 88, + "rank": 15 + }, + { + "title": "Rotate Image", + "id": 48, + "rank": 16 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 17 + }, + { + "title": "Meeting Rooms II", + "id": 253, + "rank": 18 + }, + { + "title": "Intersection of Two Arrays", + "id": 349, + "rank": 19 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 20 + }, + { + "title": "Letter Combinations of a Phone Number", + "id": 17, + "rank": 21 + } + ], + "Snapchat": [ + { + "title": "Shortest Distance from All Buildings", + "id": 317, + "rank": 1 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 2 + }, + { + "title": "Word Search II", + "id": 212, + "rank": 3 + }, + { + "title": "Basic Calculator", + "id": 224, + "rank": 4 + }, + { + "title": "Snapshot Array", + "id": 1249, + "rank": 5 + }, + { + "title": "Text Justification", + "id": 68, + "rank": 6 + }, + { + "title": "Minimum Height Trees", + "id": 310, + "rank": 7 + }, + { + "title": "Longest Substring with At Most K Distinct Characters", + "id": 340, + "rank": 8 + }, + { + "title": "Word Search", + "id": 79, + "rank": 9 + }, + { + "title": "Decode Ways", + "id": 91, + "rank": 10 + }, + { + "title": "Basic Calculator II", + "id": 227, + "rank": 11 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 12 + }, + { + "title": "Palindrome Linked List", + "id": 234, + "rank": 13 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 14 + }, + { + "title": "Word Break", + "id": 139, + "rank": 15 + }, + { + "title": "Decode String", + "id": 394, + "rank": 16 + }, + { + "title": "Meeting Rooms II", + "id": 253, + "rank": 17 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 18 + }, + { + "title": "Add Strings", + "id": 415, + "rank": 19 + }, + { + "title": "Longest Common Prefix", + "id": 14, + "rank": 20 + }, + { + "title": "Serialize and Deserialize Binary Tree", + "id": 297, + "rank": 21 + }, + { + "title": "Spiral Matrix", + "id": 54, + "rank": 22 + }, + { + "title": "Rotate Array", + "id": 189, + "rank": 23 + }, + { + "title": "Top K Frequent Elements", + "id": 347, + "rank": 24 + }, + { + "title": "Course Schedule II", + "id": 210, + "rank": 25 + } + ], + "Godaddy": [ + { + "title": "Meeting Rooms II", + "id": 253, + "rank": 1 + }, + { + "title": "Minimum Window Substring", + "id": 76, + "rank": 2 + }, + { + "title": "Word Break", + "id": 139, + "rank": 3 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 4 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 5 + } + ], + "Tencent": [ + { + "title": "Paint House", + "id": 256, + "rank": 1 + }, + { + "title": "Longest Common Subsequence", + "id": 1250, + "rank": 2 + }, + { + "title": "Decode String", + "id": 394, + "rank": 3 + }, + { + "title": "Reorder List", + "id": 143, + "rank": 4 + }, + { + "title": "Single Number", + "id": 136, + "rank": 5 + }, + { + "title": "Diameter of Binary Tree", + "id": 543, + "rank": 6 + }, + { + "title": "Reverse Linked List", + "id": 206, + "rank": 7 + }, + { + "title": "Merge Two Sorted Lists", + "id": 21, + "rank": 8 + }, + { + "title": "Reverse Bits", + "id": 190, + "rank": 9 + } + ], + "Wish": [ + { + "title": "Longest Absolute File Path", + "id": 388, + "rank": 1 + }, + { + "title": "RLE Iterator", + "id": 936, + "rank": 2 + }, + { + "title": "Add Bold Tag in String", + "id": 616, + "rank": 3 + }, + { + "title": "Max Area of Island", + "id": 695, + "rank": 4 + }, + { + "title": "Unique Binary Search Trees", + "id": 96, + "rank": 5 + }, + { + "title": "Sudoku Solver", + "id": 37, + "rank": 6 + }, + { + "title": "Binary Tree Vertical Order Traversal", + "id": 314, + "rank": 7 + }, + { + "title": "Sliding Window Maximum", + "id": 239, + "rank": 8 + }, + { + "title": "Longest Substring with At Most K Distinct Characters", + "id": 340, + "rank": 9 + }, + { + "title": "Random Pick with Weight", + "id": 912, + "rank": 10 + }, + { + "title": "First Missing Positive", + "id": 41, + "rank": 11 + }, + { + "title": "Factorial Trailing Zeroes", + "id": 172, + "rank": 12 + }, + { + "title": "Find Minimum in Rotated Sorted Array", + "id": 153, + "rank": 13 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 14 + }, + { + "title": "Minimum Path Sum", + "id": 64, + "rank": 15 + }, + { + "title": "Course Schedule", + "id": 207, + "rank": 16 + }, + { + "title": "Min Stack", + "id": 155, + "rank": 17 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 18 + }, + { + "title": "Group Anagrams", + "id": 49, + "rank": 19 + } + ], + "Vmware": [ + { + "title": "LRU Cache", + "id": 146, + "rank": 1 + }, + { + "title": "Degree of an Array", + "id": 697, + "rank": 2 + }, + { + "title": "Time Based Key-Value Store", + "id": 1023, + "rank": 3 + }, + { + "title": "Group Anagrams", + "id": 49, + "rank": 4 + }, + { + "title": "Interleaving String", + "id": 97, + "rank": 5 + }, + { + "title": "Find Duplicate File in System", + "id": 609, + "rank": 6 + }, + { + "title": "Design HashMap", + "id": 817, + "rank": 7 + }, + { + "title": "Maximal Square", + "id": 221, + "rank": 8 + }, + { + "title": "LFU Cache", + "id": 460, + "rank": 9 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 10 + }, + { + "title": "Alien Dictionary", + "id": 269, + "rank": 11 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 12 + }, + { + "title": "Remove All Adjacent Duplicates in String II", + "id": 1320, + "rank": 13 + }, + { + "title": "Restore IP Addresses", + "id": 93, + "rank": 14 + }, + { + "title": "Coin Change", + "id": 322, + "rank": 15 + }, + { + "title": "Remove Duplicates from Sorted Array II", + "id": 80, + "rank": 16 + }, + { + "title": "Evaluate Reverse Polish Notation", + "id": 150, + "rank": 17 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 18 + }, + { + "title": "Invert Binary Tree", + "id": 226, + "rank": 19 + }, + { + "title": "Insert Delete GetRandom O(1)", + "id": 380, + "rank": 20 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 21 + }, + { + "title": "Unique Paths II", + "id": 63, + "rank": 22 + }, + { + "title": "Partition Equal Subset Sum", + "id": 416, + "rank": 23 + }, + { + "title": "String to Integer (atoi)", + "id": 8, + "rank": 24 + }, + { + "title": "Clone Graph", + "id": 133, + "rank": 25 + }, + { + "title": "Valid Sudoku", + "id": 36, + "rank": 26 + }, + { + "title": "Search in Rotated Sorted Array", + "id": 33, + "rank": 27 + }, + { + "title": "Serialize and Deserialize Binary Tree", + "id": 297, + "rank": 28 + }, + { + "title": "Kth Smallest Element in a BST", + "id": 230, + "rank": 29 + }, + { + "title": "Combination Sum", + "id": 39, + "rank": 30 + }, + { + "title": "3Sum", + "id": 15, + "rank": 31 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 32 + }, + { + "title": "Squares of a Sorted Array", + "id": 1019, + "rank": 33 + }, + { + "title": "Binary Tree Level Order Traversal", + "id": 102, + "rank": 34 + }, + { + "title": "Merge Sorted Array", + "id": 88, + "rank": 35 + }, + { + "title": "Validate Binary Search Tree", + "id": 98, + "rank": 36 + }, + { + "title": "Reverse Linked List", + "id": 206, + "rank": 37 + }, + { + "title": "Merge Two Sorted Lists", + "id": 21, + "rank": 38 + }, + { + "title": "Add Two Numbers", + "id": 2, + "rank": 39 + }, + { + "title": "Reverse Words in a String", + "id": 151, + "rank": 40 + }, + { + "title": "Top K Frequent Elements", + "id": 347, + "rank": 41 + } + ], + "Sap": [ + { + "title": "Maximum Students Taking Exam", + "id": 1471, + "rank": 1 + }, + { + "title": "Monotone Increasing Digits", + "id": 738, + "rank": 2 + }, + { + "title": "Find the Smallest Divisor Given a Threshold", + "id": 1408, + "rank": 3 + }, + { + "title": "Fibonacci Number", + "id": 1013, + "rank": 4 + }, + { + "title": "String to Integer (atoi)", + "id": 8, + "rank": 5 + }, + { + "title": "Minimum Size Subarray Sum", + "id": 209, + "rank": 6 + }, + { + "title": "Coin Change", + "id": 322, + "rank": 7 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 8 + }, + { + "title": "Longest Palindromic Substring", + "id": 5, + "rank": 9 + }, + { + "title": "Best Time to Buy and Sell Stock", + "id": 121, + "rank": 10 + } + ], + "Yandex": [ + { + "title": "Zigzag Iterator", + "id": 281, + "rank": 1 + }, + { + "title": "Max Consecutive Ones II", + "id": 487, + "rank": 2 + }, + { + "title": "Move Zeroes", + "id": 283, + "rank": 3 + }, + { + "title": "Valid Palindrome", + "id": 125, + "rank": 4 + }, + { + "title": "Number of Recent Calls", + "id": 969, + "rank": 5 + }, + { + "title": "Max Consecutive Ones III", + "id": 1046, + "rank": 6 + }, + { + "title": "Insert Delete GetRandom O(1)", + "id": 380, + "rank": 7 + }, + { + "title": "Summary Ranges", + "id": 228, + "rank": 8 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 9 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 10 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 11 + }, + { + "title": "Generate Parentheses", + "id": 22, + "rank": 12 + }, + { + "title": "Validate Binary Search Tree", + "id": 98, + "rank": 13 + }, + { + "title": "Group Anagrams", + "id": 49, + "rank": 14 + }, + { + "title": "Reverse Linked List", + "id": 206, + "rank": 15 + }, + { + "title": "Permutation in String", + "id": 567, + "rank": 16 + }, + { + "title": "Evaluate Reverse Polish Notation", + "id": 150, + "rank": 17 + }, + { + "title": "String Compression", + "id": 443, + "rank": 18 + }, + { + "title": "Reconstruct Itinerary", + "id": 332, + "rank": 19 + }, + { + "title": "Perfect Squares", + "id": 279, + "rank": 20 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 21 + }, + { + "title": "Merge Two Sorted Lists", + "id": 21, + "rank": 22 + }, + { + "title": "Merge Sorted Array", + "id": 88, + "rank": 23 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 24 + }, + { + "title": "Intersection of Two Arrays II", + "id": 350, + "rank": 25 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 26 + }, + { + "title": "Subarray Sum Equals K", + "id": 560, + "rank": 27 + }, + { + "title": "Symmetric Tree", + "id": 101, + "rank": 28 + }, + { + "title": "Search in Rotated Sorted Array", + "id": 33, + "rank": 29 + } + ], + "Twitter": [ + { + "title": "Paint House", + "id": 256, + "rank": 1 + }, + { + "title": "Design Log Storage System", + "id": 635, + "rank": 2 + }, + { + "title": "Insert Interval", + "id": 57, + "rank": 3 + }, + { + "title": "K-diff Pairs in an Array", + "id": 532, + "rank": 4 + }, + { + "title": "Palindromic Substrings", + "id": 647, + "rank": 5 + }, + { + "title": "Range Sum Query - Mutable", + "id": 307, + "rank": 6 + }, + { + "title": "Flatten Nested List Iterator", + "id": 341, + "rank": 7 + }, + { + "title": "Max Stack", + "id": 716, + "rank": 8 + }, + { + "title": "One Edit Distance", + "id": 161, + "rank": 9 + }, + { + "title": "Random Pick with Weight", + "id": 912, + "rank": 10 + }, + { + "title": "Time Based Key-Value Store", + "id": 1023, + "rank": 11 + }, + { + "title": "Single Element in a Sorted Array", + "id": 540, + "rank": 12 + }, + { + "title": "Sliding Window Maximum", + "id": 239, + "rank": 13 + }, + { + "title": "Design HashMap", + "id": 817, + "rank": 14 + }, + { + "title": "Reorganize String", + "id": 778, + "rank": 15 + }, + { + "title": "Alien Dictionary", + "id": 269, + "rank": 16 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 17 + }, + { + "title": "Regular Expression Matching", + "id": 10, + "rank": 18 + }, + { + "title": "Construct Binary Tree from Preorder and Inorder Traversal", + "id": 105, + "rank": 19 + }, + { + "title": "Word Break", + "id": 139, + "rank": 20 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 21 + }, + { + "title": "Course Schedule II", + "id": 210, + "rank": 22 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 23 + } + ], + "Audible": [ + { + "title": "Missing Number In Arithmetic Progression", + "id": 1164, + "rank": 1 + }, + { + "title": "Boundary of Binary Tree", + "id": 545, + "rank": 2 + }, + { + "title": "Concatenated Words", + "id": 472, + "rank": 3 + }, + { + "title": "Word Break II", + "id": 140, + "rank": 4 + }, + { + "title": "Set Matrix Zeroes", + "id": 73, + "rank": 5 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 6 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 7 + }, + { + "title": "Word Break", + "id": 139, + "rank": 8 + }, + { + "title": "Best Time to Buy and Sell Stock", + "id": 121, + "rank": 9 + } + ], + "Factset": [ + { + "title": "Excel Sheet Column Title", + "id": 168, + "rank": 1 + }, + { + "title": "Boats to Save People", + "id": 917, + "rank": 2 + }, + { + "title": "Excel Sheet Column Number", + "id": 171, + "rank": 3 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 4 + } + ], + "Tableau": [ + { + "title": "Product of Array Except Self", + "id": 238, + "rank": 1 + }, + { + "title": "The Skyline Problem", + "id": 218, + "rank": 2 + }, + { + "title": "Design HashMap", + "id": 817, + "rank": 3 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 4 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 5 + } + ], + "Groupon": [ + { + "title": "Min Stack", + "id": 155, + "rank": 1 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 2 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 3 + } + ], + "Citadel": [ + { + "title": "Inorder Successor in BST", + "id": 285, + "rank": 1 + }, + { + "title": "Different Ways to Add Parentheses", + "id": 241, + "rank": 2 + }, + { + "title": "Palindromic Substrings", + "id": 647, + "rank": 3 + }, + { + "title": "Knight Dialer", + "id": 972, + "rank": 4 + }, + { + "title": "Longest Valid Parentheses", + "id": 32, + "rank": 5 + }, + { + "title": "Reconstruct Itinerary", + "id": 332, + "rank": 6 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 7 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 8 + }, + { + "title": "Maximal Square", + "id": 221, + "rank": 9 + }, + { + "title": "Sliding Window Maximum", + "id": 239, + "rank": 10 + }, + { + "title": "Search a 2D Matrix II", + "id": 240, + "rank": 11 + }, + { + "title": "Maximum Product of Three Numbers", + "id": 628, + "rank": 12 + }, + { + "title": "Implement Stack using Queues", + "id": 225, + "rank": 13 + }, + { + "title": "Longest Substring with At Most K Distinct Characters", + "id": 340, + "rank": 14 + }, + { + "title": "Maximal Rectangle", + "id": 85, + "rank": 15 + }, + { + "title": "Implement Queue using Stacks", + "id": 232, + "rank": 16 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 17 + }, + { + "title": "Word Search II", + "id": 212, + "rank": 18 + }, + { + "title": "Meeting Rooms II", + "id": 253, + "rank": 19 + }, + { + "title": "Serialize and Deserialize Binary Tree", + "id": 297, + "rank": 20 + }, + { + "title": "3Sum", + "id": 15, + "rank": 21 + }, + { + "title": "Best Time to Buy and Sell Stock", + "id": 121, + "rank": 22 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 23 + }, + { + "title": "Maximum Subarray", + "id": 53, + "rank": 24 + }, + { + "title": "Climbing Stairs", + "id": 70, + "rank": 25 + } + ], + "Goldman-sachs": [ + { + "title": "Game of Life", + "id": 289, + "rank": 1 + }, + { + "title": "High Five", + "id": 1074, + "rank": 2 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 3 + }, + { + "title": "Minimum Size Subarray Sum", + "id": 209, + "rank": 4 + }, + { + "title": "Fraction to Recurring Decimal", + "id": 166, + "rank": 5 + }, + { + "title": "First Unique Character in a String", + "id": 387, + "rank": 6 + }, + { + "title": "Product of Array Except Self", + "id": 238, + "rank": 7 + }, + { + "title": "Median of Two Sorted Arrays", + "id": 4, + "rank": 8 + }, + { + "title": "String Compression", + "id": 443, + "rank": 9 + }, + { + "title": "Longest Word in Dictionary through Deleting", + "id": 524, + "rank": 10 + }, + { + "title": "Fraction Addition and Subtraction", + "id": 592, + "rank": 11 + }, + { + "title": "Group Anagrams", + "id": 49, + "rank": 12 + }, + { + "title": "Minimum Path Sum", + "id": 64, + "rank": 13 + }, + { + "title": "K-diff Pairs in an Array", + "id": 532, + "rank": 14 + }, + { + "title": "Design HashMap", + "id": 817, + "rank": 15 + }, + { + "title": "Knight Probability in Chessboard", + "id": 688, + "rank": 16 + }, + { + "title": "Best Time to Buy and Sell Stock", + "id": 121, + "rank": 17 + }, + { + "title": "Spiral Matrix", + "id": 54, + "rank": 18 + }, + { + "title": "Power of Three", + "id": 326, + "rank": 19 + }, + { + "title": "DI String Match", + "id": 979, + "rank": 20 + }, + { + "title": "String to Integer (atoi)", + "id": 8, + "rank": 21 + }, + { + "title": "Height Checker", + "id": 1137, + "rank": 22 + }, + { + "title": "LFU Cache", + "id": 460, + "rank": 23 + }, + { + "title": "Search in Rotated Sorted Array", + "id": 33, + "rank": 24 + }, + { + "title": "Container With Most Water", + "id": 11, + "rank": 25 + }, + { + "title": "Design In-Memory File System", + "id": 588, + "rank": 26 + }, + { + "title": "Count Number of Teams", + "id": 1511, + "rank": 27 + }, + { + "title": "Minimum Window Substring", + "id": 76, + "rank": 28 + }, + { + "title": "Find Pivot Index", + "id": 724, + "rank": 29 + }, + { + "title": "Reconstruct Itinerary", + "id": 332, + "rank": 30 + }, + { + "title": "Decode Ways", + "id": 91, + "rank": 31 + }, + { + "title": "Recover Binary Search Tree", + "id": 99, + "rank": 32 + }, + { + "title": "Subarray Sum Equals K", + "id": 560, + "rank": 33 + }, + { + "title": "Coin Change", + "id": 322, + "rank": 34 + }, + { + "title": "Pascal's Triangle II", + "id": 119, + "rank": 35 + }, + { + "title": "Find Minimum in Rotated Sorted Array", + "id": 153, + "rank": 36 + }, + { + "title": "Longest Word in Dictionary", + "id": 720, + "rank": 37 + }, + { + "title": "Path with Maximum Gold", + "id": 1331, + "rank": 38 + }, + { + "title": "Palindromic Substrings", + "id": 647, + "rank": 39 + }, + { + "title": "Cousins in Binary Tree", + "id": 1035, + "rank": 40 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 41 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 42 + }, + { + "title": "Unique Paths", + "id": 62, + "rank": 43 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 44 + }, + { + "title": "The Skyline Problem", + "id": 218, + "rank": 45 + }, + { + "title": "Rectangle Overlap", + "id": 866, + "rank": 46 + }, + { + "title": "Remove All Adjacent Duplicates in String II", + "id": 1320, + "rank": 47 + }, + { + "title": "Remove Nth Node From End of List", + "id": 19, + "rank": 48 + }, + { + "title": "Min Stack", + "id": 155, + "rank": 49 + }, + { + "title": "Reverse Linked List", + "id": 206, + "rank": 50 + } + ], + "Twilio": [ + { + "title": "Subarray Sums Divisible by K", + "id": 1016, + "rank": 1 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 2 + }, + { + "title": "Text Justification", + "id": 68, + "rank": 3 + }, + { + "title": "Reconstruct Itinerary", + "id": 332, + "rank": 4 + }, + { + "title": "Knight Dialer", + "id": 972, + "rank": 5 + }, + { + "title": "Subarray Sum Equals K", + "id": 560, + "rank": 6 + }, + { + "title": "Longest Common Prefix", + "id": 14, + "rank": 7 + } + ], + "Cloudera": [ + { + "title": "Design Circular Queue", + "id": 860, + "rank": 1 + }, + { + "title": "Nested List Weight Sum", + "id": 339, + "rank": 2 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 3 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 4 + } + ], + "Servicenow": [ + { + "title": "Two Sum IV - Input is a BST", + "id": 653, + "rank": 1 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 2 + }, + { + "title": "Convert Binary Number in a Linked List to Integer", + "id": 1411, + "rank": 3 + }, + { + "title": "Add Two Numbers", + "id": 2, + "rank": 4 + }, + { + "title": "Word Ladder", + "id": 127, + "rank": 5 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 6 + }, + { + "title": "Letter Combinations of a Phone Number", + "id": 17, + "rank": 7 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 8 + }, + { + "title": "First Unique Character in a String", + "id": 387, + "rank": 9 + }, + { + "title": "Product of Array Except Self", + "id": 238, + "rank": 10 + }, + { + "title": "Group Anagrams", + "id": 49, + "rank": 11 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 12 + }, + { + "title": "Reverse String", + "id": 344, + "rank": 13 + }, + { + "title": "Longest Palindromic Substring", + "id": 5, + "rank": 14 + }, + { + "title": "3Sum", + "id": 15, + "rank": 15 + }, + { + "title": "Remove Duplicates from Sorted Array", + "id": 26, + "rank": 16 + } + ], + "Indeed": [ + { + "title": "Subdomain Visit Count", + "id": 829, + "rank": 1 + }, + { + "title": "Basic Calculator", + "id": 224, + "rank": 2 + }, + { + "title": "Maximum Length of Repeated Subarray", + "id": 718, + "rank": 3 + }, + { + "title": "Text Justification", + "id": 68, + "rank": 4 + }, + { + "title": "Design Hit Counter", + "id": 362, + "rank": 5 + }, + { + "title": "Basic Calculator II", + "id": 227, + "rank": 6 + }, + { + "title": "Longest Common Subsequence", + "id": 1250, + "rank": 7 + } + ], + "Didi": [ + { + "title": "Nested List Weight Sum II", + "id": 364, + "rank": 1 + }, + { + "title": "Generate a String With Characters That Have Odd Counts", + "id": 1490, + "rank": 2 + }, + { + "title": "Remove K Digits", + "id": 402, + "rank": 3 + } + ], + "Mathworks": [ + { + "title": "Verify Preorder Sequence in Binary Search Tree", + "id": 255, + "rank": 1 + }, + { + "title": "Shortest Distance from All Buildings", + "id": 317, + "rank": 2 + }, + { + "title": "Reverse Nodes in k-Group", + "id": 25, + "rank": 3 + }, + { + "title": "Keyboard Row", + "id": 500, + "rank": 4 + }, + { + "title": "Beautiful Arrangement", + "id": 526, + "rank": 5 + }, + { + "title": "Reverse Linked List", + "id": 206, + "rank": 6 + }, + { + "title": "Degree of an Array", + "id": 697, + "rank": 7 + }, + { + "title": "Distinct Subsequences", + "id": 115, + "rank": 8 + }, + { + "title": "Implement Queue using Stacks", + "id": 232, + "rank": 9 + }, + { + "title": "Unique Paths II", + "id": 63, + "rank": 10 + }, + { + "title": "Unique Paths", + "id": 62, + "rank": 11 + }, + { + "title": "Counting Bits", + "id": 338, + "rank": 12 + }, + { + "title": "Group Anagrams", + "id": 49, + "rank": 13 + }, + { + "title": "Implement Stack using Queues", + "id": 225, + "rank": 14 + }, + { + "title": "Palindromic Substrings", + "id": 647, + "rank": 15 + }, + { + "title": "3Sum", + "id": 15, + "rank": 16 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 17 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 18 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 19 + } + ], + "Jpmorgan": [ + { + "title": "Happy Number", + "id": 202, + "rank": 1 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 2 + }, + { + "title": "Best Time to Buy and Sell Stock", + "id": 121, + "rank": 3 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 4 + }, + { + "title": "Kth Largest Element in an Array", + "id": 215, + "rank": 5 + }, + { + "title": "Maximum Subarray", + "id": 53, + "rank": 6 + } + ], + "Cisco": [ + { + "title": "Convert Binary Number in a Linked List to Integer", + "id": 1411, + "rank": 1 + }, + { + "title": "Decode String", + "id": 394, + "rank": 2 + }, + { + "title": "House Robber", + "id": 198, + "rank": 3 + }, + { + "title": "Longest Palindromic Substring", + "id": 5, + "rank": 4 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 5 + }, + { + "title": "Different Ways to Add Parentheses", + "id": 241, + "rank": 6 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 7 + }, + { + "title": "Decode Ways", + "id": 91, + "rank": 8 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 9 + }, + { + "title": "Strobogrammatic Number", + "id": 246, + "rank": 10 + }, + { + "title": "Maximum Subarray", + "id": 53, + "rank": 11 + }, + { + "title": "Reverse Nodes in k-Group", + "id": 25, + "rank": 12 + }, + { + "title": "Delete Node in a BST", + "id": 450, + "rank": 13 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 14 + }, + { + "title": "Number of 1 Bits", + "id": 191, + "rank": 15 + }, + { + "title": "Rotate Image", + "id": 48, + "rank": 16 + }, + { + "title": "Palindrome Linked List", + "id": 234, + "rank": 17 + }, + { + "title": "Daily Temperatures", + "id": 739, + "rank": 18 + }, + { + "title": "Word Search II", + "id": 212, + "rank": 19 + }, + { + "title": "Generate Parentheses", + "id": 22, + "rank": 20 + }, + { + "title": "Perfect Squares", + "id": 279, + "rank": 21 + }, + { + "title": "Group Anagrams", + "id": 49, + "rank": 22 + }, + { + "title": "Binary Tree Level Order Traversal", + "id": 102, + "rank": 23 + }, + { + "title": "Longest Common Prefix", + "id": 14, + "rank": 24 + }, + { + "title": "Merge Sorted Array", + "id": 88, + "rank": 25 + }, + { + "title": "Spiral Matrix", + "id": 54, + "rank": 26 + }, + { + "title": "Convert Sorted Array to Binary Search Tree", + "id": 108, + "rank": 27 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 28 + }, + { + "title": "Course Schedule", + "id": 207, + "rank": 29 + }, + { + "title": "Valid Palindrome", + "id": 125, + "rank": 30 + }, + { + "title": "String to Integer (atoi)", + "id": 8, + "rank": 31 + }, + { + "title": "Reverse String", + "id": 344, + "rank": 32 + }, + { + "title": "Merge Two Sorted Lists", + "id": 21, + "rank": 33 + }, + { + "title": "Add Two Numbers", + "id": 2, + "rank": 34 + } + ], + "Quora": [ + { + "title": "Contiguous Array", + "id": 525, + "rank": 1 + }, + { + "title": "Diagonal Traverse", + "id": 498, + "rank": 2 + }, + { + "title": "Path Sum III", + "id": 437, + "rank": 3 + }, + { + "title": "Elimination Game", + "id": 390, + "rank": 4 + }, + { + "title": "Sort the Matrix Diagonally", + "id": 1253, + "rank": 5 + }, + { + "title": "Minimum Number of Arrows to Burst Balloons", + "id": 452, + "rank": 6 + }, + { + "title": "Serialize and Deserialize Binary Tree", + "id": 297, + "rank": 7 + }, + { + "title": "Path Sum II", + "id": 113, + "rank": 8 + }, + { + "title": "Meeting Rooms II", + "id": 253, + "rank": 9 + }, + { + "title": "Rotate Image", + "id": 48, + "rank": 10 + }, + { + "title": "Insert Delete GetRandom O(1)", + "id": 380, + "rank": 11 + }, + { + "title": "Find Peak Element", + "id": 162, + "rank": 12 + }, + { + "title": "Subarray Sum Equals K", + "id": 560, + "rank": 13 + } + ], + "Yelp": [ + { + "title": "Design Twitter", + "id": 355, + "rank": 1 + }, + { + "title": "Top K Frequent Words", + "id": 692, + "rank": 2 + }, + { + "title": "Random Pick with Weight", + "id": 912, + "rank": 3 + }, + { + "title": "Top K Frequent Elements", + "id": 347, + "rank": 4 + } + ], + "Nvidia": [ + { + "title": "Power of Two", + "id": 231, + "rank": 1 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 2 + }, + { + "title": "Reverse Linked List", + "id": 206, + "rank": 3 + }, + { + "title": "Flatten Binary Tree to Linked List", + "id": 114, + "rank": 4 + }, + { + "title": "Binary Tree Right Side View", + "id": 199, + "rank": 5 + }, + { + "title": "Generate Parentheses", + "id": 22, + "rank": 6 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 7 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 8 + }, + { + "title": "Search in Rotated Sorted Array", + "id": 33, + "rank": 9 + } + ], + "Roblox": [ + { + "title": "Subdomain Visit Count", + "id": 829, + "rank": 1 + }, + { + "title": "Basic Calculator", + "id": 224, + "rank": 2 + }, + { + "title": "Maximum Number of Occurrences of a Substring", + "id": 1423, + "rank": 3 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 4 + }, + { + "title": "Sliding Window Maximum", + "id": 239, + "rank": 5 + }, + { + "title": "Convert Binary Number in a Linked List to Integer", + "id": 1411, + "rank": 6 + }, + { + "title": "Sudoku Solver", + "id": 37, + "rank": 7 + }, + { + "title": "Valid Sudoku", + "id": 36, + "rank": 8 + }, + { + "title": "Palindromic Substrings", + "id": 647, + "rank": 9 + }, + { + "title": "Letter Combinations of a Phone Number", + "id": 17, + "rank": 10 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 11 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 12 + } + ], + "Splunk": [ + { + "title": "Diagonal Traverse", + "id": 498, + "rank": 1 + }, + { + "title": "Surrounded Regions", + "id": 130, + "rank": 2 + }, + { + "title": "Lowest Common Ancestor of a Binary Tree", + "id": 236, + "rank": 3 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 4 + }, + { + "title": "Product of Array Except Self", + "id": 238, + "rank": 5 + }, + { + "title": "Squares of a Sorted Array", + "id": 1019, + "rank": 6 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 7 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 8 + } + ], + "Qualcomm": [ + { + "title": "Intersection of Two Linked Lists", + "id": 160, + "rank": 1 + }, + { + "title": "Number of 1 Bits", + "id": 191, + "rank": 2 + }, + { + "title": "Delete Node in a Linked List", + "id": 237, + "rank": 3 + }, + { + "title": "Reverse Linked List", + "id": 206, + "rank": 4 + }, + { + "title": "Two Sum", + "id": 1, + "rank": 5 + }, + { + "title": "Add Two Numbers", + "id": 2, + "rank": 6 + }, + { + "title": "Reverse Words in a String", + "id": 151, + "rank": 7 + } + ], + "Box": [ + { + "title": "Univalued Binary Tree", + "id": 1005, + "rank": 1 + }, + { + "title": "Count Univalue Subtrees", + "id": 250, + "rank": 2 + }, + { + "title": "Number of 1 Bits", + "id": 191, + "rank": 3 + }, + { + "title": "Text Justification", + "id": 68, + "rank": 4 + }, + { + "title": "Word Ladder II", + "id": 126, + "rank": 5 + } + ], + "Dropbox": [ + { + "title": "Find Duplicate File in System", + "id": 609, + "rank": 1 + }, + { + "title": "Game of Life", + "id": 289, + "rank": 2 + }, + { + "title": "Design Phone Directory", + "id": 379, + "rank": 3 + }, + { + "title": "Design Search Autocomplete System", + "id": 642, + "rank": 4 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 5 + }, + { + "title": "Design Hit Counter", + "id": 362, + "rank": 6 + } + ], + "Blackrock": [ + { + "title": "Coin Change", + "id": 322, + "rank": 1 + }, + { + "title": "Integer to Roman", + "id": 12, + "rank": 2 + }, + { + "title": "Best Time to Buy and Sell Stock", + "id": 121, + "rank": 3 + } + ], + "Airbnb": [ + { + "title": "Pour Water", + "id": 756, + "rank": 1 + }, + { + "title": "Palindrome Pairs", + "id": 336, + "rank": 2 + }, + { + "title": "Fraction to Recurring Decimal", + "id": 166, + "rank": 3 + }, + { + "title": "Alien Dictionary", + "id": 269, + "rank": 4 + }, + { + "title": "Flatten 2D Vector", + "id": 251, + "rank": 5 + }, + { + "title": "Smallest Common Region", + "id": 1190, + "rank": 6 + }, + { + "title": "Text Justification", + "id": 68, + "rank": 7 + }, + { + "title": "Combination Sum", + "id": 39, + "rank": 8 + }, + { + "title": "Wiggle Sort II", + "id": 324, + "rank": 9 + }, + { + "title": "Wiggle Sort", + "id": 280, + "rank": 10 + }, + { + "title": "Coin Change", + "id": 322, + "rank": 11 + }, + { + "title": "Flatten Nested List Iterator", + "id": 341, + "rank": 12 + }, + { + "title": "Lowest Common Ancestor of a Binary Tree", + "id": 236, + "rank": 13 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 14 + } + ], + "Redfin": [ + { + "title": "Maximum Product of Three Numbers", + "id": 628, + "rank": 1 + }, + { + "title": "Intersection of Two Linked Lists", + "id": 160, + "rank": 2 + } + ], + "Flipkart": [ + { + "title": "Largest Rectangle in Histogram", + "id": 84, + "rank": 1 + }, + { + "title": "Alien Dictionary", + "id": 269, + "rank": 2 + }, + { + "title": "Rotting Oranges", + "id": 1036, + "rank": 3 + }, + { + "title": "Min Stack", + "id": 155, + "rank": 4 + } + ], + "Docusign": [ + { + "title": "Reverse Linked List II", + "id": 92, + "rank": 1 + }, + { + "title": "Simplify Path", + "id": 71, + "rank": 2 + }, + { + "title": "Group Anagrams", + "id": 49, + "rank": 3 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 4 + }, + { + "title": "Set Matrix Zeroes", + "id": 73, + "rank": 5 + }, + { + "title": "Valid Anagram", + "id": 242, + "rank": 6 + }, + { + "title": "Add Two Numbers", + "id": 2, + "rank": 7 + }, + { + "title": "Word Search", + "id": 79, + "rank": 8 + }, + { + "title": "Reverse Linked List", + "id": 206, + "rank": 9 + } + ], + "Grab": [ + { + "title": "Palindrome Linked List", + "id": 234, + "rank": 1 + } + ], + "Capital-one": [ + { + "title": "Summary Ranges", + "id": 228, + "rank": 1 + }, + { + "title": "Binary Tree Pruning", + "id": 832, + "rank": 2 + }, + { + "title": "Odd Even Linked List", + "id": 328, + "rank": 3 + }, + { + "title": "Word Pattern", + "id": 290, + "rank": 4 + }, + { + "title": "Coin Change", + "id": 322, + "rank": 5 + }, + { + "title": "Copy List with Random Pointer", + "id": 138, + "rank": 6 + }, + { + "title": "Greatest Common Divisor of Strings", + "id": 1146, + "rank": 7 + }, + { + "title": "Count Primes", + "id": 204, + "rank": 8 + }, + { + "title": "Fizz Buzz", + "id": 412, + "rank": 9 + }, + { + "title": "Maximum Subarray", + "id": 53, + "rank": 10 + }, + { + "title": "Plus One", + "id": 66, + "rank": 11 + }, + { + "title": "Add Two Numbers", + "id": 2, + "rank": 12 + }, + { + "title": "Remove Linked List Elements", + "id": 203, + "rank": 13 + } + ], + "Coupang": [ + { + "title": "Divide Array in Sets of K Consecutive Numbers", + "id": 1422, + "rank": 1 + }, + { + "title": "Flatten Binary Tree to Linked List", + "id": 114, + "rank": 2 + }, + { + "title": "Word Search", + "id": 79, + "rank": 3 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 4 + } + ], + "Twitch": [ + { + "title": "Max Area of Island", + "id": 695, + "rank": 1 + }, + { + "title": "Candy Crush", + "id": 723, + "rank": 2 + }, + { + "title": "Squares of a Sorted Array", + "id": 1019, + "rank": 3 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 4 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 5 + } + ], + "Atlassian": [ + { + "title": "Find Leaves of Binary Tree", + "id": 366, + "rank": 1 + }, + { + "title": "Lemonade Change", + "id": 890, + "rank": 2 + }, + { + "title": "Design Hit Counter", + "id": 362, + "rank": 3 + }, + { + "title": "Time Based Key-Value Store", + "id": 1023, + "rank": 4 + }, + { + "title": "Greatest Common Divisor of Strings", + "id": 1146, + "rank": 5 + }, + { + "title": "Letter Combinations of a Phone Number", + "id": 17, + "rank": 6 + }, + { + "title": "Rank Teams by Votes", + "id": 1483, + "rank": 7 + }, + { + "title": "Design HashMap", + "id": 817, + "rank": 8 + }, + { + "title": "Logger Rate Limiter", + "id": 359, + "rank": 9 + }, + { + "title": "Evaluate Reverse Polish Notation", + "id": 150, + "rank": 10 + }, + { + "title": "Peeking Iterator", + "id": 284, + "rank": 11 + }, + { + "title": "Validate Binary Search Tree", + "id": 98, + "rank": 12 + }, + { + "title": "Single Element in a Sorted Array", + "id": 540, + "rank": 13 + }, + { + "title": "Leaf-Similar Trees", + "id": 904, + "rank": 14 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 15 + }, + { + "title": "Insert into a Binary Search Tree", + "id": 784, + "rank": 16 + }, + { + "title": "Random Pick with Weight", + "id": 912, + "rank": 17 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 18 + }, + { + "title": "Best Time to Buy and Sell Stock III", + "id": 123, + "rank": 19 + }, + { + "title": "Palindromic Substrings", + "id": 647, + "rank": 20 + }, + { + "title": "Permutations", + "id": 46, + "rank": 21 + }, + { + "title": "Binary Search Tree Iterator", + "id": 173, + "rank": 22 + }, + { + "title": "Decode String", + "id": 394, + "rank": 23 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 24 + }, + { + "title": "Diameter of Binary Tree", + "id": 543, + "rank": 25 + }, + { + "title": "Lowest Common Ancestor of a Binary Tree", + "id": 236, + "rank": 26 + }, + { + "title": "Generate Parentheses", + "id": 22, + "rank": 27 + }, + { + "title": "Subsets", + "id": 78, + "rank": 28 + }, + { + "title": "Binary Tree Level Order Traversal", + "id": 102, + "rank": 29 + }, + { + "title": "Longest Substring Without Repeating Characters", + "id": 3, + "rank": 30 + }, + { + "title": "Symmetric Tree", + "id": 101, + "rank": 31 + }, + { + "title": "Maximum Subarray", + "id": 53, + "rank": 32 + }, + { + "title": "Best Time to Buy and Sell Stock", + "id": 121, + "rank": 33 + } + ], + "Two-sigma": [ + { + "title": "Best Time to Buy and Sell Stock III", + "id": 123, + "rank": 1 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 2 + }, + { + "title": "Random Pick with Weight", + "id": 912, + "rank": 3 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 4 + } + ], + "Zulily": [ + { + "title": "Alphabet Board Path", + "id": 1238, + "rank": 1 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 2 + }, + { + "title": "Valid Anagram", + "id": 242, + "rank": 3 + }, + { + "title": "Median of Two Sorted Arrays", + "id": 4, + "rank": 4 + } + ], + "Houzz": [ + { + "title": "Basic Calculator II", + "id": 227, + "rank": 1 + }, + { + "title": "Accounts Merge", + "id": 721, + "rank": 2 + }, + { + "title": "Range Sum Query 2D - Immutable", + "id": 304, + "rank": 3 + }, + { + "title": "Multiply Strings", + "id": 43, + "rank": 4 + } + ], + "Nutanix": [ + { + "title": "Broken Calculator", + "id": 1033, + "rank": 1 + }, + { + "title": "Jump Game II", + "id": 45, + "rank": 2 + }, + { + "title": "Frog Jump", + "id": 403, + "rank": 3 + }, + { + "title": "Integer to English Words", + "id": 273, + "rank": 4 + }, + { + "title": "Meeting Rooms II", + "id": 253, + "rank": 5 + }, + { + "title": "Letter Combinations of a Phone Number", + "id": 17, + "rank": 6 + }, + { + "title": "Kth Largest Element in a Stream", + "id": 789, + "rank": 7 + }, + { + "title": "Jump Game", + "id": 55, + "rank": 8 + }, + { + "title": "Combination Sum II", + "id": 40, + "rank": 9 + }, + { + "title": "Longest Consecutive Sequence", + "id": 128, + "rank": 10 + }, + { + "title": "Product of Array Except Self", + "id": 238, + "rank": 11 + }, + { + "title": "Squares of a Sorted Array", + "id": 1019, + "rank": 12 + }, + { + "title": "Search in Rotated Sorted Array", + "id": 33, + "rank": 13 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 14 + }, + { + "title": "Palindrome Linked List", + "id": 234, + "rank": 15 + }, + { + "title": "Generate Parentheses", + "id": 22, + "rank": 16 + }, + { + "title": "Move Zeroes", + "id": 283, + "rank": 17 + }, + { + "title": "Longest Palindromic Substring", + "id": 5, + "rank": 18 + } + ], + "Wayfair": [ + { + "title": "Magic Squares In Grid", + "id": 870, + "rank": 1 + }, + { + "title": "Subdomain Visit Count", + "id": 829, + "rank": 2 + }, + { + "title": "Maximum Number of Balloons", + "id": 1297, + "rank": 3 + }, + { + "title": "Maximal Rectangle", + "id": 85, + "rank": 4 + }, + { + "title": "Maximum Length of Repeated Subarray", + "id": 718, + "rank": 5 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 6 + }, + { + "title": "Fizz Buzz", + "id": 412, + "rank": 7 + }, + { + "title": "Sqrt(x)", + "id": 69, + "rank": 8 + }, + { + "title": "Valid Palindrome", + "id": 125, + "rank": 9 + }, + { + "title": "Longest Palindromic Substring", + "id": 5, + "rank": 10 + }, + { + "title": "Course Schedule II", + "id": 210, + "rank": 11 + } + ], + "Pure-storage": [ + { + "title": "Valid Square", + "id": 593, + "rank": 1 + }, + { + "title": "Remove Linked List Elements", + "id": 203, + "rank": 2 + }, + { + "title": "Sort Colors", + "id": 75, + "rank": 3 + } + ], + "Appdynamics": [ + { + "title": "Moving Average from Data Stream", + "id": 346, + "rank": 1 + }, + { + "title": "Maximal Square", + "id": 221, + "rank": 2 + }, + { + "title": "Insert Delete GetRandom O(1)", + "id": 380, + "rank": 3 + } + ], + "Barclays": [ + { + "title": "Fibonacci Number", + "id": 1013, + "rank": 1 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 2 + } + ], + "Coursera": [ + { + "title": "Text Justification", + "id": 68, + "rank": 1 + }, + { + "title": "Regular Expression Matching", + "id": 10, + "rank": 2 + }, + { + "title": "Wildcard Matching", + "id": 44, + "rank": 3 + } + ], + "Databricks": [ + { + "title": "Binary Tree Vertical Order Traversal", + "id": 314, + "rank": 1 + }, + { + "title": "Insert Delete GetRandom O(1)", + "id": 380, + "rank": 2 + }, + { + "title": "Closest Leaf in a Binary Tree", + "id": 743, + "rank": 3 + }, + { + "title": "First Missing Positive", + "id": 41, + "rank": 4 + }, + { + "title": "Sliding Window Maximum", + "id": 239, + "rank": 5 + }, + { + "title": "Decode Ways", + "id": 91, + "rank": 6 + }, + { + "title": "The Skyline Problem", + "id": 218, + "rank": 7 + }, + { + "title": "Vertical Order Traversal of a Binary Tree", + "id": 1029, + "rank": 8 + }, + { + "title": "Insert Delete GetRandom O(1) - Duplicates allowed", + "id": 381, + "rank": 9 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 10 + }, + { + "title": "Regular Expression Matching", + "id": 10, + "rank": 11 + }, + { + "title": "Flatten Binary Tree to Linked List", + "id": 114, + "rank": 12 + } + ], + "Palantir-technologies": [ + { + "title": "Minimum Time Difference", + "id": 539, + "rank": 1 + }, + { + "title": "UTF-8 Validation", + "id": 393, + "rank": 2 + }, + { + "title": "Find the Celebrity", + "id": 277, + "rank": 3 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 4 + }, + { + "title": "Max Area of Island", + "id": 695, + "rank": 5 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 6 + }, + { + "title": "Rotate Image", + "id": 48, + "rank": 7 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 8 + } + ], + "Pocket-gems": [ + { + "title": "Delete and Earn", + "id": 740, + "rank": 1 + }, + { + "title": "Pairs of Songs With Total Durations Divisible by 60", + "id": 1055, + "rank": 2 + }, + { + "title": "Find Leaves of Binary Tree", + "id": 366, + "rank": 3 + }, + { + "title": "Regular Expression Matching", + "id": 10, + "rank": 4 + } + ], + "Qualtrics": [ + { + "title": "Max Area of Island", + "id": 695, + "rank": 1 + }, + { + "title": "Word Ladder", + "id": 127, + "rank": 2 + }, + { + "title": "Trapping Rain Water", + "id": 42, + "rank": 3 + }, + { + "title": "My Calendar I", + "id": 729, + "rank": 4 + }, + { + "title": "Word Break", + "id": 139, + "rank": 5 + }, + { + "title": "Reconstruct Itinerary", + "id": 332, + "rank": 6 + }, + { + "title": "Copy List with Random Pointer", + "id": 138, + "rank": 7 + }, + { + "title": "Binary Tree Zigzag Level Order Traversal", + "id": 103, + "rank": 8 + }, + { + "title": "Binary Search Tree Iterator", + "id": 173, + "rank": 9 + }, + { + "title": "Palindrome Partitioning", + "id": 131, + "rank": 10 + }, + { + "title": "Reorganize String", + "id": 778, + "rank": 11 + }, + { + "title": "Product of Array Except Self", + "id": 238, + "rank": 12 + }, + { + "title": "Roman to Integer", + "id": 13, + "rank": 13 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 14 + }, + { + "title": "3Sum", + "id": 15, + "rank": 15 + } + ], + "Ixl": [ + { + "title": "Fraction to Recurring Decimal", + "id": 166, + "rank": 1 + }, + { + "title": "Stickers to Spell Word", + "id": 691, + "rank": 2 + }, + { + "title": "Fraction Addition and Subtraction", + "id": 592, + "rank": 3 + }, + { + "title": "Range Addition II", + "id": 598, + "rank": 4 + }, + { + "title": "Longest Common Prefix", + "id": 14, + "rank": 5 + }, + { + "title": "Palindrome Linked List", + "id": 234, + "rank": 6 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 7 + } + ], + "Pinterest": [ + { + "title": "Subdomain Visit Count", + "id": 829, + "rank": 1 + }, + { + "title": "Design Hit Counter", + "id": 362, + "rank": 2 + }, + { + "title": "Find the Celebrity", + "id": 277, + "rank": 3 + }, + { + "title": "Text Justification", + "id": 68, + "rank": 4 + }, + { + "title": "Partition to K Equal Sum Subsets", + "id": 698, + "rank": 5 + }, + { + "title": "Alien Dictionary", + "id": 269, + "rank": 6 + }, + { + "title": "Word Search", + "id": 79, + "rank": 7 + }, + { + "title": "Task Scheduler", + "id": 621, + "rank": 8 + } + ], + "Tesla": [ + { + "title": "Maximum Number of Balloons", + "id": 1297, + "rank": 1 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 2 + }, + { + "title": "Integer to English Words", + "id": 273, + "rank": 3 + }, + { + "title": "First Missing Positive", + "id": 41, + "rank": 4 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 5 + }, + { + "title": "Group Anagrams", + "id": 49, + "rank": 6 + }, + { + "title": "Search in Rotated Sorted Array", + "id": 33, + "rank": 7 + }, + { + "title": "Move Zeroes", + "id": 283, + "rank": 8 + } + ], + "Citrix": [ + { + "title": "Degree of an Array", + "id": 697, + "rank": 1 + }, + { + "title": "Pairs of Songs With Total Durations Divisible by 60", + "id": 1055, + "rank": 2 + }, + { + "title": "Reverse Linked List", + "id": 206, + "rank": 3 + }, + { + "title": "Meeting Rooms II", + "id": 253, + "rank": 4 + }, + { + "title": "3Sum", + "id": 15, + "rank": 5 + } + ], + "Doordash": [ + { + "title": "Max Area of Island", + "id": 695, + "rank": 1 + }, + { + "title": "Design Twitter", + "id": 355, + "rank": 2 + }, + { + "title": "Sudoku Solver", + "id": 37, + "rank": 3 + }, + { + "title": "Course Schedule II", + "id": 210, + "rank": 4 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 5 + }, + { + "title": "Basic Calculator II", + "id": 227, + "rank": 6 + }, + { + "title": "Valid Sudoku", + "id": 36, + "rank": 7 + }, + { + "title": "3Sum", + "id": 15, + "rank": 8 + }, + { + "title": "Best Time to Buy and Sell Stock", + "id": 121, + "rank": 9 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 10 + } + ], + "Square": [ + { + "title": "Palindrome Pairs", + "id": 336, + "rank": 1 + }, + { + "title": "Edit Distance", + "id": 72, + "rank": 2 + }, + { + "title": "Encode and Decode Strings", + "id": 271, + "rank": 3 + }, + { + "title": "Available Captures for Rook", + "id": 1041, + "rank": 4 + }, + { + "title": "Compare Version Numbers", + "id": 165, + "rank": 5 + }, + { + "title": "Integer to English Words", + "id": 273, + "rank": 6 + }, + { + "title": "Add Strings", + "id": 415, + "rank": 7 + }, + { + "title": "Reconstruct Itinerary", + "id": 332, + "rank": 8 + }, + { + "title": "Decode Ways", + "id": 91, + "rank": 9 + }, + { + "title": "Letter Combinations of a Phone Number", + "id": 17, + "rank": 10 + } + ], + "Akuna-capital": [ + { + "title": "Subarray Product Less Than K", + "id": 713, + "rank": 1 + }, + { + "title": "Maximum Product Subarray", + "id": 152, + "rank": 2 + }, + { + "title": "Rotate Image", + "id": 48, + "rank": 3 + } + ], + "Postmates": [ + { + "title": "Reverse Substrings Between Each Pair of Parentheses", + "id": 1298, + "rank": 1 + }, + { + "title": "Remove Invalid Parentheses", + "id": 301, + "rank": 2 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 3 + } + ], + "Quip": [ + { + "title": "Design Hit Counter", + "id": 362, + "rank": 1 + }, + { + "title": "Inorder Successor in BST", + "id": 285, + "rank": 2 + }, + { + "title": "Letter Combinations of a Phone Number", + "id": 17, + "rank": 3 + } + ], + "Netflix": [ + { + "title": "Time Based Key-Value Store", + "id": 1023, + "rank": 1 + }, + { + "title": "Design Hit Counter", + "id": 362, + "rank": 2 + }, + { + "title": "Min Stack", + "id": 155, + "rank": 3 + }, + { + "title": "Merge Intervals", + "id": 56, + "rank": 4 + } + ], + "Liveramp": [ + { + "title": "Minesweeper", + "id": 529, + "rank": 1 + }, + { + "title": "Valid Parentheses", + "id": 20, + "rank": 2 + } + ], + "Epic-systems": [ + { + "title": "Additive Number", + "id": 306, + "rank": 1 + }, + { + "title": "Spiral Matrix", + "id": 54, + "rank": 2 + } + ], + "Arista-networks": [ + { + "title": "Compare Version Numbers", + "id": 165, + "rank": 1 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 2 + } + ], + "Cruise-automation": [ + { + "title": "Minesweeper", + "id": 529, + "rank": 1 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 2 + }, + { + "title": "Range Sum Query 2D - Immutable", + "id": 304, + "rank": 3 + }, + { + "title": "Max Area of Island", + "id": 695, + "rank": 4 + }, + { + "title": "Number of Islands", + "id": 200, + "rank": 5 + }, + { + "title": "Unique Paths II", + "id": 63, + "rank": 6 + }, + { + "title": "Valid Sudoku", + "id": 36, + "rank": 7 + }, + { + "title": "Merge k Sorted Lists", + "id": 23, + "rank": 8 + }, + { + "title": "Word Search", + "id": 79, + "rank": 9 + } + ], + "Cohesity": [ + { + "title": "Minimum Window Substring", + "id": 76, + "rank": 1 + }, + { + "title": "Course Schedule", + "id": 207, + "rank": 2 + } + ], + "Hulu": [ + { + "title": "Power of Three", + "id": 326, + "rank": 1 + }, + { + "title": "Decode String", + "id": 394, + "rank": 2 + }, + { + "title": "Kth Smallest Element in a BST", + "id": 230, + "rank": 3 + }, + { + "title": "Word Break", + "id": 139, + "rank": 4 + }, + { + "title": "Group Anagrams", + "id": 49, + "rank": 5 + } + ], + "Tripadvisor": [ + { + "title": "Intersection of Three Sorted Arrays", + "id": 1149, + "rank": 1 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 2 + }, + { + "title": "Climbing Stairs", + "id": 70, + "rank": 3 + } + ], + "Reddit": [ + { + "title": "Game of Life", + "id": 289, + "rank": 1 + }, + { + "title": "Binary Tree Vertical Order Traversal", + "id": 314, + "rank": 2 + }, + { + "title": "Design HashMap", + "id": 817, + "rank": 3 + } + ], + "Electronic-arts": [ + { + "title": "Reverse Linked List", + "id": 206, + "rank": 1 + } + ], + "Asana": [ + { + "title": "Validate Binary Search Tree", + "id": 98, + "rank": 1 + }, + { + "title": "Product of Array Except Self", + "id": 238, + "rank": 2 + }, + { + "title": "K Closest Points to Origin", + "id": 1014, + "rank": 3 + }, + { + "title": "LRU Cache", + "id": 146, + "rank": 4 + }, + { + "title": "Maximum Subarray", + "id": 53, + "rank": 5 + } + ], + "Robinhood": [ + { + "title": "Sentence Screen Fitting", + "id": 418, + "rank": 1 + }, + { + "title": "Pour Water", + "id": 756, + "rank": 2 + }, + { + "title": "Basic Calculator", + "id": 224, + "rank": 3 + }, + { + "title": "Spiral Matrix", + "id": 54, + "rank": 4 + }, + { + "title": "Find All Anagrams in a String", + "id": 438, + "rank": 5 + } + ] +} \ No newline at end of file diff --git a/src/assets/images/badge.png b/src/assets/images/badge.png index 4e48b8a..5a41043 100644 Binary files a/src/assets/images/badge.png and b/src/assets/images/badge.png differ diff --git a/src/assets/images/check-icon.png b/src/assets/images/check-icon.png new file mode 100644 index 0000000..ec7a34c Binary files /dev/null and b/src/assets/images/check-icon.png differ diff --git a/src/assets/images/fix-icon.png b/src/assets/images/fix-icon.png deleted file mode 100644 index 9ab4617..0000000 Binary files a/src/assets/images/fix-icon.png and /dev/null differ diff --git a/src/assets/images/home-icon.png b/src/assets/images/home-icon.png deleted file mode 100644 index 0c31e9d..0000000 Binary files a/src/assets/images/home-icon.png and /dev/null differ diff --git a/src/assets/images/languages/cpp.svg b/src/assets/images/languages/cpp.svg new file mode 100644 index 0000000..8aa1304 --- /dev/null +++ b/src/assets/images/languages/cpp.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/images/languages/java.svg b/src/assets/images/languages/java.svg new file mode 100644 index 0000000..ed6f264 --- /dev/null +++ b/src/assets/images/languages/java.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/images/languages/javascript.svg b/src/assets/images/languages/javascript.svg new file mode 100644 index 0000000..9dc7cf5 --- /dev/null +++ b/src/assets/images/languages/javascript.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/images/languages/python.svg b/src/assets/images/languages/python.svg new file mode 100644 index 0000000..ee03a04 --- /dev/null +++ b/src/assets/images/languages/python.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/images/screenshots/elo-rating.png b/src/assets/images/screenshots/elo-rating.png new file mode 100644 index 0000000..3546f54 Binary files /dev/null and b/src/assets/images/screenshots/elo-rating.png differ diff --git a/src/assets/images/marquee-promo-tile.png b/src/assets/images/screenshots/marquee-promo-tile.png similarity index 100% rename from src/assets/images/marquee-promo-tile.png rename to src/assets/images/screenshots/marquee-promo-tile.png diff --git a/src/assets/images/screenshots/problems-by-company.png b/src/assets/images/screenshots/problems-by-company.png new file mode 100644 index 0000000..0d87e88 Binary files /dev/null and b/src/assets/images/screenshots/problems-by-company.png differ diff --git a/src/assets/images/screenshots/small-promo-tile-2.png b/src/assets/images/screenshots/small-promo-tile-2.png new file mode 100644 index 0000000..245b985 Binary files /dev/null and b/src/assets/images/screenshots/small-promo-tile-2.png differ diff --git a/src/assets/images/small-promo-tile.png b/src/assets/images/screenshots/small-promo-tile.png similarity index 100% rename from src/assets/images/small-promo-tile.png rename to src/assets/images/screenshots/small-promo-tile.png diff --git a/src/assets/images/settings-icon.png b/src/assets/images/settings-icon.png deleted file mode 100644 index e3200db..0000000 Binary files a/src/assets/images/settings-icon.png and /dev/null differ diff --git a/src/assets/images/solution-icon.png b/src/assets/images/solution-icon.png new file mode 100644 index 0000000..0292911 Binary files /dev/null and b/src/assets/images/solution-icon.png differ diff --git a/src/background/background.ts b/src/background/background.ts index c6f03e5..f3c1e2a 100644 --- a/src/background/background.ts +++ b/src/background/background.ts @@ -1,65 +1,81 @@ -import { getChatGPTAccessToken } from './chatgpt/chatgpt.js'; +// Helper function to get or create user ID +function getRandomToken(): string { + const randomPool = new Uint8Array(32); + crypto.getRandomValues(randomPool); + return Array.from(randomPool) + .map(b => b.toString(16).padStart(2, '0')) + .join(''); +} -// Runs when the extension is installed +// Load problem data & default settings on install chrome.runtime.onInstalled.addListener(() => { - const jsonUrl = chrome.runtime.getURL('src/assets/data/leetcode_solutions.json'); - fetch(jsonUrl) + // Generate and store user ID if it doesn't exist + chrome.storage.sync.get('userId', function (items) { + if (!items.userId) { + const userId = getRandomToken(); + chrome.storage.sync.set({ userId: userId }); + } + }); + + // Load JSON file of problem data into storage + const leetcodeProblems = chrome.runtime.getURL('src/assets/data/problem_data.json'); + fetch(leetcodeProblems) .then((response) => response.json()) .then((data) => { chrome.storage.local.set({ leetcodeProblems: data }); }) .catch((error) => { - console.error(error); + console.error('Failed to load problem data:', error); }); - // Default settings - chrome.storage.local.set({ language: 'python' }); - chrome.storage.local.set({ fontSize: 14 }); - chrome.storage.local.set({ showCompanyTags: true }); + // Load problems by company JSON file into storage + const companyProblems = chrome.runtime.getURL('src/assets/data/problems_by_company.json'); + fetch(companyProblems) + .then((response) => response.json()) + .then((data) => { + chrome.storage.local.set({ companyProblems: data }); + }) + .catch((error) => { + console.error('Failed to load company problems:', error); + }); + + // Load default settings + chrome.storage.local.set({ fontSize: 12 }); chrome.storage.local.set({ showExamples: true }); chrome.storage.local.set({ showDifficulty: true }); - chrome.storage.local.set({ clickedCompany: 'Amazon' }) + chrome.storage.local.set({ showCompanyTags: true }); + // Set default theme to auto mode and default to dark + chrome.storage.local.set({ isDarkTheme: true }); // Default to dark theme + chrome.storage.local.set({ themeMode: 'auto' }); }); -chrome.runtime.onMessage.addListener( - function (request, sender, sendResponse) { - if (request.action == "openSolutionVideo") { - chrome.tabs.query({ active: true, currentWindow: true }, (tabs) => { - let url = tabs[0].url; - if (url) { - // Remove /description/ if it exists - url = url.replace(/\/description\//, '/'); - // Ensure the URL ends with / - if (!url.endsWith('/')) { - url += '/'; - } - // Append solutions/ - const newUrl = url + 'solutions/'; - if (tabs.length > 0 && tabs[0].id) { - const tabId = tabs[0].id; - const updateProperties = { url: newUrl }; - chrome.tabs.update(tabId, updateProperties); - } - } - }); - sendResponse({ result: "Success" }); - } +chrome.runtime.onMessage.addListener((request) => { + // Direct path for settings updates + if (request.action === 'settingsUpdate') { + chrome.tabs.query({ active: true, currentWindow: true }, (tabs) => { + const tab = tabs[0]; + if (tab?.id && tab.url?.includes('leetcode.com/problems/')) { + chrome.tabs.sendMessage(tab.id, { + action: 'updateDescription', + title: tab.title || 'title', + isSettingsUpdate: true + }); + } + }); + return; } -); -chrome.runtime.onMessage.addListener((request, sender, sendResponse) => { - if (request.action === "openCompanyPage") { + // Existing message handlers + if (request.action === 'openCompanyPage') { chrome.storage.local.set({ clickedCompany: request.company }); chrome.tabs.create({ - url: chrome.runtime.getURL("src/popup/company.html"), - active: true + url: chrome.runtime.getURL('src/problems-by-company/company.html'), + active: true, }, function (tab) { - // Keep a reference to the listener so it can be removed later - let listener = function (tabId, changedProps) { - // When the tab is done loading - if (tabId == tab.id && changedProps.status == "complete") { + // Remove the listener once the tab is loaded + const listener = function (tabId: number, changedProps: any) { + if (tabId == tab.id && changedProps.status == 'complete') { chrome.tabs.sendMessage(tabId, request); - // Remove the listener once the tab is loaded chrome.tabs.onUpdated.removeListener(listener); } }; @@ -69,50 +85,133 @@ chrome.runtime.onMessage.addListener((request, sender, sendResponse) => { } }); -chrome.runtime.onMessage.addListener((request: any) => { - if (request.type === 'OPEN_LOGIN_PAGE') { - chrome.tabs.create({ url: 'https://chat.openai.com' }); - } -}); +// Keep track of the last state to avoid duplicate updates +let lastState = { + problemPath: '', + view: '', // 'problem' or 'solutions' or 'description' + lastPathname: '', // Track full pathname to detect real navigation + lastUrl: '', // Track full URL to detect refreshes + lastUpdateTime: 0, // Track time of last update to prevent rapid re-triggers + lastTabId: 0 // Track the last tab ID to help distinguish between refreshes and switches +}; -chrome.runtime.onMessage.addListener((request, sender, sendResponse) => { - if (request.type === 'GET_CHATGPT_ACCESS_TOKEN') { - getChatGPTAccessToken().then((accessToken) => { - sendResponse({ accessToken: accessToken }); - }); - return true; - } -}); +chrome.tabs.onUpdated.addListener((tabId, changeInfo, tab) => { + if (tab.url) { + const url = tab.url; + let problemUrl = /^https:\/\/leetcode\.com\/problems\/.*\/?/; + + // Check if this is a leetcode problem page + if (url.match(problemUrl)) { + // Extract the problem path from the URL and ensure it exists + const problemPathMatch = url.match(/\/problems\/([^/]+)/); + if (!problemPathMatch?.[1]) return; + const problemPath = problemPathMatch[1]; + const pathname = new URL(url).pathname; + + // More precise view detection + let currentView = 'problem'; // default to problem view + if (url.includes('/solutions')) { + currentView = 'solutions'; + } else if (url.includes('/description')) { + currentView = 'description'; + } + // Only trigger updates on actual page loads or problem changes + const isPageLoad = changeInfo.status === 'complete'; + const isProblemChange = problemPath !== lastState.problemPath; + const isViewChange = currentView !== lastState.view; + + // Check if this is a video navigation within solutions + const isInternalSolutionsNavigation = + currentView === 'solutions' && + lastState.view === 'solutions' && + problemPath === lastState.problemPath; + // Check if this is a navigation between description and editor + const isDescriptionEditorSwitch = + !isInternalSolutionsNavigation && + problemPath === lastState.problemPath && + ((currentView === 'problem' && lastState.view === 'description') || + (currentView === 'description' && lastState.view === 'problem')); + + // Detect actual page refresh with improved conditions + const isActualRefresh = + url === lastState.lastUrl && + isPageLoad && + changeInfo.url === undefined && + !isInternalSolutionsNavigation && + !isDescriptionEditorSwitch && + currentView === lastState.view && + tabId === lastState.lastTabId && // Same tab for refresh + Date.now() - lastState.lastUpdateTime > 1000; + + const isRealNavigation = + !isInternalSolutionsNavigation && + !isDescriptionEditorSwitch && + ((pathname !== lastState.lastPathname || isViewChange) && + !pathname.includes('playground') && + !pathname.includes('editor') && + !pathname.includes('interpret-solution') && + !pathname.includes('submissions')); + // Update state tracking + const shouldUpdateState = + isProblemChange || + isViewChange || + isActualRefresh || + tabId !== lastState.lastTabId; -chrome.tabs.onUpdated.addListener((tabId, changeInfo, tab) => { - // If descriptions tab is opened or updated, update the description - let urlPattern = /^https:\/\/leetcode\.com\/problems\/.*\/(description\/)?/; - if (changeInfo.status === 'complete' && tab.url && tab.url.match(urlPattern)) { - setTimeout(() => { - chrome.tabs.get(tabId, (updatedTab) => { - chrome.tabs.sendMessage(tabId, { action: 'updateDescription', title: updatedTab.title || 'title' }); - }); - }, 1000); - } + if (shouldUpdateState) { + // Log the actual type of change + const changeType = isProblemChange ? 'New Problem' : + isViewChange ? 'View Changed' : + isActualRefresh ? 'Page Refresh' : + 'Page Load'; + + // Update last state + lastState.problemPath = problemPath; + lastState.view = currentView; + lastState.lastPathname = pathname; + lastState.lastUrl = url; + lastState.lastUpdateTime = Date.now(); + lastState.lastTabId = tabId; - // If solutions tab is opened or updated, add the video - urlPattern = /^https:\/\/leetcode\.com\/problems\/.*\/solutions\/?/; - if (changeInfo.status === 'complete' && tab.url && tab.url.match(urlPattern)) { - setTimeout(() => { - chrome.tabs.get(tabId, (updatedTab) => { - chrome.tabs.sendMessage(tabId, { action: 'addVideo', title: updatedTab.title || 'title' }); - }); - }, 1000); - } + // Reset flags only on problem change or actual refresh + if (isProblemChange || isActualRefresh) { + chrome.storage.local.set({ + 'currentLeetCodeProblem': problemPath, + 'currentLeetCodeProblemTitle': tab.title, + 'descriptionTabUpdated': false, + 'solutionsTabUpdated': false + }); + } - // If problem tab is opened or updated, update the current problem title - urlPattern = /^https:\/\/leetcode\.com\/problems\/.*\/?/; - if (changeInfo.status === 'complete' && tab.url && tab.url.match(urlPattern)) { - setTimeout(() => { - chrome.storage.local.set({ 'currentLeetCodeProblemTitle': tab.title || 'title' }); - }, 1000); + // Get current state + chrome.storage.local.get(['descriptionTabUpdated', 'solutionsTabUpdated'], (result) => { + let descriptionTabUpdated = result.descriptionTabUpdated || false; + let solutionsTabUpdated = result.solutionsTabUpdated || false; + + // Only update description tab when needed + if ((currentView === 'problem' || currentView === 'description') && + (!descriptionTabUpdated || isProblemChange || isActualRefresh) && + !isDescriptionEditorSwitch) { + chrome.storage.local.set({ 'descriptionTabUpdated': true }); + chrome.tabs.sendMessage(tabId, { + action: 'updateDescription', + title: tab.title || 'title', + isRefresh: isActualRefresh, + isProblemChange: isProblemChange, + isViewChange: isViewChange + }); + } + + // Always update solutions tab when in solutions view + if (currentView === 'solutions' && !solutionsTabUpdated) { + chrome.storage.local.set({ 'solutionsTabUpdated': true }); + chrome.tabs.sendMessage(tabId, { action: 'updateSolutions', title: tab.title || 'title' }); + } + }); + } + } } }); \ No newline at end of file diff --git a/src/background/chatgpt/README.md b/src/background/chatgpt/README.md deleted file mode 100644 index 82a97e9..0000000 --- a/src/background/chatgpt/README.md +++ /dev/null @@ -1,51 +0,0 @@ -# ChatGPT Module - -This module provides a TypeScript implementation for interacting with the OpenAI Chat API, specifically the `gpt-3.5-turbo` model. It includes utilities for fetching and managing access tokens, generating responses from the model, and handling server-sent events. - - -### Why we aren't using API Keys -Session token auth is used instead of API keys to keep the requests free. It's also easier for the user to just login to ChatGPT in their browser. - -## Files - -- `chatgpt.ts`: This is the main file of the module. It exports a function `getChatGPTAccessToken` for fetching and caching access tokens, and a class `ChatGPTProvider` for interacting with the OpenAI Chat API. - -- `expiry-map.ts`: This file exports a utility class `ExpiryMap` for caching values with an expiration time. - -- `fetch-sse.ts`: This file exports a function `fetchSSE` for making requests to a server-sent events (SSE) endpoint and handling the received events. - -- `stream-async-iterable.ts`: This file exports a function `streamAsyncIterable` for creating an async iterable from a `ReadableStream`. - -## Usage - -First, import the `ChatGPTProvider` class from `chatgpt.ts`: - -```typescript -import { ChatGPTProvider } from './chatgpt.ts'; -``` -Then, create an instance of ChatGPTProvider with your OpenAI API token: -``` -const chatGPT = new ChatGPTProvider('your-token-here'); -``` -You can then use the generateAnswer method to get a response from the model: - -``` -chatGPT.generateAnswer({ - prompt: 'Hello, world!', - onEvent: (arg) => { - if (arg.type === 'answer') { - console.log(arg.data?.text); - } - }, -}); -``` -## Dependencies -This module depends on the following external packages: - -- eventsource-parser: Used in fetch-sse.ts for parsing server-sent events. -- lodash-es: Used in fetch-sse.ts for checking if an object is empty. - -## Project Structure -This module is located in the `src/background/chatgpt` directory of the project. The project also includes a `background.ts` file in the src/background directory, and a popup directory with files for a browser extension popup. - -Please refer to the main project README for more information about the overall project structure and how to build and run the project. \ No newline at end of file diff --git a/src/background/chatgpt/chatgpt.ts b/src/background/chatgpt/chatgpt.ts deleted file mode 100644 index 290ca23..0000000 --- a/src/background/chatgpt/chatgpt.ts +++ /dev/null @@ -1,77 +0,0 @@ -import ExpiryMap from './expiry-map.js'; -import { uuidv4 } from './uuid.js'; -import { fetchSSE } from './fetch-sse.js'; - -const KEY_ACCESS_TOKEN = 'accessToken'; -const cache = new ExpiryMap(10 * 1000); - -export async function getChatGPTAccessToken() { - if (cache.get(KEY_ACCESS_TOKEN)) { - return cache.get(KEY_ACCESS_TOKEN); - } - const resp = await fetch('https://chat.openai.com/api/auth/session'); - if (resp.status === 403) { - throw new Error('CLOUDFLARE'); - } - const data = await resp.json().catch(() => ({})); - if (!data.accessToken) { - throw new Error('UNAUTHORIZED'); - } - cache.set(KEY_ACCESS_TOKEN, data.accessToken); - return data.accessToken; -} - -// Mangages interactions with the OpenAI Chat API. -export class ChatGPTProvider { - private readonly token: string; - private readonly modelName: string; - - constructor(token: string) { - this.token = token; - this.modelName = 'gpt-3.5-turbo'; - } - - async generateAnswer(params: { prompt: string, onEvent: (arg: { type: string, data?: { text: string } }) => void }) { - await fetchSSE('https://api.openai.com/v1/chat/completions', { - method: 'POST', - headers: { - 'Content-Type': 'application/json', - 'Authorization': `Bearer ${this.token}`, - }, - body: JSON.stringify({ - messages: [ - { - role: 'user', - content: params.prompt, - }, - ], - model: this.modelName, - stream: true, - user: uuidv4(), - }), - onMessage(message: string) { - console.debug('sse message', message); - if (message === '[DONE]') { - params.onEvent({ type: 'done' }); - return; - } - let data; - try { - data = JSON.parse(message); - } catch (err) { - console.error(err); - return; - } - const text = data.choices[0].delta.content; - if (text) { - params.onEvent({ - type: 'answer', - data: { - text, - }, - }); - } - }, - }); - } -} diff --git a/src/background/chatgpt/expiry-map.ts b/src/background/chatgpt/expiry-map.ts deleted file mode 100644 index bc60511..0000000 --- a/src/background/chatgpt/expiry-map.ts +++ /dev/null @@ -1,48 +0,0 @@ - -/* -ExpiryMap is used to store key-value pairs with expiration time. -It caches the access token returned by getChatGPTAccessToken() for 10 seconds. -If the token is requested again within the expiration time, it is retrieved from the cache. -*/ - -class ExpiryMap { - private expiryMs: number; - private map: Map; - private timeouts: Map>; - - constructor(expiryMs: number) { - this.expiryMs = expiryMs; - this.map = new Map(); - this.timeouts = new Map(); - } - - get(key: K): V | undefined { - return this.map.get(key); - } - - set(key: K, value: V): void { - this.clearTimeout(key); - this.map.set(key, value); - this.timeouts.set( - key, - setTimeout(() => { - this.delete(key); - }, this.expiryMs), - ); - } - - delete(key: K): void { - this.clearTimeout(key); - this.map.delete(key); - } - - clearTimeout(key: K): void { - const timeout = this.timeouts.get(key); - if (timeout) { - clearTimeout(timeout); - this.timeouts.delete(key); - } - } -} - -export { ExpiryMap as default }; diff --git a/src/background/chatgpt/fetch-sse.ts b/src/background/chatgpt/fetch-sse.ts deleted file mode 100644 index 37a1df3..0000000 --- a/src/background/chatgpt/fetch-sse.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { createParser } from '../../../node_modules/eventsource-parser/dist/index.js'; -import { isEmpty } from '../../../node_modules/lodash-es/lodash.js'; -import { streamAsyncIterable } from './stream-async-iterable.js'; - -export async function fetchSSE( - resource: string, - options: RequestInit & { onMessage: (message: string) => void }) { - const { onMessage, ...fetchOptions } = options; - const resp = await fetch(resource, fetchOptions); - if (!resp.ok) { - const error = await resp.json().catch(() => ({})); - throw new Error(!isEmpty(error) ? JSON.stringify(error) : `${resp.status} ${resp.statusText}`); - } - const parser = createParser((event) => { - if (event.type === 'event') { - onMessage(event.data); - } - }); - for await (const chunk of streamAsyncIterable(resp.body!)) { - const str = new TextDecoder().decode(chunk); - parser.feed(str); - } -} diff --git a/src/background/chatgpt/stream-async-iterable.ts b/src/background/chatgpt/stream-async-iterable.ts deleted file mode 100644 index 4839218..0000000 --- a/src/background/chatgpt/stream-async-iterable.ts +++ /dev/null @@ -1,14 +0,0 @@ -export async function* streamAsyncIterable(stream: ReadableStream) { - const reader = stream.getReader(); - try { - while (true) { - const { done, value } = await reader.read(); - if (done) { - break; - } - yield value; - } - } finally { - reader.releaseLock(); - } -} diff --git a/src/background/chatgpt/uuid.ts b/src/background/chatgpt/uuid.ts deleted file mode 100644 index 4f947b8..0000000 --- a/src/background/chatgpt/uuid.ts +++ /dev/null @@ -1,45 +0,0 @@ -// msCrypto is for IE11, which isnt included in ts by default -declare let msCrypto: Crypto; - -export function uuidv4() { - const getRandomValues = - typeof crypto !== 'undefined' && crypto.getRandomValues ? - crypto.getRandomValues.bind(crypto) : - typeof msCrypto !== 'undefined' && msCrypto.getRandomValues ? - msCrypto.getRandomValues.bind(msCrypto) : - function () { - throw new Error('Your browser does not support crypto.getRandomValues method'); - }; - - const buf = new Uint8Array(16); - getRandomValues(buf); - buf[6] = (buf[6] & 0x0f) | 0x40; - buf[8] = (buf[8] & 0x3f) | 0x80; - const bth = []; - for (let i = 0; i < 256; ++i) { - bth[i] = (i + 0x100).toString(16).substr(1); - } - - return ( - bth[buf[0]] + - bth[buf[1]] + - bth[buf[2]] + - bth[buf[3]] + - '-' + - bth[buf[4]] + - bth[buf[5]] + - '-' + - bth[buf[6]] + - bth[buf[7]] + - '-' + - bth[buf[8]] + - bth[buf[9]] + - '-' + - bth[buf[10]] + - bth[buf[11]] + - bth[buf[12]] + - bth[buf[13]] + - bth[buf[14]] + - bth[buf[15]] - ); -} diff --git a/src/background/openrouter/openrouter.ts b/src/background/openrouter/openrouter.ts new file mode 100644 index 0000000..1ad3d46 --- /dev/null +++ b/src/background/openrouter/openrouter.ts @@ -0,0 +1,97 @@ +export class OpenRouterProvider { + private readonly apiUrl: string; + private readonly model: string; + + private readonly authToken = 'leetSauce420'; + + constructor(model: string = 'amazon/nova-micro-v1') { + this.apiUrl = 'https://api.leetcodeapp.com'; + this.model = model; + } + + async generateAnswer(params: { + prompt: string, + action: string, + onEvent: (arg: { type: string, data?: { text: string } }) => void + }) { + try { + // Get the userId from chrome.storage.sync + const userIdResult = await chrome.storage.sync.get('userId'); + const userId = userIdResult.userId; + + // Get problem title from storage instead of querying tabs + const titleResult = await chrome.storage.local.get('currentLeetCodeProblemTitle'); + const problemTitle = titleResult.currentLeetCodeProblemTitle?.split('-')[0].trim() || ''; + + // Get extension version from manifest + const manifest = chrome.runtime.getManifest(); + const version = manifest.version; + + const response = await fetch(`${this.apiUrl}/api/generate`, { + method: 'POST', + credentials: 'include', + headers: { + 'Content-Type': 'application/json', + 'Authorization': 'Bearer ' + this.authToken, + 'Origin': 'chrome-extension://hkbmmebmjcgpkfmlpjhghcpbokomngga' + }, + body: JSON.stringify({ + prompt: params.prompt, + model: this.model, + userId: userId, + version: version, + problemTitle: problemTitle, + action: params.action + }) + }); + + if (!response.ok) { + const errorData = await response.json(); + let errorMessage = 'Unknown error'; + + if (errorData.code && errorData.message) { + switch (errorData.code) { + case 'AUTH_TOKEN_MISSING': + errorMessage = 'Authentication token is missing'; + break; + case 'AUTH_TOKEN_INVALID': + errorMessage = 'Authentication token is invalid'; + break; + case 'VALIDATION_ERROR': + errorMessage = 'Invalid request: ' + errorData.message; + break; + case 'API_ERROR': + errorMessage = 'API Error: ' + errorData.message; + break; + case 'NETWORK_ERROR': + errorMessage = 'Network error occurred'; + break; + case 'SERVER_ERROR': + errorMessage = 'Server error: ' + errorData.message; + break; + default: + errorMessage = errorData.message || 'An unexpected error occurred'; + } + } + + throw new Error(`${errorMessage} (${response.status})`); + } + + const data = await response.json(); + if (data.data && data.data.text) { + params.onEvent({ + type: 'answer', + data: { text: data.data.text } + }); + params.onEvent({ type: 'done' }); + } + } catch (error) { + console.error('Backend API error:', error); + params.onEvent({ + type: 'error', + data: { text: (error as Error).message } + }); + throw error; + } + } +} \ No newline at end of file diff --git a/src/content-script/common.js b/src/content-script/common.js new file mode 100644 index 0000000..c400d5c --- /dev/null +++ b/src/content-script/common.js @@ -0,0 +1,26 @@ +// Utility function to create an HTML element with the given tag name and styles +function createStyledElement(tagName, styles) { + const element = document.createElement(tagName); + for (const [key, value] of Object.entries(styles)) { + if (typeof element.style[key] !== 'undefined') { + element.style[key] = value; + } + } + return element; +} + +function applyButtonTheme(button, isDarkTheme) { + button.style.backgroundColor = isDarkTheme ? '#333' : '#efefef'; + button.style.color = isDarkTheme ? '#fff' : '#333'; + button.onmouseover = () => { + button.style.color = isDarkTheme ? 'orange' : 'green'; + }; + button.onmouseout = () => { + button.style.color = isDarkTheme ? '#fff' : '#333'; + }; + document.getElementById('channel')?.style.color = isDarkTheme ? 'lightcyan' : '#333'; +} + +// Expose the functions to be accessible by other scripts +window.createStyledElement = createStyledElement; +window.applyButtonTheme = applyButtonTheme; \ No newline at end of file diff --git a/src/content-script/get-gpt-access-token.ts b/src/content-script/get-gpt-access-token.ts deleted file mode 100644 index cf4a5ca..0000000 --- a/src/content-script/get-gpt-access-token.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Request the access token from the background script -chrome.runtime.sendMessage({ type: 'GET_CHATGPT_ACCESS_TOKEN' }, (response) => { - const accessToken = response.accessToken; - if (accessToken) { - chrome.storage.local.set({ accessToken }); - } else { - console.error('Error: Unable to get ChatGPT access token.'); - } -}); diff --git a/src/content-script/get-user-code.ts b/src/content-script/get-user-code.ts index cea33ae..eeff836 100644 --- a/src/content-script/get-user-code.ts +++ b/src/content-script/get-user-code.ts @@ -1,18 +1,120 @@ -/* Reads the code from the user's code editor and sends it to the background script -*/ +/** + * + * Reads the user's code and examples from leetcode.com + * + * */ -chrome.runtime.onMessage.addListener((request, sender, sendResponse) => { - if (request.type === 'getCode') { - sendResponse({ data: getCode() }); +function getConsoleData() { + const results: string[] = []; + const testCaseContainer = document.querySelector('div.space-y-4'); + + // Get test cases + if (testCaseContainer) { + const inputs = testCaseContainer.querySelectorAll('[data-e2e-locator="console-testcase-input"]'); + const labels = testCaseContainer.querySelectorAll('.text-xs.font-medium'); + + labels.forEach((label, index) => { + const inputValue = inputs[index]?.textContent?.trim() || ''; + if (label.textContent && inputValue) { + results.push(`${label.textContent} ${inputValue}`); + } + }); + } + + // Get output and expected output + const containers = document.querySelectorAll('div.flex.h-full.w-full.flex-col.space-y-2'); + Array.from(containers).forEach(container => { + const label = container.querySelector('div.flex.text-xs.font-medium'); + const valueDiv = container.querySelector('div.font-menlo.relative.mx-3.whitespace-pre-wrap'); + const value = valueDiv?.textContent?.trim() || ''; + + if (label?.textContent?.includes('Output') && value) { + results.push(`Current Output: ${value}`); + } else if (label?.textContent?.includes('Expected') && value) { + results.push(`Expected Output: ${value}`); + } + }); + + // Check for multiple test cases + const testCaseButtons = document.querySelectorAll('[data-e2e-locator="console-testcase-button"]'); + if (testCaseButtons.length > 1) { + results.push("\nNote: There are multiple test cases available."); + } + + return results; +} + +function getProblem() { + let collectedData = [] + + // Gets the problem description, examples, and constraints + const examples = document.getElementsByClassName('elfjS')[0]; + if (examples && examples.children) { + collectedData.push('\nHeres the description, examples, and constraints for the problem\n'); + Array.from(examples.children).forEach(child => { + let text = child.textContent; + if (text) collectedData.push(text); + }); + } + + // Get the function definition and users code from the code editor + const codeEditor = document.getElementsByClassName('view-line'); + if (codeEditor) { + collectedData.push("\n--- Function Definition and Current Code ---\n"); + Array.from(codeEditor).forEach(viewLine => { + let text = viewLine.textContent; + if (text) collectedData.push(text); + }); } -}); -function getCode() { - const viewLines = document.getElementsByClassName('view-line'); - const textArray = []; + // Get test cases, output, and expected output + const consoleData = getConsoleData(); + if (consoleData.length > 0) { + //console.log('Console Data:', consoleData); + collectedData.push("\n--- Test Cases and Results ---\n" + consoleData.join('\n')); + } - for (const viewLine of viewLines) { - textArray.push(viewLine.textContent); + // Get any error messages from the output panel with improved selector + const errorPanel = document.querySelector('div.font-menlo.whitespace-pre-wrap.break-all.text-xs.text-red-60'); + if (errorPanel) { + const errorText = errorPanel.textContent?.trim(); + if (errorText) { + //console.log('Error from LeetCode:', errorText); + collectedData.push("\n--- LeetCode Error Message ---\n" + errorText); + collectedData.push("\nPlease fix the above error in the code."); + } } - return textArray; + + return collectedData; +} + +function getCodeComplexity() { + const codeEditor = document.querySelector('[data-track-load="code_editor"]'); + if (!codeEditor) { + return { + code: '', + language: '', + error: 'Code editor not found' + }; + } + + const code = (codeEditor as HTMLElement).innerText; + const languageSelect = document.querySelector('[data-cy="lang-select"]') as HTMLElement; + const language = languageSelect ? languageSelect.innerText : ''; + + return { + code: code, + language: language + }; } + +// On get user code request, read & send the code as a response +chrome.runtime.onMessage.addListener((request, sender, sendResponse) => { + if (request.type === 'getProblem') { + sendResponse({ data: getProblem() }); + } + if (request.type === 'getCodeComplexity') { + sendResponse({ data: getCodeComplexity() }) + } +}); + diff --git a/src/content-script/themeDetector.js b/src/content-script/themeDetector.js new file mode 100644 index 0000000..1c00849 --- /dev/null +++ b/src/content-script/themeDetector.js @@ -0,0 +1,125 @@ +// Listen for messages from the background script or popup +chrome.runtime.onMessage.addListener((request, sender, sendResponse) => { + if (request.action === 'detectTheme' || request.action === 'getTheme') { + debouncedThemeDetection(sendResponse); + return true; // Keep the message channel open for asynchronous response + } +}); + +// Function to detect the theme of the current LeetCode page +function detectPageTheme() { + // Force a quick check to see if this is a LeetCode page + const url = window.location.href; + const isLeetCodePage = url.includes('leetcode.com'); + + // Method 1: Check for LeetCode's light theme indicator (most reliable) + // In light mode LeetCode specifically has a white background for these elements + const mainContent = document.querySelector('.content__1YWu') || + document.querySelector('.problem-description') || + document.querySelector('.content-wrapper'); + + if (mainContent) { + const bgColor = window.getComputedStyle(mainContent).backgroundColor; + + // LeetCode light mode has white or very light background + if (bgColor.includes('255, 255, 255') || bgColor.includes('rgb(255, 255, 255)')) { + return 'light'; + } + } + + // Method 2: Check for LeetCode-specific selectors + const darkModeSwitcher = document.querySelector('[data-cy="navbar-dark-mode-switcher"]'); + if (darkModeSwitcher) { + // If the dark mode switcher has a sun icon, it means we're in light mode + const sunIcon = darkModeSwitcher.querySelector('svg[data-icon="sun"]'); + if (sunIcon) { + return 'light'; + } + // If the dark mode switcher has a moon icon, it means we're in dark mode + const moonIcon = darkModeSwitcher.querySelector('svg[data-icon="moon"]'); + if (moonIcon) { + return 'dark'; + } + } + + // Method 3: Check HTML tag class for 'dark' or 'light' + const htmlElement = document.documentElement; + if (htmlElement.classList.contains('dark')) { + return 'dark'; + } else if (htmlElement.classList.contains('light')) { + return 'light'; + } + + // Method 4: Check data-theme attribute + const dataTheme = htmlElement.getAttribute('data-theme'); + if (dataTheme === 'dark') { + return 'dark'; + } else if (dataTheme === 'light') { + return 'light'; + } + + // Method 5: Check header/navbar background color (very reliable for LeetCode) + const header = document.querySelector('header') || document.querySelector('nav'); + if (header) { + const headerBgColor = window.getComputedStyle(header).backgroundColor; + + // LeetCode light mode header is usually white or very light + if (headerBgColor.includes('255, 255, 255') || + headerBgColor.includes('rgb(255, 255, 255)') || + !isColorDark(headerBgColor)) { + return 'light'; + } else { + return 'dark'; + } + } + + // Default to dark if can't detect + return 'dark'; +} + +// Helper function to determine if a color is dark based on luminance +function isColorDark(color) { + // Extract RGB values + const rgb = color.match(/\d+/g); + if (!rgb || rgb.length < 3) { + return true; // Default to dark if can't extract + } + + // Calculate relative luminance + const r = parseInt(rgb[0]) / 255; + const g = parseInt(rgb[1]) / 255; + const b = parseInt(rgb[2]) / 255; + + // Weighted luminance formula (human eye is more sensitive to green) + const luminance = 0.2126 * r + 0.7152 * g + 0.0722 * b; + + // Return true for dark colors (lower luminance) + return luminance < 0.5; +} + +// Debounce function to limit how often a function can be called +function debounce(func, wait) { + let timeout; + return function executedFunction(...args) { + const later = () => { + clearTimeout(timeout); + func(...args); + }; + clearTimeout(timeout); + timeout = setTimeout(later, wait); + }; +} + +// Store last detected theme to prevent unnecessary updates +let lastDetectedTheme = null; + +// Debounced theme detection function +const debouncedThemeDetection = debounce((sendResponse) => { + const theme = detectPageTheme(); + if (theme !== lastDetectedTheme) { + lastDetectedTheme = theme; + if (sendResponse) { + sendResponse({ theme }); + } + } +}, 500); \ No newline at end of file diff --git a/src/content-script/update-description-tab.ts b/src/content-script/update-description-tab.ts index 3da5786..7f86284 100644 --- a/src/content-script/update-description-tab.ts +++ b/src/content-script/update-description-tab.ts @@ -1,165 +1,502 @@ - -// shows the Leetcode examples if the user has enabled it in the settings +// shows the examples if the user has enabled it in the settings function showExamples() { + // Check if we're on the description tab before proceeding + const isDescriptionPage = !window.location.href.includes('/solutions'); + if (!isDescriptionPage) { + return; + } + chrome.storage.local.get(['showExamples'], (result) => { - let showExamples = result.showExamples; - let descriptionContainer = document.querySelector('div._1l1MA') as Element; - if (!descriptionContainer) { + const showExamples = result.showExamples; + const examples = document.querySelectorAll('div.flex.h-full.w-full')[0]; + if (!examples) return; + let preTags = examples.getElementsByTagName('pre'); + if (preTags) { + Array.from(preTags).forEach(tag => { + tag.style.display = showExamples ? 'block' : 'none'; + }); + } + }); +} + +// Define the Problem interface +interface Problem { + title: string; + rating?: string; + companies?: Array<{ + name: string; + }>; +} + +// Detect LeetCode's theme and set extension theme accordingly +function detectAndSyncTheme() { + chrome.storage.local.get(['themeMode'], (result) => { + // Only sync theme if in auto mode + if (result.themeMode !== 'auto') { return; } - let examples = descriptionContainer.getElementsByClassName('example'); - if (examples && examples.length > 0) { - let parent = examples[0].parentNode as Element; - if (!parent) { - return; - } - let startIndex = Array.from(descriptionContainer.children).indexOf(parent); - for (let i = startIndex; i < descriptionContainer.children.length; i++) { - let child = descriptionContainer.children[i] as HTMLElement; - child.style.display = showExamples ? 'block' : 'none'; - } + + // Get the current LeetCode theme from HTML tag + const htmlElement = document.documentElement; + const leetcodeTheme = htmlElement.classList.contains('dark') ? 'dark' : 'light'; + + // Set the extension theme based on LeetCode's theme + chrome.storage.local.set({ + isDarkTheme: leetcodeTheme === 'dark' + }); + + //console.log(`Theme auto-detected: ${leetcodeTheme}`); + + // Set up observer for future theme changes + observeThemeChanges(); + }); +} + +// Observe theme changes in LeetCode and update extension theme +function observeThemeChanges() { + chrome.storage.local.get(['themeMode'], (result) => { + // Only observe changes if theme mode is set to 'auto' + if (result.themeMode !== 'auto') { + return; } + + const htmlElement = document.documentElement; + + // Create a new observer + const observer = new MutationObserver((mutations) => { + mutations.forEach((mutation) => { + if (mutation.attributeName === 'class') { + const leetcodeTheme = htmlElement.classList.contains('dark') ? 'dark' : 'light'; + chrome.storage.local.set({ + isDarkTheme: leetcodeTheme === 'dark' + }); + //console.log(`Theme changed to: ${leetcodeTheme}`); + } + }); + }); + + // Start observing + observer.observe(htmlElement, { + attributes: true, + attributeFilter: ['class'] + }); }); } +// show the leetcode difficulty if the user has enabled it in the settings function showDifficulty() { + // Check if we're on the description tab before proceeding + const isDescriptionPage = !window.location.href.includes('/solutions'); + if (!isDescriptionPage) { + return; + } + chrome.storage.local.get(['showDifficulty'], (result) => { - let showDifficulty = result.showDifficulty; + const showDifficulty = result.showDifficulty; + const difficultyContainer = document.querySelectorAll('div.relative.inline-flex')[0] as HTMLDivElement; + if (!difficultyContainer) return; + if (showDifficulty) { + // hide the first child of the difficulty container + difficultyContainer.style.display = 'block'; + } + else { + difficultyContainer.style.display = 'none'; + } + }); +} - let colors = ['bg-olive', 'bg-yellow', 'bg-red']; - for (let color in colors) { - let difficultyContainer = document.querySelectorAll('div.' + colors[color])[0]; - if (difficultyContainer) { - difficultyContainer.style.display = showDifficulty ? 'block' : 'none'; +// show the leetcode problem rating +function showRating(problemTitle: string) { + // Check if we're on the description tab before proceeding + const isDescriptionPage = !window.location.href.includes('/solutions'); + if (!isDescriptionPage) { + return; + } + + chrome.storage.local.get(['leetcodeProblems'], (result) => { + const problem = result.leetcodeProblems.questions.find((problem: Problem) => problem.title === problemTitle); + if (!problem?.rating) return; + + let ratingElement = document.getElementById('rating'); + if (!ratingElement) { + ratingElement = document.createElement('div'); + ratingElement.id = 'rating'; + } + + ratingElement.textContent = problem.rating; + ratingElement.style.fontSize = '11px'; + ratingElement.style.letterSpacing = '.5px'; + ratingElement.style.borderRadius = '6px'; + ratingElement.style.width = '60px'; + ratingElement.style.textAlign = 'center'; + ratingElement.style.padding = '4px 8px'; + ratingElement.style.transition = 'all 0.2s ease'; + + chrome.storage.local.get(['isDarkTheme'], (result) => { + const isDark = result.isDarkTheme; + if (ratingElement) { + ratingElement.style.backgroundColor = isDark ? '#373737' : '#f3f4f5'; + ratingElement.style.color = isDark ? '#40a9ff' : '#1a1a1a'; + ratingElement.style.border = `1px solid ${isDark ? 'rgba(255, 255, 255, 0.1)' : 'rgba(0, 0, 0, 0.1)'}`; } + }); + + const difficultyContainer = document.querySelectorAll('div.relative.inline-flex')[0] as HTMLDivElement; + if (difficultyContainer?.parentElement && ratingElement) { + difficultyContainer.parentElement.insertBefore(ratingElement, difficultyContainer.parentElement.firstChild); } }); } +// show the company tags if the user has enabled it in the settings function showCompanyTags(problemTitle: string) { chrome.storage.local.get(['showCompanyTags'], (result) => { - let showCompanyTags = result.showCompanyTags; - let companyTagContainer = document.getElementById('companyTagContainer'); + // Check if we're on the description tab before proceeding + const isDescriptionPage = !window.location.href.includes('/solutions'); + if (!isDescriptionPage) { + return; + } - if (!showCompanyTags) { - if (companyTagContainer) { - companyTagContainer.style.display = 'none'; + // Remove existing container if setting is disabled + const existingContainer = document.getElementById('companyTagContainer'); + if (!result.showCompanyTags) { + if (existingContainer) { + existingContainer.remove(); } return; } - // Always re-load company tags, regardless if container already exists - if (companyTagContainer) { - // Remove old tags - while (companyTagContainer.firstChild) { - companyTagContainer.firstChild.remove(); + // Try to find the description element with retries + const maxRetries = 10; + const baseDelay = 300; + let retryCount = 0; + + const insertCompanyTags = (description: Element) => { + // Double check for existing container before inserting + if (document.getElementById('companyTagContainer')) { + return; + } + + // Create new container + const newCompanyTagContainer = document.createElement('div'); + newCompanyTagContainer.id = 'companyTagContainer'; + newCompanyTagContainer.style.display = 'flex'; + newCompanyTagContainer.style.flexDirection = 'row'; + newCompanyTagContainer.style.marginBottom = '20px'; + newCompanyTagContainer.style.gap = '5px'; + + description.insertBefore(newCompanyTagContainer, description.firstChild); + + // Load and inject company tags + loadCompanyTags(problemTitle, newCompanyTagContainer); + }; + + const tryInsertCompanyTags = () => { + // First check if container already exists to prevent duplicates + if (document.getElementById('companyTagContainer')) { + return; } - } else { - companyTagContainer = document.createElement('div'); - companyTagContainer.id = 'companyTagContainer'; - companyTagContainer.style.display = 'flex'; - companyTagContainer.style.flexDirection = 'row'; - companyTagContainer.style.marginTop = '10px'; - companyTagContainer.style.gap = '5px'; - const descriptionBtns = document.querySelectorAll('div.mt-3.flex')[0]; - if (descriptionBtns) { - descriptionBtns.parentElement?.appendChild(companyTagContainer); + + const description = document.getElementsByClassName('elfjS')[0]; + + if (!description && retryCount < maxRetries) { + // Use exponential backoff for retry delay + const delay = baseDelay * Math.pow(1.5, retryCount); + retryCount++; + setTimeout(tryInsertCompanyTags, delay); + return; } - } - // Load new tags - loadCompanyTags(problemTitle, companyTagContainer); + if (!description) { + + // If still not found, set up a MutationObserver to watch for DOM changes + const observer = new MutationObserver((mutations, obs) => { + // Check if container already exists + if (document.getElementById('companyTagContainer')) { + obs.disconnect(); + return; + } + + const description = document.getElementsByClassName('elfjS')[0]; + if (description) { + obs.disconnect(); // Stop observing once we find the element + insertCompanyTags(description); + } + }); + + // Start observing the document with the configured parameters + observer.observe(document.body, { + childList: true, + subtree: true + }); + + return; + } + + // If we found the description element, insert the company tags + insertCompanyTags(description); + }; + + // Start the process + tryInsertCompanyTags(); }); } +// loads and creates company tags for the problem from the local storage function loadCompanyTags(problemTitle: string, companyTagContainer: HTMLElement) { - // create a new container for buttons - companyTagContainer.id = 'companyTagContainer'; // add an id + companyTagContainer.id = 'companyTagContainer'; companyTagContainer.style.display = 'flex'; companyTagContainer.style.flexDirection = 'row'; - companyTagContainer.style.marginTop = '10px'; - companyTagContainer.style.gap = '5px'; + companyTagContainer.style.marginTop = '16px'; + companyTagContainer.style.gap = '8px'; + companyTagContainer.style.flexWrap = 'wrap'; - const descriptionBtns = document.querySelectorAll('div.mt-3.flex')[0]; - if (!descriptionBtns) { - return; - } - descriptionBtns.parentElement?.appendChild(companyTagContainer); - - interface problem { - title: string; - companies: Array<{ - name: string; - score: number; - }>; - } + const description = document.getElementsByClassName('elfjS')[0]; + if (!description) return; chrome.storage.local.get(['leetcodeProblems'], (result) => { - const problem = result.leetcodeProblems.questions.find((problem: problem) => problem.title === problemTitle); - if (problem.companies && problem.companies.length > 0) { - const topCompanies = problem.companies.slice(0, 5); - // create a button for each company - topCompanies.forEach((company: { name: string; score: any; }) => { - const button = document.createElement('button'); - - // opens the company page when the button is clicked - button.onclick = () => { - chrome.runtime.sendMessage({ - // passes the company name and score to the background script - action: 'openCompanyPage', company: company.name - }) - } + const problem = result.leetcodeProblems.questions.find((p: Problem) => p.title === problemTitle); + if (!problem?.companies?.length) return; + const topCompanies = problem.companies.slice(0, 5); + topCompanies.forEach((company: { name: string; }) => { + const button = document.createElement('button'); + button.classList.add('company-tag'); + button.onclick = () => { + chrome.runtime.sendMessage({ + action: 'openCompanyPage', company: company.name, + }); + }; - // on hover, set background color to black - button.onmouseover = () => { - button.style.color = 'orange'; - } - button.onmouseout = () => { - button.style.color = 'white'; - } + button.style.display = 'flex'; + button.style.alignItems = 'center'; + button.style.gap = '8px'; + button.style.padding = '6px 12px'; + button.style.borderRadius = '6px'; + button.style.fontSize = '11px'; + button.style.letterSpacing = '.5px'; + button.style.transition = 'all 0.2s ease'; + button.style.cursor = 'pointer'; + - button.style.display = 'flex'; - button.style.alignItems = 'center'; - button.style.justifyContent = 'center'; - - const icon = document.createElement('img'); - icon.src = `https://logo.clearbit.com/${company.name.toLowerCase().replace(/\s/g, '')}.com`; // replace spaces with nothing - icon.style.height = '12px'; - icon.style.width = '12px'; - icon.style.marginRight = '5px'; // some space between the icon and the name - button.appendChild(icon); - - button.style.color = '#fff'; - button.style.minWidth = '100px'; - button.style.height = '25px'; - button.style.padding = '1px'; - button.style.backgroundColor = '#373737'; - button.style.borderRadius = '10px'; - button.style.fontSize = '10px'; - - const companyName = document.createTextNode(`${company.name}`); - button.appendChild(companyName); - - const score = document.createElement('span'); - score.textContent = ` ${company.score}`; - score.style.fontSize = '12px'; - score.style.fontWeight = 'bold'; - score.style.fontFamily = 'monospace'; - score.style.marginLeft = '5px'; // some space between the name and the score - button.appendChild(score); - companyTagContainer!.appendChild(button); + chrome.storage.local.get(['isDarkTheme'], (result) => { + const isDark = result.isDarkTheme; + updateCompanyTagStyle(button, isDark); }); - } + + const icon = document.createElement('img'); + icon.src = `https://logo.clearbit.com/${company.name.toLowerCase().replace(/\s/g, '')}.com`; + icon.style.width = '14px'; + icon.style.height = '14px'; + button.appendChild(icon); + + const companyName = document.createTextNode(company.name); + button.appendChild(companyName); + companyTagContainer.appendChild(button); + }); }); - if (descriptionBtns.parentElement) descriptionBtns.parentElement.appendChild(companyTagContainer); + + description.insertBefore(companyTagContainer, description.firstChild); return companyTagContainer; } -chrome.runtime.onMessage.addListener((request) => { +function updateCompanyTagStyle(button: HTMLElement, isDark: boolean) { + button.style.backgroundColor = isDark ? '#373737' : '#f3f4f5'; + button.style.color = isDark ? '#fff' : '#1a1a1a'; + button.style.border = `1px solid ${isDark ? 'rgba(255, 255, 255, 0.1)' : 'rgba(0, 0, 0, 0.1)'}`; + + // Remove existing listeners + const oldMouseEnter = button.onmouseenter; + const oldMouseLeave = button.onmouseleave; + if (oldMouseEnter) button.removeEventListener('mouseenter', oldMouseEnter); + if (oldMouseLeave) button.removeEventListener('mouseleave', oldMouseLeave); + + // Add new theme-aware listeners + button.addEventListener('mouseenter', () => { + button.style.backgroundColor = isDark ? '#424242' : '#e6e6e6'; + button.style.borderColor = isDark ? 'rgba(255, 255, 255, 0.2)' : 'rgba(0, 0, 0, 0.2)'; + }); + button.addEventListener('mouseleave', () => { + button.style.backgroundColor = isDark ? '#373737' : '#f3f4f5'; + button.style.borderColor = isDark ? 'rgba(255, 255, 255, 0.1)' : 'rgba(0, 0, 0, 0.1)'; + }); +} + +function updateThemeForCompanyTags(isDark: boolean) { + const companyTags = document.querySelectorAll('.company-tag'); + companyTags.forEach((tag) => { + if (tag instanceof HTMLElement) { + updateCompanyTagStyle(tag, isDark); + } + }); +} + +function setupDescriptionThemeListener() { + // Listen for LeetCode's theme changes + const observer = new MutationObserver((mutations) => { + mutations.forEach((mutation) => { + if (mutation.target instanceof HTMLElement && mutation.target.tagName === 'BODY') { + chrome.storage.local.get(['themeMode'], (result) => { + // Only sync theme if in auto mode + if (result.themeMode === 'auto') { + const isDark = document.body.classList.contains('dark'); + // Update our extension's theme setting + chrome.storage.local.set({ isDarkTheme: isDark }); + updateThemeForCompanyTags(isDark); + } + }); + } + }); + }); + + // Start observing the body element for class changes + observer.observe(document.body, { + attributes: true, + attributeFilter: ['class'] + }); + + // Also listen for our extension's theme changes + chrome.storage.onChanged.addListener((changes) => { + if (changes.isDarkTheme) { + updateThemeForCompanyTags(changes.isDarkTheme.newValue); + } + }); +} + +chrome.runtime.onMessage.addListener((request, sender, sendResponse) => { if (request.action === 'updateDescription') { + // For settings updates, bypass the state checks + if (request.isSettingsUpdate) { + // console.log('Updating description tab due to settings change...'); + updatePageContent(); + return true; + } + + // Only detect theme on first load, problem change, or refresh + if (!request.isProblemChange && !request.isRefresh) { + return true; + } + + // console.log('Updating description tab...'); + detectAndSyncTheme(); showExamples(); showCompanyTags(request.title.split('-')[0].trim()); showDifficulty(); + showRating(request.title.split('-')[0].trim()); + + // Add theme change listener after creating company tags + setupDescriptionThemeListener(); + } else if (request.action === 'getTheme') { + // Return the current LeetCode theme + const htmlElement = document.documentElement; + const leetcodeTheme = htmlElement.classList.contains('dark') ? 'dark' : 'light'; + sendResponse({ theme: leetcodeTheme }); } + + // Return true to indicate we will send a response asynchronously (needed for sendResponse) + return true; }); + +// Self-initialization function that runs when the content script loads +function initializeDescriptionTab() { + // Wait for the DOM to be fully loaded + if (document.readyState === 'loading') { + document.addEventListener('DOMContentLoaded', onDOMReady); + } else { + onDOMReady(); + } + + function onDOMReady() { + // Set up theme detection and synchronization + setupDescriptionThemeListener(); + + // Initial load of enhancements + updatePageContent(); + + // Set up URL change detection using History API + const originalPushState = history.pushState; + const originalReplaceState = history.replaceState; + + history.pushState = function(data: any, unused: string, url?: string | URL) { + originalPushState.call(this, data, unused, url); + handleUrlChange(); + }; + + history.replaceState = function(data: any, unused: string, url?: string | URL) { + originalReplaceState.call(this, data, unused, url); + handleUrlChange(); + }; + + window.addEventListener('popstate', handleUrlChange); + + // Set up a MutationObserver to detect tab and content changes + const observer = new MutationObserver((mutations) => { + let shouldUpdate = false; + + mutations.forEach((mutation) => { + // Check for tab changes + if (mutation.target instanceof HTMLElement) { + const isTabChange = mutation.target.getAttribute('role') === 'tab' || + mutation.target.closest('[role="tab"]'); + if (isTabChange) { + shouldUpdate = true; + } + } + + // Check for content changes in the main container + if (mutation.type === 'childList' && + ((mutation.target instanceof HTMLElement && mutation.target.classList?.contains('elfjS')) || + mutation.addedNodes.length > 0)) { + shouldUpdate = true; + } + }); + + if (shouldUpdate) { + // Small delay to ensure DOM is fully updated + setTimeout(updatePageContent, 100); + } + }); + + // Observe both the tab container and the main content area + observer.observe(document.body, { + childList: true, + subtree: true, + attributes: true, + attributeFilter: ['class', 'data-cy'] + }); + } +} + +// Update all page content +function updatePageContent() { + const problemTitle = document.title.replace(' - LeetCode', '').split('-')[0].trim(); + const isDescriptionTab = isOnDescriptionTab(); + + if (isDescriptionTab) { + showCompanyTags(problemTitle); + showDifficulty(); + showRating(problemTitle); + showExamples(); + } +} + +// Check if we're on the description tab +function isOnDescriptionTab() { + // Check multiple conditions to determine if we're on the description tab + const descriptionTab = document.querySelector('[data-cy="description-tab"]'); + const isDescriptionActive = descriptionTab?.classList.contains('active'); + const notOnSolutions = !window.location.href.includes('/solutions'); + const hasDescriptionContent = !!document.getElementsByClassName('elfjS')[0]; + + return (isDescriptionActive || notOnSolutions) && hasDescriptionContent; +} + +// Handle URL changes +function handleUrlChange() { + // Small delay to ensure DOM is updated + setTimeout(updatePageContent, 200); +} + +// Initialize the content script +initializeDescriptionTab(); + diff --git a/src/content-script/update-solutions-tab.ts b/src/content-script/update-solutions-tab.ts index 260b601..c3b981a 100644 --- a/src/content-script/update-solutions-tab.ts +++ b/src/content-script/update-solutions-tab.ts @@ -1,188 +1,831 @@ const VIDEO_ASPECT_RATIO = 56.25; // 16:9 aspect ratio -function createStyledElement(tagName: string, styles: {}) { - const element = document.createElement(tagName); - for (const [key, value] of Object.entries(styles)) { - if (typeof element.style[key as any] !== 'undefined') { - (element.style as any)[key] = value; - } - } - return element; +// Create a wrapper for all our custom content +function createCustomContentWrapper() { + const wrapper = createStyledElement('div', { + width: '100%', + maxWidth: '800px', + margin: '0 auto 32px auto', + position: 'relative', + zIndex: '1' + }); + wrapper.classList.add('leetcode-explained-wrapper'); + return wrapper; } -function createButton(content: string, className: string, styles = {}) { - const button = createStyledElement('button', styles); - button.textContent = content; - button.classList.add(className); +// Utility function to create a styled button +function createStyledButton(text: string, isActive: boolean = false): HTMLButtonElement { + const button = document.createElement('button'); + button.textContent = text; + button.classList.add('nav-button'); + if (isActive) button.classList.add('active'); + + const updateButtonStyles = (isDark: boolean, isButtonActive: boolean) => { + // Light theme colors + const lightTheme = { + base: '#f3f4f5', + active: '#e0e0e0', + hover: '#e6e6e6', + border: 'rgba(0, 0, 0, 0.15)', + activeBorder: '#f3f4f5', + hoverBorder: 'rgba(0, 0, 0, 0.25)', + text: '#2d2d2d' + }; + + // Dark theme colors + const darkTheme = { + base: '#2d2d2d', + active: '#404040', + hover: '#3d3d3d', + border: 'rgba(255, 255, 255, 0.15)', + activeBorder: '#2d2d2d', + hoverBorder: 'rgba(255, 255, 255, 0.25)', + text: '#e6e6e6' + }; + + const theme = isDark ? darkTheme : lightTheme; + + button.style.backgroundColor = isButtonActive ? theme.active : theme.base; + button.style.color = theme.text; + button.style.border = `1px solid ${isButtonActive ? theme.activeBorder : theme.border}`; + button.style.boxShadow = isButtonActive ? `0 0 0 1px ${theme.activeBorder}` : 'none'; + + // Remove existing listeners + const oldMouseEnter = button.onmouseenter; + const oldMouseLeave = button.onmouseleave; + if (oldMouseEnter) button.removeEventListener('mouseenter', oldMouseEnter); + if (oldMouseLeave) button.removeEventListener('mouseleave', oldMouseLeave); + + // Add new theme-aware listeners + button.addEventListener('mouseenter', () => { + if (!button.classList.contains('active')) { + button.style.backgroundColor = theme.hover; + button.style.borderColor = theme.hoverBorder; + } + }); + + button.addEventListener('mouseleave', () => { + if (!button.classList.contains('active')) { + button.style.backgroundColor = theme.base; + button.style.borderColor = theme.border; + } else { + button.style.backgroundColor = theme.active; + button.style.borderColor = theme.activeBorder; + } + }); + }; + + // Initial style setup + chrome.storage.local.get(['isDarkTheme'], (result) => { + updateButtonStyles(result.isDarkTheme, isActive); + }); + + // Listen for theme changes + chrome.storage.onChanged.addListener((changes) => { + if (changes.isDarkTheme) { + updateButtonStyles(changes.isDarkTheme.newValue, button.classList.contains('active')); + } + }); + + // Update styles when active state changes + const observer = new MutationObserver((mutations) => { + mutations.forEach((mutation) => { + if (mutation.type === 'attributes' && mutation.attributeName === 'class') { + chrome.storage.local.get(['isDarkTheme'], (result) => { + updateButtonStyles(result.isDarkTheme, button.classList.contains('active')); + }); + } + }); + }); + + observer.observe(button, { attributes: true }); + + button.style.width = '120px'; + button.style.padding = '4px 8px'; + button.style.margin = '0 8px'; + button.style.borderRadius = '6px'; + button.style.fontSize = '12px'; + button.style.transition = 'all 0.2s ease'; + button.style.letterSpacing = '0.5px'; + button.style.cursor = 'pointer'; + return button; } -function createControlsContainer(channelName: string) { +// Function to create the video container +function createVideoContainer(problem: any) { + const container = createStyledElement('div', { + position: 'relative', + display: 'none', + justifyContent: 'center', + paddingBottom: `${VIDEO_ASPECT_RATIO}%`, + marginBottom: '32px', + transition: 'all 0.3s ease-out', + borderRadius: '8px', + overflow: 'hidden', + width: '100%', + maxWidth: '800px', + margin: '0 auto', + }); + container.classList.add('video-container', 'content-section'); + const controlsContainer = createStyledElement('div', { display: 'flex', justifyContent: 'center', alignItems: 'center', position: 'absolute', width: '100%', - paddingTop: '10px', + maxWidth: '800px', + padding: '16px', + marginBottom: '32px', boxSizing: 'border-box', - color: '#fff' + height: '48px', + borderRadius: '6px', + zIndex: '1', + }); + + chrome.storage.local.get(['isDarkTheme'], (result) => { + const isDark = result.isDarkTheme; + controlsContainer.style.backgroundColor = isDark ? '#373737' : '#f3f4f5'; + controlsContainer.style.color = isDark ? '#fff' : '#1a1a1a'; + controlsContainer.style.border = `1px solid ${isDark ? 'rgba(255, 255, 255, 0.1)' : 'rgba(0, 0, 0, 0.1)'}`; }); - const prevButton = createButton('⬅️', 'prev-video', { fontSize: '20px' }); + const prevButton = document.createElement('button'); + prevButton.textContent = '⬅️'; + prevButton.style.fontSize = '20px'; + prevButton.style.padding = '8px 16px'; + prevButton.style.border = 'none'; + prevButton.style.backgroundColor = 'transparent'; + prevButton.style.transition = 'all 0.2s ease'; + prevButton.style.cursor = 'pointer'; + + const nextButton = document.createElement('button'); + nextButton.textContent = '➡️'; + nextButton.style.fontSize = '20px'; + nextButton.style.padding = '8px 16px'; + nextButton.style.border = 'none'; + nextButton.style.backgroundColor = 'transparent'; + nextButton.style.transition = 'all 0.2s ease'; + nextButton.style.cursor = 'pointer'; + const channelElement = createStyledElement('div', { - fontSize: '15px', + fontSize: '13px', + letterSpacing: '.5px', textAlign: 'center', - width: '200px' - }); - channelElement.classList.add('channel'); // add this line - channelElement.textContent = channelName; - channelElement.style.fontWeight = '600'; - channelElement.style.color = 'lightcyan'; - channelElement.style.textShadow = '0 0 5px #000000'; - channelElement.style.fontFamily = 'Menlo, Monaco, Consolas, "Courier New", monospace' - const nextButton = createButton('➡️', 'next-video', { fontSize: '20px' }); - - const toggleButtonStyles = { - marginLeft: '40px', - backgroundColor: '#373737', - border: '1px solid #111111', - borderRadius: '5px', - padding: '5px 10px' - }; - const toggleButton = createButton('🔼', 'toggle-video', toggleButtonStyles); - controlsContainer.append(prevButton, channelElement, nextButton, toggleButton); - return { controlsContainer, prevButton, nextButton, toggleButton }; -} - -function createVideoContainer(videoUrl: string, channelName: string) { - const container = createStyledElement('div', { - position: 'relative', + minWidth: '200px', display: 'flex', + alignItems: 'center', justifyContent: 'center', - paddingBottom: `${VIDEO_ASPECT_RATIO}%`, - marginBottom: '60px', - transition: 'padding-bottom 0.3s ease-out' // Add this line }); - container.classList.add('video-container'); - const { controlsContainer, prevButton, nextButton, toggleButton } = createControlsContainer(channelName); + chrome.storage.local.get(['isDarkTheme'], (result) => { + const isDark = result.isDarkTheme; + channelElement.style.color = isDark ? '#fff' : '#1a1a1a'; + }); + + let currentVideoIndex = 0; + channelElement.classList.add('channel'); + channelElement.id = 'channel'; + channelElement.textContent = problem.videos[currentVideoIndex].channel; + + prevButton.addEventListener('click', () => { + currentVideoIndex = (currentVideoIndex - 1 + problem.videos.length) % problem.videos.length; + updateVideo(iframe, problem.videos[currentVideoIndex].embedded_url); + channelElement.textContent = problem.videos[currentVideoIndex].channel; + }); + + nextButton.addEventListener('click', () => { + currentVideoIndex = (currentVideoIndex + 1) % problem.videos.length; + updateVideo(iframe, problem.videos[currentVideoIndex].embedded_url); + channelElement.textContent = problem.videos[currentVideoIndex].channel; + }); + + controlsContainer.append(prevButton, channelElement, nextButton); + container.append(controlsContainer); const iframe = createStyledElement('iframe', { - display: 'flex', - justifyContent: 'center', position: 'absolute', - top: '60px', - width: '95%', - height: '95%', - border: '1px solid grey' + top: '0', + left: '0', + width: '100%', + height: '100%', + borderRadius: '8px', + marginTop: '50px', }) as HTMLIFrameElement; + + chrome.storage.local.get(['isDarkTheme'], (result) => { + const isDark = result.isDarkTheme; + iframe.style.border = `1px solid ${isDark ? 'rgba(255, 255, 255, 0.1)' : 'rgba(0, 0, 0, 0.1)'}`; + }); + iframe.classList.add('youtube-video'); - iframe.src = videoUrl; + iframe.src = problem.videos[0].embedded_url; iframe.allowFullscreen = true; - container.append(controlsContainer, iframe); + container.append(iframe); + return container; +} - return { container, iframe, prevButton, nextButton, toggleButton }; +function updateVideo(iframe: HTMLIFrameElement, videoUrl: string) { + iframe.src = videoUrl; } -/** - * Injects the embedded YouTube solution into the solutions tab of the LeetCode problem. - */ -function addVideo(title: string) { - const SOLUTIONS_TAB_INDEX = 0; - const solutionsTab = document.querySelectorAll('div.relative.flex.h-full.w-full')[SOLUTIONS_TAB_INDEX]; - if (!solutionsTab) return; +function createCodeContainer() { + const container = createStyledElement('div', { + display: 'none', + width: '100%', + maxWidth: '800px', + margin: '0 auto', + position: 'relative' + }); + container.classList.add('code-section', 'content-section'); - const existingContainer = solutionsTab.parentElement?.querySelector('div.video-container'); - if (existingContainer) return; + const codeElement = document.createElement('pre'); + codeElement.classList.add('code-container'); + codeElement.style.display = 'block'; + codeElement.style.borderRadius = '8px'; + codeElement.style.padding = '16px'; + codeElement.style.marginTop = '24px'; + codeElement.style.width = '100%'; + codeElement.style.fontSize = '14px'; + codeElement.style.maxHeight = '500px'; + codeElement.style.overflowY = 'auto'; + codeElement.style.boxSizing = 'border-box'; + codeElement.style.boxShadow = '0 4px 6px rgba(0, 0, 0, 0.1)'; - chrome.storage.local.get(['leetcodeProblems'], (result) => { - const problem = result.leetcodeProblems.questions.find((problem: { title: string }) => problem.title === title); - if (problem?.videos?.length) { - let currentVideoIndex = 0; - const { container, iframe, prevButton, nextButton, toggleButton } = createVideoContainer( - problem.videos[currentVideoIndex].embedded_url, - problem.videos[currentVideoIndex].channel, - ); - const firstChild = solutionsTab.firstChild; // Get the first child of solutionsTab - solutionsTab.insertBefore(container, firstChild); // Insert the container before the first child - - prevButton?.addEventListener('click', () => { - currentVideoIndex = (currentVideoIndex - 1 + problem.videos.length) % problem.videos.length; - updateVideo( - container as HTMLDivElement, - problem.videos[currentVideoIndex].embedded_url, - problem.videos[currentVideoIndex].channel, - ); - }); + chrome.storage.local.get(['isDarkTheme'], (result) => { + const isDark = result.isDarkTheme; + codeElement.style.backgroundColor = isDark ? '#2d2d2d' : '#f7f9fa'; + codeElement.style.border = `1px solid ${isDark ? 'rgba(255, 255, 255, 0.1)' : 'rgba(0, 0, 0, 0.1)'}`; + codeElement.style.color = isDark ? '#fff' : '#1a1a1a'; + }); - nextButton?.addEventListener('click', () => { - currentVideoIndex = (currentVideoIndex + 1) % problem.videos.length; - updateVideo( - container as HTMLDivElement, - problem.videos[currentVideoIndex].embedded_url, - problem.videos[currentVideoIndex].channel, - ); - }); + container.appendChild(codeElement); + return container; +} - toggleButton?.addEventListener('click', () => { - const videoContainer = document.querySelector('div.video-container') as HTMLDivElement; - if (videoContainer) { - videoContainer.style.paddingBottom = videoContainer.style.paddingBottom === '0%' ? `${VIDEO_ASPECT_RATIO}% ` : '0%'; - if (videoContainer.style.paddingBottom === '0%') { - toggleButton.style.transform = 'rotate(180deg)'; - } else { - toggleButton.style.transform = 'rotate(0deg)'; - } - toggleButton.style.transition = 'transform 0.3s linear'; +function showContent(type: 'Discussion' | 'Video' | 'Code') { + // Hide all content sections first + const contentSections = document.querySelectorAll('.content-section'); + contentSections.forEach(section => { + (section as HTMLElement).style.display = 'none'; + }); + + // Get the language buttons container + const languageButtons = document.querySelector('.language-buttons-container') as HTMLElement; + if (languageButtons) { + languageButtons.style.display = 'none'; // Hide by default + } + + // Show the selected content + switch (type) { + case 'Video': + const videoContainer = document.querySelector('.video-container') as HTMLElement; + if (videoContainer) { + videoContainer.style.display = 'flex'; + videoContainer.style.paddingBottom = `${VIDEO_ASPECT_RATIO}%`; + } + break; + case 'Code': + const codeSection = document.querySelector('.code-section') as HTMLElement; + if (codeSection) { + codeSection.style.display = 'block'; + // Only show language buttons when code section is active + if (languageButtons) { + languageButtons.style.display = 'flex'; } - }) + } + break; + case 'Discussion': + // No need to do anything as the discussion is the default content + break; + } + + // Update button states + const buttons = document.querySelectorAll('.nav-button'); + buttons.forEach(button => { + const isActive = button.textContent === type; + if (isActive) { + button.classList.add('active'); + } else { + button.classList.remove('active'); + } + }); + + // Show/hide the discussion section + const discussionSection = document.querySelector('.discuss-markdown') as HTMLElement; + if (discussionSection) { + discussionSection.style.display = type === 'Discussion' ? 'block' : 'none'; + } +} + +function createNavContainer(problem: any) { + const navContainer = createStyledElement('div', { + display: 'flex', + justifyContent: 'center', + alignItems: 'center', + gap: '8px', + padding: '16px', + width: '100%', + maxWidth: '800px', + margin: '0 auto', + }); + navContainer.classList.add('nav-container'); + + const buttons = [ + { text: 'Discussion', show: true }, + { text: 'Video', show: problem.videos?.length > 0 }, + { text: 'Code', show: problem.languages?.length > 0 } + ]; + + buttons.forEach(({ text, show }, index) => { + if (!show) return; + + const button = createStyledButton(text, index === 0); + button.addEventListener('click', () => { + showContent(text as 'Discussion' | 'Video' | 'Code'); + }); + navContainer.append(button); + }); - // on hover, change background color of toggleButton - toggleButton?.addEventListener('mouseover', () => { - toggleButton.style.backgroundColor = '#222'; - toggleButton.style.color = '#000'; + return navContainer; +} + +// Convert problem title to GitHub-compatible string +function titleToGitHubFormat(title: string, frontend_id: number): string { + const formattedTitle = title.toLowerCase().replace(/ /g, "-"); + const idStr = frontend_id.toString().padStart(4, '0'); + return `${idStr}-${formattedTitle}`; +} + +// Define the language map type +type SupportedLanguage = 'python' | 'java' | 'javascript' | 'cpp'; + +// Fetches the solution code from Neetcode's github repo +async function getCodeSolution(title: string, frontend_id: number, language: string): Promise { + // map the language names to their extensions + const languageMap: Record = { + 'python': 'py', + 'java': 'java', + 'javascript': 'js', + 'cpp': 'cpp', + }; + + // Type guard to check if the language is supported + if (!isLanguageSupported(language)) { + console.error('Unsupported language:', language); + return null; + } + + // Convert frontend_id and title to the GitHub-compatible format + const formattedTitle = titleToGitHubFormat(title, frontend_id); + const filePath = `${language}/${formattedTitle}.${languageMap[language as SupportedLanguage]}`; + + // Construct the URL to fetch the file content from GitHub + const url = `https://api.github.com/repos/neetcode-gh/leetcode/contents/${filePath}`; + + try { + // Make the API call to fetch the code from GitHub + const response = await fetch(url); + const data = await response.json(); + + // Decode the Base64 encoded content + const code = atob(data.content); + return code; + } catch (error) { + console.error('Failed to fetch code:', error); + return null; + } +} + +// Type guard function to check if a language is supported +function isLanguageSupported(language: string): language is SupportedLanguage { + return ['python', 'java', 'javascript', 'cpp'].includes(language); +} + +function createLanguageButtons(problem: any) { + const container = createStyledElement('div', { + paddingTop: '20px', + marginLeft: '20px', + display: 'flex', + gap: '8px', + flexWrap: 'wrap', + }); + container.classList.add('language-buttons-container'); + + problem.languages.forEach((language: string) => { + const langButton = document.createElement('button'); + langButton.style.display = 'flex'; + langButton.style.alignItems = 'center'; + langButton.style.gap = '8px'; + langButton.style.padding = '6px 12px'; + langButton.style.borderRadius = '6px'; + langButton.style.fontSize = '12px'; + langButton.style.letterSpacing = '.5px'; + langButton.style.transition = 'all 0.2s ease'; + langButton.style.cursor = 'pointer'; + langButton.style.fontWeight = '500'; + + chrome.storage.local.get(['isDarkTheme'], (result) => { + const isDark = result.isDarkTheme; + langButton.style.backgroundColor = isDark ? '#2d2d2d' : '#f3f4f5'; + langButton.style.color = isDark ? '#e6e6e6' : '#2d2d2d'; + langButton.style.border = `1px solid ${isDark ? 'rgba(255, 255, 255, 0.15)' : 'rgba(0, 0, 0, 0.15)'}`; + + // on hover just make the background a few shades darker or lighter + langButton.addEventListener('mouseenter', () => { + langButton.style.backgroundColor = isDark ? '#3d3d3d' : '#e6e6e6'; + langButton.style.borderColor = isDark ? 'rgba(255, 255, 255, 0.25)' : 'rgba(0, 0, 0, 0.25)'; + }); + langButton.addEventListener('mouseleave', () => { + langButton.style.backgroundColor = isDark ? '#2d2d2d' : '#f3f4f5'; + langButton.style.borderColor = isDark ? 'rgba(255, 255, 255, 0.15)' : 'rgba(0, 0, 0, 0.15)'; }); + }); + + const langIcon = document.createElement('img'); + langIcon.src = chrome.runtime.getURL(`src/assets/images/languages/${language}.svg`); + langIcon.style.width = '14px'; + langIcon.style.height = '14px'; + langButton.appendChild(langIcon); + + const langName = document.createElement('span'); + langName.textContent = (language === "cpp") ? "C++" : (language.charAt(0).toUpperCase() + language.slice(1)); + langButton.appendChild(langName); + + langButton.addEventListener('click', async () => { + const code = await getCodeSolution(problem.title, problem.frontend_id, language); + let codeContainer = document.getElementsByClassName('code-container')[0] as HTMLDivElement; + if (codeContainer && code) { + codeContainer.style.display = 'flex'; + codeContainer.textContent = code; + + chrome.storage.local.get(['isDarkTheme'], (result) => { + const isDark = result.isDarkTheme; + codeContainer.style.backgroundColor = isDark ? '#2d2d2d' : '#f7f9fa'; + codeContainer.style.color = isDark ? '#fff' : '#1a1a1a'; + codeContainer.style.border = `1px solid ${isDark ? 'rgba(255, 255, 255, 0.1)' : 'rgba(0, 0, 0, 0.1)'}`; + }); - toggleButton?.addEventListener('mouseout', () => { - toggleButton.style.backgroundColor = 'transparent'; - toggleButton.style.color = '#fff'; + addCopyIconToElement(codeContainer); + } else if (codeContainer) { + codeContainer.style.display = 'flex'; + codeContainer.textContent = 'Code not available'; + } + }); + container.append(langButton); + }); + return container; +} + +function addCopyIconToElement(element: HTMLElement) { + const icon = document.createElement('img'); + icon.src = chrome.runtime.getURL("src/assets/images/copy-icon.png"); + icon.style.width = '30px'; + icon.style.height = '30px'; + icon.style.padding = '5px'; + icon.style.borderRadius = '5px'; + icon.style.cursor = 'pointer'; + icon.style.marginRight = '20px'; + icon.style.transition = 'all 0.2s ease'; + + chrome.storage.local.get(['isDarkTheme'], (result) => { + const isDark = result.isDarkTheme; + icon.style.border = `1px solid ${isDark ? 'rgba(255, 255, 255, 0.1)' : 'rgba(0, 0, 0, 0.1)'}`; + + icon.addEventListener('mouseover', () => { + icon.style.borderColor = isDark ? 'rgba(255, 255, 255, 0.2)' : 'rgba(0, 0, 0, 0.2)'; + }); + icon.addEventListener('mouseout', () => { + icon.style.borderColor = isDark ? 'rgba(255, 255, 255, 0.1)' : 'rgba(0, 0, 0, 0.1)'; + }); + }); + + // On click event if you want to copy something when the icon is clicked + icon.addEventListener('click', () => { + let codeContainer = document.getElementsByClassName('code-container')[0] as HTMLDivElement; + const textToCopy = codeContainer.textContent || ""; + navigator.clipboard.writeText(textToCopy).then(() => { + // Change the icon to a checkmark to indicate that the text has been copied + icon.src = chrome.runtime.getURL("src/assets/images/check-icon.png"); + // After 2 seconds, change the icon back to the copy icon + setTimeout(() => { + icon.src = chrome.runtime.getURL("src/assets/images/copy-icon.png"); + }, 1000); + }).catch(err => { + console.error("Could not copy text: ", err); + }); + }); + + element.insertBefore(icon, element.firstChild); +} + +function updateThemeForElement(element: HTMLElement, isDark: boolean) { + if (!element) return; + + switch (element.className) { + case 'code-container': + element.style.backgroundColor = isDark ? '#2d2d2d' : '#f7f9fa'; + element.style.color = isDark ? '#fff' : '#1a1a1a'; + element.style.border = `1px solid ${isDark ? 'rgba(255, 255, 255, 0.1)' : 'rgba(0, 0, 0, 0.1)'}`; + break; + case 'video-container': + const controls = element.querySelector('div') as HTMLElement; + if (controls) { + controls.style.backgroundColor = isDark ? '#373737' : '#f3f4f5'; + controls.style.color = isDark ? '#fff' : '#1a1a1a'; + controls.style.border = `1px solid ${isDark ? 'rgba(255, 255, 255, 0.1)' : 'rgba(0, 0, 0, 0.1)'}`; + } + const channelElement = element.querySelector('#channel') as HTMLElement; + if (channelElement) { + channelElement.style.color = isDark ? '#fff' : '#1a1a1a'; + } + const iframe = element.querySelector('iframe') as HTMLElement; + if (iframe) { + iframe.style.border = `1px solid ${isDark ? 'rgba(255, 255, 255, 0.1)' : 'rgba(0, 0, 0, 0.1)'}`; + } + break; + case 'language-buttons-container': + const buttons = element.querySelectorAll('button'); + buttons.forEach(button => { + button.style.backgroundColor = isDark ? '#373737' : '#f3f4f5'; + button.style.color = isDark ? '#fff' : '#1a1a1a'; + button.style.border = `1px solid ${isDark ? 'rgba(255, 255, 255, 0.1)' : 'rgba(0, 0, 0, 0.1)'}`; + + // Remove existing listeners + const oldMouseEnter = button.onmouseenter; + const oldMouseLeave = button.onmouseleave; + if (oldMouseEnter) button.removeEventListener('mouseenter', oldMouseEnter); + if (oldMouseLeave) button.removeEventListener('mouseleave', oldMouseLeave); + + // Add new theme-aware listeners + button.addEventListener('mouseenter', () => { + button.style.backgroundColor = isDark ? '#424242' : '#e6e6e6'; + button.style.borderColor = isDark ? 'rgba(255, 255, 255, 0.2)' : 'rgba(0, 0, 0, 0.2)'; + }); + button.addEventListener('mouseleave', () => { + button.style.backgroundColor = isDark ? '#373737' : '#f3f4f5'; + button.style.borderColor = isDark ? 'rgba(255, 255, 255, 0.1)' : 'rgba(0, 0, 0, 0.1)'; + }); }); + break; + } +} + +function setupThemeChangeListener() { + // Listen for our extension's theme changes + chrome.storage.onChanged.addListener((changes) => { + if (changes.isDarkTheme) { + const isDark = changes.isDarkTheme.newValue; + updateAllElements(isDark); + } + }); + + // Listen for LeetCode's theme changes + const observer = new MutationObserver((mutations) => { + mutations.forEach((mutation) => { + if (mutation.target instanceof HTMLElement && mutation.target.tagName === 'BODY') { + chrome.storage.local.get(['themeMode'], (result) => { + // Only sync theme if in auto mode + if (result.themeMode === 'auto') { + const isDark = document.body.classList.contains('dark'); + // Update our extension's theme setting + chrome.storage.local.set({ isDarkTheme: isDark }); + updateAllElements(isDark); + } + }); + } + }); + }); + + // Start observing the body element for class changes + observer.observe(document.body, { + attributes: true, + attributeFilter: ['class'] + }); +} + +function updateAllElements(isDark: boolean) { + const elements = [ + '.code-container', + '.video-container', + '.language-buttons-container', + '.nav-container' + ].map(selector => document.querySelector(selector) as HTMLElement); + + elements.forEach(element => { + if (element) { + if (element.classList.contains('nav-container')) { + // Update nav container buttons + const buttons = element.querySelectorAll('button'); + buttons.forEach(button => { + button.style.backgroundColor = isDark ? '#373737' : '#f3f4f5'; + button.style.color = isDark ? '#fff' : '#1a1a1a'; + button.style.border = `1px solid ${isDark ? 'rgba(255, 255, 255, 0.1)' : 'rgba(0, 0, 0, 0.1)'}`; + + // Remove existing listeners + const oldMouseEnter = button.onmouseenter; + const oldMouseLeave = button.onmouseleave; + if (oldMouseEnter) button.removeEventListener('mouseenter', oldMouseEnter); + if (oldMouseLeave) button.removeEventListener('mouseleave', oldMouseLeave); + + // Add new theme-aware listeners + button.addEventListener('mouseenter', () => { + button.style.backgroundColor = isDark ? '#424242' : '#e6e6e6'; + button.style.borderColor = isDark ? 'rgba(255, 255, 255, 0.2)' : 'rgba(0, 0, 0, 0.2)'; + }); + button.addEventListener('mouseleave', () => { + button.style.backgroundColor = isDark ? '#373737' : '#f3f4f5'; + button.style.borderColor = isDark ? 'rgba(255, 255, 255, 0.1)' : 'rgba(0, 0, 0, 0.1)'; + }); + }); + } else if (element.classList.contains('video-container')) { + // Update only the controls container and channel element colors + const controls = element.querySelector('div') as HTMLElement; + if (controls) { + controls.style.backgroundColor = isDark ? '#373737' : '#f3f4f5'; + controls.style.color = isDark ? '#fff' : '#1a1a1a'; + controls.style.border = `1px solid ${isDark ? 'rgba(255, 255, 255, 0.1)' : 'rgba(0, 0, 0, 0.1)'}`; + } + const channelElement = element.querySelector('#channel') as HTMLElement; + if (channelElement) { + channelElement.style.color = isDark ? '#fff' : '#1a1a1a'; + } + } else { + updateThemeForElement(element, isDark); + } } }); } -function updateVideo(container: HTMLDivElement, videoUrl: string, channelName: string) { - const iframe = container.querySelector('iframe.youtube-video') as HTMLIFrameElement; - const channelElement = container.querySelector('div.channel'); +// Function to update the solutions tab content +function updateSolutionsTab(title: string) { + // Check if we're actually on the solutions tab before proceeding + const isSolutionsPage = /^https:\/\/leetcode\.com\/problems\/.*\/solutions\/?/.test(window.location.href); + if (!isSolutionsPage) return; - if (iframe) iframe.src = videoUrl; - if (channelElement) { - channelElement.textContent = channelName; + // Check if we already have content for this problem + const existingWrapper = document.querySelector('.leetcode-explained-wrapper') as HTMLElement; + if (existingWrapper) { + const currentTitle = document.title.split('-')[0].trim(); + const wrapperTitle = existingWrapper.getAttribute('data-problem-title'); + + // If it's the same problem and the wrapper is in the DOM, preserve state + if (wrapperTitle === currentTitle && document.contains(existingWrapper)) { + return; + } + + // If it's a different problem or wrapper is detached, remove it + existingWrapper.remove(); } + + chrome.storage.local.get(['leetcodeProblems'], (result) => { + // Try to find the search bar with retries + const maxRetries = 10; + const baseDelay = 300; + let retryCount = 0; + + const tryInsertContent = () => { + const searchBar = document.querySelectorAll('input.block')[0]?.parentElement?.parentElement?.parentElement; + + if (!searchBar && retryCount < maxRetries) { + // Use exponential backoff for retry delay + const delay = baseDelay * Math.pow(1.5, retryCount); + retryCount++; + setTimeout(tryInsertContent, delay); + return; + } + + if (!searchBar) { + + // If still not found, set up a MutationObserver to watch for DOM changes + const observer = new MutationObserver((mutations, obs) => { + const searchBar = document.querySelectorAll('input.block')[0]?.parentElement?.parentElement?.parentElement; + if (searchBar) { + obs.disconnect(); // Stop observing once we find the element + // Only insert if we don't already have content for this problem + const existingWrapper = document.querySelector('.leetcode-explained-wrapper'); + if (!existingWrapper || !document.contains(existingWrapper)) { + insertContent(searchBar, title, result); + } + } + }); + + // Start observing the document with the configured parameters + observer.observe(document.body, { + childList: true, + subtree: true + }); + + return; + } + + // Only insert if we don't already have content for this problem + const existingWrapper = document.querySelector('.leetcode-explained-wrapper'); + if (!existingWrapper || !document.contains(existingWrapper)) { + insertContent(searchBar, title, result); + } + }; + + tryInsertContent(); + }); } -chrome.runtime.onMessage.addListener((request) => { - if (request.action === 'addVideo') { - const title = request.title.split('-')[0].trim(); - addVideo(title); +// Helper function to insert the content +function insertContent(searchBar: Element, title: string, result: any) { + const problemTitle = title.split('-')[0].trim(); + const problem = result.leetcodeProblems.questions.find((problem: { title: string }) => problem.title === problemTitle); + + // If no solution code or videos exist, don't do anything + if (!problem?.videos && !problem?.languages) return; + if (problem.videos?.length === 0 && problem.languages?.length === 0) return; + + // Create wrapper for all our custom content + const wrapper = createCustomContentWrapper(); + wrapper.setAttribute('data-problem-title', problemTitle); + + // Create and add nav container + const navContainer = createNavContainer(problem); + wrapper.appendChild(navContainer); + + // Add video container if videos exist + if (problem.videos?.length > 0) { + const videoContainer = createVideoContainer(problem); + wrapper.appendChild(videoContainer); } -}); - -/** - * Prevents the iframe from freezing when it's being resized while the mouse is hovering over it. - */ -window.addEventListener('mousedown', () => { - const iframe = document.querySelector('iframe.youtube-video') as HTMLIFrameElement; - if (iframe) { - iframe.style.pointerEvents = 'none'; + + // Add code container and language buttons if languages exist + if (problem.languages?.length > 0) { + const codeContainer = createCodeContainer(); + const languageButtonsContainer = createLanguageButtons(problem); + languageButtonsContainer.classList.add('language-buttons-container'); + languageButtonsContainer.style.display = 'none'; + + wrapper.appendChild(languageButtonsContainer); + wrapper.appendChild(codeContainer); } -}); -window.addEventListener('mouseup', () => { - const iframe = document.querySelector('iframe.youtube-video') as HTMLIFrameElement; - if (iframe) { - iframe.style.pointerEvents = 'auto'; + // Insert the wrapper at the top of the solutions tab + searchBar.insertBefore(wrapper, searchBar.firstChild); + + // Show discussion by default + showContent('Discussion'); + + // Set up theme change listener + setupThemeChangeListener(); +} + +// Self-initialization function that runs when the content script loads +function initializeSolutionsTab() { + // Function to initialize content + const initialize = () => { + // Get the problem title from the page + const problemTitle = document.title.replace(' - LeetCode', ''); + + // Only update if we don't have content or if it's detached from DOM + const existingWrapper = document.querySelector('.leetcode-explained-wrapper'); + if (!existingWrapper || !document.contains(existingWrapper)) { + updateSolutionsTab(problemTitle); + } + }; + + // Set up page refresh detection using both URL and history state changes + let lastUrl = location.href; + let lastState = history.state; + + const observer = new MutationObserver(() => { + const currentUrl = location.href; + const currentState = history.state; + + // Check if this is a real navigation or just a tab switch + if (currentUrl !== lastUrl || JSON.stringify(currentState) !== JSON.stringify(lastState)) { + lastUrl = currentUrl; + lastState = currentState; + + if (currentUrl.includes('/solutions')) { + initialize(); + } + } + }); + + // Start observing URL changes + observer.observe(document, { subtree: true, childList: true }); + + // Initial load + if (document.readyState === 'loading') { + document.addEventListener('DOMContentLoaded', initialize); + } else { + initialize(); + } +} + +// Initialize the content script +initializeSolutionsTab(); + +// Listen for messages from background script +chrome.runtime.onMessage.addListener((request) => { + if (request.action === 'updateSolutions') { + updateSolutionsTab(request.title); } -}); +}); \ No newline at end of file diff --git a/src/popup/popup.css b/src/popup/popup.css index 2ffa0d4..678a5dd 100644 --- a/src/popup/popup.css +++ b/src/popup/popup.css @@ -1,162 +1,309 @@ -body { - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; - background-color: #202020; - color: #f0f0f0; - font-family: 'Roboto', sans-serif; - padding: 20px; +/* Base theme variables */ +:root { + /* Sizes */ + --base-font-size: 12px; + --button-height: 40px; + --icon-size: 16px; + --spacing: 10px; + --transition-speed: 0.2s; + --border-color: rgba(0, 0, 0, 0.15); + --link-color: #303134; + --text-color: #2d2d2d; + --button-bg-color: #f3f4f5; + --button-hover-bg: #e6e6e6; + --button-hover-border: rgba(0, 0, 0, 0.25); +} + +/* Dark theme */ +[data-theme="dark"] { + --background-color: #202124; + --border-color: rgba(255, 255, 255, 0.15); + --link-color: #8ab4f8; + --button-bg-color: #2d2d2d; + --button-hover-bg: #3d3d3d; + --text-color: #e6e6e6; + --code-bg-color: #303134; + --info-message-bg: rgba(48, 49, 52, 0.5); + --button-hover-border: rgba(255, 255, 255, 0.25); + --active-text: #ffffff; + --active-bg: #404040; +} + +[data-theme="light"] { + --active-text: #000000; + --active-bg: #e0e0e0; +} + +/* Display size variations */ +.small-display { width: 400px; - font-size: var(--dynamic-font-size, 14px); + --base-font-size: 12px; + --button-height: 40px; + --button-width: 170px; + --settings-width: 200px; } -.material-button, -.button, -#info-message { - font-size: var(--dynamic-font-size, 14px); +.medium-display { + width: 550px; + --base-font-size: 14px; + --button-height: 45px; + --button-width: 190px; + --settings-width: 220px; + --icon-size: 18px; + --spacing: 12px; } -a { - color: lightgreen; - text-decoration: none; +.large-display { + width: 700px; + min-height: auto; + max-height: 1500px; + --base-font-size: 16px; + --button-height: 50px; + --button-width: 210px; + --settings-width: 240px; + --icon-size: 20px; + --spacing: 15px; } -a:hover { - color: #a0a0a0; +/* Base styles */ +body { + margin: 0; + padding: 0; + font-family: 'Roboto', -apple-system, sans-serif; + background-color: var(--background-color); + color: var(--color); + font-size: var(--base-font-size); + line-height: 1.5; } -.hidden { - display: none; +/* Common button styles */ +.material-button, .code-btn { + background-color: var(--button-bg-color); + color: var(--text-color); + border: 1px solid var(--border-color); + border-radius: var(--border-radius); + cursor: pointer; + font-size: var(--base-font-size); + letter-spacing: 0.5px; + transition: all var(--transition-speed) ease; } -.button { - display: flex; - justify-content: center; +.material-button:hover, .code-btn:hover { + background-color: var(--button-hover-bg) !important; + border-color: var(--button-hover-border); + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); +} + +/* Links */ +a { + color: var(--link-color); + text-decoration: none; + position: relative; +} + +/* Utility classes */ +.hidden { + display: none; } -/* Title & Settings Button */ +/* Layout components */ .navbar { display: flex; + justify-content: center; + gap: var(--spacing); + height: calc(var(--button-height) + 10px); align-items: center; - margin-bottom: 10px; + border-bottom: 1px solid var(--border-color); } -.title { +.tab { + background: transparent !important; + border: 1px solid transparent; + border-radius: 5px; + font-size: var(--base-font-size); font-weight: 500; - font-size: var(--dynamic-font-size * 2, 28px); - color: lightcyan; + padding: calc(var(--spacing) * 0.6) var(--spacing); + cursor: pointer; + color: var(--text-color); + letter-spacing: 0.5px; + transition: all var(--transition-speed) ease; } -.nav-button { - margin-left: 20px; - cursor: pointer; - padding: 0; - margin-bottom: 0; +.tab:hover { + border: 1px solid var(--button-hover-bg) !important; +} + +.tab.active { + background-color: var(--active-bg) !important; +} + +/* Main content on popup and settings*/ +.main-content { + padding: var(--spacing); + margin-top: calc(var(--button-height) + 5px); + display: flex; + flex-direction: column; + align-items: center; } -/* GPT Buttons */ +/* Button container */ .button-container { display: flex; - flex-direction: row; + justify-content: center; + gap: var(--spacing); + margin-bottom: var(--spacing); + width: 100%; } +/* Main action buttons */ .material-button { - color: white; - background-color: #202020; - border: 1px solid white; - text-decoration: none; - cursor: pointer; - border-radius: 4px; - transition-duration: 0.4s; + height: var(--button-height); + width: var(--button-width); + display: flex; + justify-content: center; align-items: center; - margin-bottom: 20px; - width: 200px; - height: 50px; - margin: 10px; -} - -.material-button:hover { - background-color: #f0f0f0; - color: #202020; } .button-icon { - padding-right: 15px; + padding-right: var(--spacing); + height: var(--icon-size); + width: auto; + opacity: 0.85; } +/* Info message */ #info-message { + width: calc(100% - var(--spacing) * 2); text-align: center; - font-weight: 400; - color: lightcyan; + padding: var(--spacing); + margin-bottom: var(--spacing); + font-size: var(--base-font-size); + color: var(--color); + border-radius: 8px; + background-color: var(--info-message-bg); + letter-spacing: .5px; +} + +/* Response containers */ +.response-area { + width: 100%; + margin-bottom: var(--spacing); } -/* GPT Response */ .response-container { - min-height: 150px; - max-width: 400px; - padding-top: 0; - margin: 0 + background-color: var(--code-bg-color); + color: var(--text-color); + border-radius: var(--border-radius); + border: 1px solid var(--border-color); + padding: var(--spacing); + margin-bottom: var(--spacing); + overflow-y: auto; + box-sizing: border-box; + font-size: var(--base-font-size); } #analyze-code-response { - padding: 15px; + white-space: pre-wrap; + letter-spacing: 1px; +} + +#fix-code-container { + position: relative; + padding-top: 40px; /* Space for buttons */ +} + +#fix-code-container code { + padding-left: 0 !important; /* Remove left padding to fix indentation */ + text-indent: 0 !important; /* Ensure no text indentation */ + display: block; + white-space: pre; +} + +/* Code action buttons */ +#fix-code-container .button-container { + display: flex; + gap: 5px; + position: absolute; + top: 5px; + left: 5px; + z-index: 5; + width: auto; } .code-btn { display: flex; align-items: center; - background-color: #202020; - border: 1px solid #f0f0f0; - border-radius: 10px; - cursor: pointer; - padding: 5px 10px; + padding: calc(var(--spacing) * 0.5); } -.code-btn:hover { - background-color: black; +.code-btn img { + height: var(--icon-size); + width: var(--icon-size); } -#clear-code-btn { - margin-left: 10px; +/* Settings styles */ +.settings-content { + padding-top: var(--spacing); + width: 100%; } -/* Settings */ -#settings-icon { - width: 30px; - height: 30px; +.settings-container { + display: flex; + flex-direction: column; + align-items: center; + width: 100%; + padding: var(--spacing) 0 calc(var(--spacing) * 3); } -.settings-btn { - width: 250px; +.settings-row { + display: flex; + flex-direction: column; + width: var(--settings-width); + margin: calc(var(--spacing) * 0.6) 0; } -#settings-menu { - text-align: center; +.settings-row label { + margin-bottom: 5px; } -.video-container { - display: none; +.settings-btn { + width: var(--settings-width) !important; + margin: calc(var(--spacing) * 0.6) 0; + display: flex; + justify-content: flex-start; + font-size: var(--base-font-size); } -#toggle-video { - margin-bottom: 20px; +.settings-btn span { + margin-right: var(--spacing); } -#toggle-video:hover { - background-color: darkgreen; +.select { + text-align: center !important; + padding: 5px 10px; + appearance: none; + background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23131313%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E"); + background-repeat: no-repeat; + background-position: right 0.7em top 50%; + background-size: 0.65em auto; + padding-right: 20px; + font-size: var(--base-font-size); } -.select { - text-align: center; +/* Footer elements */ +#footer { + width: var(--settings-width); + text-align: left; + letter-spacing: 1px; } -.select:hover { - background-color: black; - color: #f0f0f0; +#footer a{ + padding-top: var(--spacing); + font-size: var(--base-font-size); + opacity: 0.8; + display: inline-block; } -#show-examples-icon, -#show-company-tags-icon { - padding-right: 5px; +#footer a:hover { + opacity: 1; } \ No newline at end of file diff --git a/src/popup/popup.html b/src/popup/popup.html index aa0b10c..1d0e820 100644 --- a/src/popup/popup.html +++ b/src/popup/popup.html @@ -5,50 +5,77 @@ Leetcode Explained + + + - -
- - +
- -

- Open a Leetcode problem to get started -

- - - - - - + + + \ No newline at end of file diff --git a/src/popup/popup.js b/src/popup/popup.js new file mode 100644 index 0000000..10c5de6 --- /dev/null +++ b/src/popup/popup.js @@ -0,0 +1,24 @@ +// Add code to highlight response after it's displayed +document.addEventListener('DOMContentLoaded', function() { + // Function to make the response visible and highlighted + function watchForResponseContent() { + const responseElement = document.getElementById('analyze-code-response'); + + if (responseElement) { + // Create a MutationObserver to detect when content is added + const observer = new MutationObserver(function(mutations) { + mutations.forEach(function(mutation) { + if (mutation.type === 'childList' && mutation.addedNodes.length > 0) { + // Make sure the element is visible by removing the 'hidden' class + responseElement.classList.remove('hidden'); + } + }); + }); + + // Start observing the response element + observer.observe(responseElement, { childList: true, subtree: true }); + } + } + + watchForResponseContent(); +}); \ No newline at end of file diff --git a/src/popup/popup.ts b/src/popup/popup.ts index a1a66cf..5658097 100644 --- a/src/popup/popup.ts +++ b/src/popup/popup.ts @@ -1,7 +1,20 @@ -import { - getChatGPTAccessToken, - ChatGPTProvider, -} from '../background/chatgpt/chatgpt.js'; +/* +Contains the logic behind the popup window that appears when the extension icon is clicked. +Creates the AI buttons, sets the prompts, and displays the responses. +The user can also copy the code to their clipboard, clear the code, and open the settings page. +*/ + +import { initializeTheme } from '../utils/theme.js'; +import { OpenRouterProvider } from '../background/openrouter/openrouter.js'; + +// Add interface for AIProvider at the top level +interface AIProvider { + generateAnswer(params: { + prompt: string, + onEvent: (arg: { type: string, data?: { text: string } }) => void, + action: 'analyze' | 'fix' + }): Promise; +} /* Element selectors */ const selectors: { [key: string]: string } = { @@ -11,11 +24,9 @@ const selectors: { [key: string]: string } = { analyzeCodeResponse: 'analyze-code-response', fixCodeResponse: 'fix-code-response', fixCodeContainer: 'fix-code-container', - codeBtnContainer: 'code-btn-container', copyCodeBtn: 'copy-code-btn', clearCodeBtn: 'clear-code-btn', openSettingsBtn: 'open-settings-btn', - loginBtn: 'login-btn', }; /* Chrome storage keys */ @@ -23,54 +34,51 @@ const storageKeys: { [key: string]: string } = { analyzeCodeResponse: 'analyzeCodeResponse', fixCodeResponse: 'fixCodeResponse', lastAction: 'lastAction', - language: 'language', currentLeetCodeProblemTitle: 'currentLeetCodeProblemTitle', }; /* Retrieve elements from DOM */ const elements: { [key: string]: HTMLElement | null } = {}; -for (let key in selectors) { - elements[key] = document.getElementById(selectors[key]); +for (const key in selectors) { + if (key) elements[key] = document.getElementById(selectors[key]); } -let analyzeCodeResponse = elements['analyzeCodeResponse']; -let fixCodeResponse = elements['fixCodeResponse']; -let infoMessage = elements['infoMessage']; -let fixCodeContainer = elements['fixCodeContainer']; + +const analyzeCodeResponse = elements['analyzeCodeResponse']; +const fixCodeResponse = elements['fixCodeResponse']; +const infoMessage = elements['infoMessage']; +const fixCodeContainer = elements['fixCodeContainer']; /* Helper functions */ function disableAllButtons(disabled: boolean): void { - const buttons = document.querySelectorAll('button'); - buttons.forEach((button) => { - button.disabled = disabled; - }); + let fixCodeButton = elements['fixCodeBtn'] as HTMLButtonElement; + let getComplexityButton = elements['getComplexityBtn'] as HTMLButtonElement; + + // Use the arguments to determine if a specific button should be disabled + fixCodeButton && (fixCodeButton.disabled = disabled); + getComplexityButton && (getComplexityButton.disabled = disabled); } function clearResponse(): void { - analyzeCodeResponse!.textContent = ''; - fixCodeResponse!.textContent = ''; - fixCodeContainer!.classList.add('hidden'); - analyzeCodeResponse!.classList.add('hidden'); + if (analyzeCodeResponse) analyzeCodeResponse.textContent = ''; + if (fixCodeResponse) fixCodeResponse.textContent = ''; + if (fixCodeContainer) fixCodeContainer.classList.add('hidden'); + if (analyzeCodeResponse) analyzeCodeResponse.classList.add('hidden'); + chrome.storage.local.set({ 'fixCodeResponse': '' }); chrome.storage.local.set({ 'analyzeCodeResponse': '' }); } -function setInfoMessage(message: string, duration: number) { - let oldMessage = infoMessage!.textContent; - infoMessage!.textContent = message; - setTimeout(() => { - infoMessage!.textContent = oldMessage; - }, duration); -} - -function initActionButton(buttonId: string, action: string, chatGPTProvider: ChatGPTProvider): void { - const actionButton = document.getElementById(buttonId)!; +function initActionButton(buttonId: string, action: 'analyze' | 'fix', aiProvider: AIProvider): void { + const actionButton = document.getElementById(buttonId); + if (!actionButton) return; actionButton.onclick = async () => { const codeText = await getCodeFromActiveTab(); if (codeText) { - processCode(chatGPTProvider, codeText, action); + //console.log(codeText); + processCode(aiProvider, codeText, action); } else { - let errorMessage = 'Unable to retrieve code. Please navigate to a Leetcode problem page and refresh the page.'; + const errorMessage = "Cannot read from page. Please open a Leetcode problem and refresh the page."; setInfoMessage(errorMessage, 5000); } }; @@ -80,8 +88,8 @@ async function getCodeFromActiveTab(): Promise { return new Promise((resolve) => { chrome.tabs.query({ active: true, currentWindow: true }, (tabs) => { chrome.tabs.sendMessage( - tabs[0].id!, - { type: 'getCode' }, + tabs[0].id as number, + { type: 'getProblem' }, (response) => { if (chrome.runtime.lastError) { resolve(null); @@ -90,235 +98,291 @@ async function getCodeFromActiveTab(): Promise { } }, ); - }); + }); }); } +function timeout(ms: number): Promise { + return new Promise((_, reject) => + setTimeout(() => reject(new Error(`Operation timed out after ${ms} ms`)), ms) + ); +} + +function formatResponseText(text: string): string { + // Get the current theme from the document attribute + const isDarkTheme = document.documentElement.getAttribute('data-theme') === 'dark'; + const complexityColor = isDarkTheme ? '#1abc9c' : '#0057b8'; // teal vs rich blue + + return text + .replace(/time/gi, `time complexity`) + .replace(/space/gi, `space complexity`) + .replace(/O\([^)]+\)/g, `$&`); +} + +function stripMarkdownCodeBlock(text: string): string { + // Remove any text between the first set of ``` + text = text.replace(/```[^\n]*\n/, ''); + // Remove trailing ``` + text = text.replace(/```$/, ''); + return text; +} + +function setInfoMessage(message: string, duration: number, isError: boolean = false) { + if (!infoMessage) return; + const oldMessage = infoMessage.textContent; + infoMessage.textContent = message; + + // Add error styling if it's an error + if (isError) { + infoMessage.style.color = '#ff4444'; + } + + setTimeout(() => { + infoMessage.textContent = oldMessage; + infoMessage.style.color = ''; // Reset color + }, duration); +} + function processCode( - chatGPTProvider: ChatGPTProvider, + aiProvider: AIProvider, codeText: string, - action: string, + action: 'analyze' | 'fix', ): void { - disableAllButtons(true); clearResponse(); - let problemTitle = infoMessage!.textContent; - let prompt: string = ""; - if (action === "analyze") { + const problemTitle = infoMessage && infoMessage.textContent; + + let prompt = ''; + if (action === 'analyze') { prompt = ` - As an experienced software engineer, please analyze the Leetcode problem titled ${problemTitle} and the accompanying code below. - Your analysis should be concise and straightforward, providing both time and space complexity in big O notation. - Please include a brief, concise explanation (no more than 1-2 lines) for each complexity analysis. - Space complexity should not include the output (return value) of the function. - Your analysis should be direct and to the point. - The code is provided below. - `; - infoMessage!.textContent = 'Analyzing code complexity ...'; - analyzeCodeResponse!.classList.remove('hidden'); - fixCodeContainer!.classList.add('hidden'); + As an experienced software engineer, please analyze the code complexity of the Leetcode + problem titled ${problemTitle} and the accompanying code below. The output (return value) of + the function should not be factored into the time and space complexity of the function. + Return the time and space complexity of the function in big O notation. Your analysis should be direct and concise + with no more than two sentences. The problem description and code are provided below\n. ${codeText}`; + if (infoMessage) infoMessage.textContent = 'Analyzing code complexity ...'; + + if (analyzeCodeResponse) analyzeCodeResponse.classList.remove('hidden'); + if (fixCodeContainer) fixCodeContainer.classList.add('hidden'); } - else if (action === "fix") { + else if (action === 'fix') { prompt = ` - As a coding expert, I require your aid with a specific LeetCode problem called ${problemTitle}. - If you are given only the function definition, your task is to generate the best possible solution for this problem. - On the other hand, if the code is already provided, there may be some errors that are preventing it from being accepted. - Please identify and fix any potential issues in the code. - If the provided code is already correct and optimized, please return it as is. - All code should be returned in plain text format, with no usage of code blocks. - Inline comments are permitted, but only if they are essential. - The code is provided below. - - `; - infoMessage!.textContent = 'Creating the solution ...'; - analyzeCodeResponse!.classList.add('hidden'); - fixCodeContainer!.classList.remove('hidden'); + As a coding professional, I need your expertise with a specific LeetCode problem named ${problemTitle}. + Please follow the instructions: + 1. If no code is provided: Generate an efficient and accurate solution for the problem. + 2. If code is provided and contains errors: Identify the issues, correct them, and optimize the code if possible. + 3. If the provided code is already correct and optimized: Simply return it as-is. + IMPORTANT: Your response should only include the function definition and code solution in plain text format (no backticks, code blocks, or additional formatting). + Do not explain your solution or provide any additional information other than the code. + Here's the problem description, restraints, examples, and code:\n + ${codeText}` + if (infoMessage) infoMessage.textContent = 'Getting solution code ...'; + + if (fixCodeContainer) fixCodeContainer.classList.remove('hidden'); + if (analyzeCodeResponse) analyzeCodeResponse.classList.add('hidden'); } - prompt += '\n' + codeText; let response = ''; - chatGPTProvider.generateAnswer({ - prompt: prompt, - onEvent: (event: { type: string; data?: { text: string } }) => { - if (event.type === 'answer' && event.data) { - response += event.data.text; - if (action === "fix") { - fixCodeResponse!.textContent = response; + Promise.race([ + aiProvider.generateAnswer({ + prompt: prompt, + action: action, + onEvent: (event: { type: string; data?: { text: string } }) => { + if (event.type === 'error' && event.data) { + // Handle error events + setInfoMessage(event.data.text, 5000, true); + disableAllButtons(false); + return; + } + + if (event.type === 'answer' && event.data) { + if (action === 'fix' && fixCodeResponse) { + response += event.data.text; + fixCodeResponse.textContent = stripMarkdownCodeBlock(response); + (window as any).Prism.highlightAll(); + } + else if (action === 'analyze' && analyzeCodeResponse) { + response += formatResponseText(event.data.text); + analyzeCodeResponse.innerHTML = response; + } } - else if (action === "analyze") { - analyzeCodeResponse!.textContent = response; + if (event.type === 'done') { + disableAllButtons(false); + chrome.storage.local.set({ 'lastAction': action }); + infoMessage && (infoMessage.textContent = problemTitle); + if (action === 'fix') { + fixCodeResponse && chrome.storage.local.set({ 'fixCodeResponse': fixCodeResponse.textContent }); + (window as any).Prism.highlightAll(); + } + if (action === 'analyze') { + analyzeCodeResponse && chrome.storage.local.set({ 'analyzeCodeResponse': analyzeCodeResponse.innerHTML }); + } } - } - if (event.type === 'done') { - chrome.storage.local.set({ 'analyzeCodeResponse': analyzeCodeResponse!.textContent }); - chrome.storage.local.set({ 'fixCodeResponse': fixCodeResponse!.textContent }); - chrome.storage.local.set({ 'lastAction': action }); - infoMessage!.textContent = problemTitle; - disableAllButtons(false); - (window as any).Prism.highlightAll(); - } - }, + }, + }), + timeout(20000) + ]).catch((error) => { + setInfoMessage(error.message, 5000, true); + console.error(error); + disableAllButtons(false); }); -} - -async function main(): Promise { +} - await Promise.all([ +async function loadStoredData(): Promise { + const [analyzeCodeResponseStored, fixCodeResponseStored, lastAction] = await Promise.all([ getFromStorage(storageKeys.analyzeCodeResponse), getFromStorage(storageKeys.fixCodeResponse), getFromStorage(storageKeys.lastAction), - getFromStorage(storageKeys.language), - ]); - - let fontSizeElement = document.documentElement; // Or any specific element you want to change the font size of - - // Load font size from storage - chrome.storage.local.get('fontSize', function (data) { - if (data.fontSize) { - // Setting CSS variable --dynamic-font-size with the loaded value - fontSizeElement.style.setProperty('--dynamic-font-size', `${data.fontSize}px`); - - if (parseInt(data.fontSize) >= 18) { - let width = (parseInt(data.fontSize) * 24 + 200); - document.body.style.width = `${width + 20}px`; - fixCodeContainer!.style.maxWidth = `${width}px`; - analyzeCodeResponse!.style.maxWidth = `${width}px`; - } - - let sizes = document.getElementsByClassName('material-button'); - for (let i = 0; i < sizes.length; i++) { - (sizes[i] as HTMLElement).style.width = `${data.fontSize * 13}px`; - } - } - }); - - chrome.storage.local.get('analyzeCodeResponse', function (data) { - if (data.analyzeCodeResponse) { - analyzeCodeResponse!.textContent = data.analyzeCodeResponse; - (window as any).Prism.highlightAll(); - } - }); + ]) as [string, string, string]; - chrome.storage.local.get('fixCodeResponse', function (data) { - if (data.fixCodeResponse) { - fixCodeResponse!.textContent = data.fixCodeResponse; - (window as any).Prism.highlightAll(); - } - }); + if (analyzeCodeResponseStored && lastAction === 'analyze') { + analyzeCodeResponse && (analyzeCodeResponse.innerHTML = analyzeCodeResponseStored); + analyzeCodeResponse?.classList.remove('hidden'); + } - chrome.storage.local.get('lastAction', function (data) { - if (data.lastAction) { - if (data.lastAction === "analyze") { - analyzeCodeResponse!.classList.remove('hidden'); - fixCodeContainer!.classList.add('hidden'); - } - else if (data.lastAction === "fix") { - analyzeCodeResponse!.classList.add('hidden'); - fixCodeContainer!.classList.remove('hidden'); - } - } - }); + if (fixCodeResponseStored && lastAction === 'fix') { + fixCodeResponse && (fixCodeResponse.textContent = fixCodeResponseStored); + fixCodeContainer?.classList.remove('hidden'); + (window as any).Prism.highlightAll(); + } +} - // get language from storage and set the classname of the code block to it - chrome.storage.local.get('language', function (data) { - fixCodeResponse!.classList.add('language-' + data.language); - }); +async function main(): Promise { + initializeTheme(); + initializeScaleFactor(); + await loadStoredData(); - // get name of current tab and set info message to it if its a leetcode problem + // get name of current tab and set info message, also check theme if in auto mode chrome.tabs.query({ active: true, currentWindow: true }, (tabs) => { const tab = tabs[0]; - if (tab.url!.includes('leetcode.com/problems')) { + if (tab.url && tab.url.includes('leetcode.com/problems')) { chrome.storage.local.set({ 'currentLeetCodeProblemTitle': tab.title }); - if (tab.title) { - infoMessage!.textContent = tab.title?.split('-')[0]; + if (tab.title && infoMessage) { + infoMessage.textContent = tab.title.split('-')[0]; } + + // Check if we're in auto mode and need to sync theme + chrome.storage.local.get(['themeMode'], (result) => { + if (result.themeMode === 'auto') { + // Send a message to detect theme + chrome.tabs.sendMessage( + tab.id as number, + { action: 'getTheme' }, + (response) => { + if (!chrome.runtime.lastError && response && response.theme) { + // Apply detected theme + document.documentElement.setAttribute('data-theme', response.theme); + chrome.storage.local.set({ + isDarkTheme: response.theme === 'dark' + }); + } + } + ); + } + }); } }); + elements['openSettingsBtn'] && (elements['openSettingsBtn'].onclick = () => { + window.location.href = 'settings.html'; + }); + try { - const accessToken = await getChatGPTAccessToken(); - if (accessToken) { - const chatGPTProvider = new ChatGPTProvider(accessToken); - initActionButton('get-complexity-btn', 'analyze', chatGPTProvider); - initActionButton('fix-code-btn', 'fix', chatGPTProvider); - initCopyButton(); - initClearButton(); - elements['getComplexityBtn']!.classList.remove('hidden'); - elements['fixCodeBtn']!.classList.remove('hidden'); - } - else { - displayLoginMessage(); + const openRouterProvider = new OpenRouterProvider(); + initActionButton('get-complexity-btn', 'analyze', openRouterProvider); + initActionButton('fix-code-btn', 'fix', openRouterProvider); + initCopyButton(); + initClearButton(); + elements['getComplexityBtn']?.classList.remove('hidden'); + elements['fixCodeBtn']?.classList.remove('hidden'); + } catch (error) { + console.error('Failed to initialize popup:', error); + } +} +// Function to initialize scale factor based on saved font size +function initializeScaleFactor(): void { + // Get font size and set the scale factor + chrome.storage.local.get('fontSize', function(data) { + const fontSize = data.fontSize; + let scaleFactor: number; + const body = document.body; + + // Remove all display size classes + body.classList.remove('small-display', 'medium-display', 'large-display'); + + if (fontSize) { + switch (fontSize.toString()) { + case '12': // Small + scaleFactor = 0.85; + body.classList.add('small-display'); + break; + case '14': // Medium + scaleFactor = 1.1; + body.classList.add('medium-display'); + break; + case '16': // Large + scaleFactor = 1.3; + body.classList.add('large-display'); + break; + default: + scaleFactor = 1.0; + break; + } + document.documentElement.style.setProperty('--scale-factor', scaleFactor.toString()); } - elements['openSettingsBtn']!.onclick = () => { - window.location.href = 'settings.html'; - }; - } - catch (error) { - handleError(error as Error); - } + }); } +// Remove displayApiKeyMessage function since it's no longer needed + function initCopyButton(): void { const copyButton = elements['copyCodeBtn']; - copyButton!.onclick = async () => { - setInfoMessage('Copied Code', 3000); - if (fixCodeResponse!.textContent) { - await navigator.clipboard.writeText(fixCodeResponse!.textContent); + if (!copyButton) return; + copyButton.onclick = async () => { + setInfoMessage('Copied Code', 1000); + // Change icon to check-icon.png + const copyButtonImg = copyButton.querySelector('img'); + if (copyButtonImg) { + copyButtonImg.src = '../assets/images/check-icon.png'; + // After 1 second, change the icon back to the copy icon + setTimeout(() => { + copyButtonImg.src = '../assets/images/copy-icon.png'; + }, 1000); + } + + if (fixCodeResponse && fixCodeResponse.textContent) { + await navigator.clipboard.writeText(fixCodeResponse.textContent); } }; - copyButton!.classList.remove('hidden'); + copyButton.classList.remove('hidden'); } -// init clear code button function initClearButton(): void { - const clearButton = elements['clearCodeBtn'] - clearButton!.onclick = async () => { - setInfoMessage('Cleared Response', 3000); + const clearButton = elements['clearCodeBtn']; + clearButton && (clearButton.onclick = async () => { + setInfoMessage('Cleared Response', 2000); clearResponse(); - }; -} - -/* Error handling functions */ -function handleError(error: Error): void { - if (error.message === 'UNAUTHORIZED' || error.message === 'CLOUDFLARE') { - displayLoginMessage(); - } else { - console.error('Error:', error); - displayErrorMessage(error.message); - } -} - -function displayLoginMessage(): void { - elements['loginBtn']!.classList.remove('hidden'); - infoMessage!.textContent = - 'Log into ChatGPT in your browser to get started'; -} - -function displayErrorMessage(error: string): void { - infoMessage!.textContent = error; + }); } -/* Event listeners */ -elements['loginBtn']!.onclick = () => { - chrome.runtime.sendMessage({ type: 'OPEN_LOGIN_PAGE' }); -}; -chrome.runtime.onMessage.addListener((message, sender, sendResponse) => { +chrome.runtime.onMessage.addListener((message) => { if (message.action === 'setTabInfo') { const urlPattern = /^https:\/\/leetcode\.com\/problems\/.*\/?/; if (message.url.match(urlPattern)) { - infoMessage!.textContent = message.title; + infoMessage && (infoMessage.textContent = message.title); } } }); /* Utility functions */ -function getFromStorage(key: string) { +function getFromStorage(key: string): Promise { return new Promise((resolve) => { - chrome.storage.local.get(key, (data) => resolve(data[key])); + chrome.storage.local.get(key, (data) => resolve(data[key] || '')); }); } /* Run the main function */ -main(); \ No newline at end of file +main(); diff --git a/src/popup/prism.css b/src/popup/prism.css index 14422ba..b0ea8aa 100644 --- a/src/popup/prism.css +++ b/src/popup/prism.css @@ -1,6 +1,71 @@ /* PrismJS 1.29.0 https://prismjs.com/download.html#themes=prism-twilight&languages=markup+css+clike+javascript+css-extras+python&plugins=autolinker+highlight-keywords+inline-color+autoloader+match-braces */ -code[class*=language-],pre[class*=language-]{color:#fff;background:0 0;font-family:Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;font-size:1em;text-align:left;text-shadow:0 -.1em .2em #000;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}:not(pre)>code[class*=language-],pre[class*=language-]{background:#141414}pre[class*=language-]{border-radius:.5em;border:.3em solid #545454;box-shadow:1px 1px .5em #000 inset;margin:.5em 0;overflow:auto;padding:1em}pre[class*=language-]::-moz-selection{background:#27292a}pre[class*=language-]::selection{background:#27292a}code[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,pre[class*=language-]::-moz-selection{text-shadow:none;background:hsla(0,0%,93%,.15)}code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{text-shadow:none;background:hsla(0,0%,93%,.15)}:not(pre)>code[class*=language-]{border-radius:.3em;border:.13em solid #545454;box-shadow:1px 1px .3em -.1em #000 inset;padding:.15em .2em .05em;white-space:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#777}.token.punctuation{opacity:.7}.token.namespace{opacity:.7}.token.boolean,.token.deleted,.token.number,.token.tag{color:#ce6849}.token.builtin,.token.constant,.token.keyword,.token.property,.token.selector,.token.symbol{color:#f9ed99}.language-css .token.string,.style .token.string,.token.attr-name,.token.attr-value,.token.char,.token.entity,.token.inserted,.token.operator,.token.string,.token.url,.token.variable{color:#909e6a}.token.atrule{color:#7385a5}.token.important,.token.regex{color:#e8c062}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.language-markup .token.attr-name,.language-markup .token.punctuation,.language-markup .token.tag{color:#ac885c}.token{position:relative;z-index:1}.line-highlight.line-highlight{background:hsla(0,0%,33%,.25);background:linear-gradient(to right,hsla(0,0%,33%,.1) 70%,hsla(0,0%,33%,0));border-bottom:1px dashed #545454;border-top:1px dashed #545454;margin-top:.75em;z-index:0}.line-highlight.line-highlight:before,.line-highlight.line-highlight[data-end]:after{background-color:#8693a6;color:#f4f1ef} +code[class*=language-],pre[class*=language-]{color:#fff;background:0 0;font-family:Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}:not(pre)>code[class*=language-],pre[class*=language-]{background:#141414}pre[class*=language-]{border-radius:.5em;border:.3em solid #545454;margin:.5em 0;overflow:auto;padding:1em}pre[class*=language-]::-moz-selection{background:#27292a}pre[class*=language-]::selection{background:#27292a}code[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,pre[class*=language-]::-moz-selection{text-shadow:none;background:hsla(0,0%,93%,.15)}code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{text-shadow:none;background:hsla(0,0%,93%,.15)}:not(pre)>code[class*=language-]{border-radius:.3em;border:.13em solid #545454;padding:.15em .2em .05em;white-space:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#777}.token.punctuation{opacity:.7}.token.namespace{opacity:.7}.token.boolean,.token.deleted,.token.number,.token.tag{color:#ce6849}.token.builtin,.token.constant,.token.keyword,.token.property,.token.selector,.token.symbol{color:#f9ed99}.language-css .token.string,.style .token.string,.token.attr-name,.token.attr-value,.token.char,.token.entity,.token.inserted,.token.operator,.token.string,.token.url,.token.variable{color:#909e6a}.token.atrule{color:#7385a5}.token.important,.token.regex{color:#e8c062}.token.bold,.token.italic{font-style:italic}.token.entity{cursor:help}.language-markup .token.attr-name,.language-markup .token.punctuation,.language-markup .token.tag{color:#ac885c}.token{position:relative;z-index:1}.line-highlight.line-highlight{background:hsla(0,0%,33%,.25);background:linear-gradient(to right,hsla(0,0%,33%,.1) 70%,hsla(0,0%,33%,0));border-bottom:1px dashed #545454;border-top:1px dashed #545454;margin-top:.75em;z-index:0}.line-highlight.line-highlight:before,.line-highlight.line-highlight[data-end]:after{background-color:#8693a6;color:#f4f1ef} .token a{color:inherit} span.inline-color-wrapper{background:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyIDIiPjxwYXRoIGZpbGw9ImdyYXkiIGQ9Ik0wIDBoMnYySDB6Ii8+PHBhdGggZmlsbD0id2hpdGUiIGQ9Ik0wIDBoMXYxSDB6TTEgMWgxdjFIMXoiLz48L3N2Zz4=);background-position:center;background-size:110%;display:inline-block;height:1.333ch;width:1.333ch;margin:0 .333ch;box-sizing:border-box;border:1px solid #fff;outline:1px solid rgba(0,0,0,.5);overflow:hidden}span.inline-color{display:block;height:120%;width:120%} .token.punctuation.brace-hover,.token.punctuation.brace-selected{outline:solid 1px}.rainbow-braces .token.punctuation.brace-level-1,.rainbow-braces .token.punctuation.brace-level-5,.rainbow-braces .token.punctuation.brace-level-9{color:#e50;opacity:1}.rainbow-braces .token.punctuation.brace-level-10,.rainbow-braces .token.punctuation.brace-level-2,.rainbow-braces .token.punctuation.brace-level-6{color:#0b3;opacity:1}.rainbow-braces .token.punctuation.brace-level-11,.rainbow-braces .token.punctuation.brace-level-3,.rainbow-braces .token.punctuation.brace-level-7{color:#26f;opacity:1}.rainbow-braces .token.punctuation.brace-level-12,.rainbow-braces .token.punctuation.brace-level-4,.rainbow-braces .token.punctuation.brace-level-8{color:#e0e;opacity:1} + +/* Light theme overrides */ +[data-theme="light"] code[class*=language-], +[data-theme="light"] pre[class*=language-] { + color: #333; + text-shadow: none; + background: #f5f5f5; +} + +[data-theme="light"] :not(pre)>code[class*=language-], +[data-theme="light"] pre[class*=language-] { + background: #f5f5f5; + border: 1px solid #ddd; +} + +[data-theme="light"] .token.comment, +[data-theme="light"] .token.prolog, +[data-theme="light"] .token.doctype, +[data-theme="light"] .token.cdata { + color: #666; +} + +[data-theme="light"] .token.punctuation { + color: #666; + opacity: 1; +} + +[data-theme="light"] .token.boolean, +[data-theme="light"] .token.number, +[data-theme="light"] .token.deleted, +[data-theme="light"] .token.tag { + color: #905; +} + +[data-theme="light"] .token.builtin, +[data-theme="light"] .token.constant, +[data-theme="light"] .token.keyword, +[data-theme="light"] .token.property, +[data-theme="light"] .token.selector, +[data-theme="light"] .token.symbol { + color: #07a; +} + +[data-theme="light"] .token.attr-name, +[data-theme="light"] .token.attr-value, +[data-theme="light"] .token.char, +[data-theme="light"] .token.entity, +[data-theme="light"] .token.inserted, +[data-theme="light"] .token.operator, +[data-theme="light"] .token.string, +[data-theme="light"] .token.url, +[data-theme="light"] .token.variable, +[data-theme="light"] .language-css .token.string, +[data-theme="light"] .style .token.string { + color: #690; +} + +[data-theme="light"] .token.atrule { + color: #07a; +} + +[data-theme="light"] .token.important, +[data-theme="light"] .token.regex { + color: #e90; +} diff --git a/src/popup/settings.html b/src/popup/settings.html index 07328e4..2c01af7 100644 --- a/src/popup/settings.html +++ b/src/popup/settings.html @@ -4,33 +4,67 @@ Settings + + + - - - - - +
+
+
+ + +
+
+ + +
+ + + + + +
+
+ + + \ No newline at end of file diff --git a/src/popup/settings.js b/src/popup/settings.js new file mode 100644 index 0000000..50c65b4 --- /dev/null +++ b/src/popup/settings.js @@ -0,0 +1,102 @@ +/* + Handles settings page functionality with proper message passing +*/ + +document.addEventListener('DOMContentLoaded', () => { + // Home button navigation + const homeButton = document.getElementById('open-home-btn'); + homeButton.onclick = () => { + window.location.href = 'popup.html'; + }; + + // Theme toggle handlers + const themeSelect = document.getElementById('theme-select'); + const fontSizeSelect = document.getElementById('font-size-select'); + + // Initialize settings icons + chrome.storage.local.get(['showCompanyTags', 'showExamples', 'showDifficulty', 'showRating'], (result) => { + const showCompanyTagsIcon = document.getElementById('show-company-tags-icon'); + const showExamplesIcon = document.getElementById('show-examples-icon'); + const showDifficultyIcon = document.getElementById('show-difficulty-icon'); + const showRatingIcon = document.getElementById('show-rating-icon'); + + if (showCompanyTagsIcon) showCompanyTagsIcon.textContent = result.showCompanyTags ? '✅' : '❌'; + if (showExamplesIcon) showExamplesIcon.textContent = result.showExamples ? '✅' : '❌'; + if (showDifficultyIcon) showDifficultyIcon.textContent = result.showDifficulty ? '✅' : '❌'; + if (showRatingIcon) showRatingIcon.textContent = result.showRating ? '✅' : '❌'; + }); + + // Helper function to send messages safely to content script + function safelySendMessage(message) { + chrome.tabs.query({active: true, currentWindow: true}, (tabs) => { + if (!tabs || !tabs[0] || !tabs[0].id) { + return; + } + + try { + chrome.tabs.sendMessage(tabs[0].id, message, response => { + if (chrome.runtime.lastError) { + console.error('Error sending message:', chrome.runtime.lastError.message); + // Attempt to inject the content script if it's not already injected + chrome.scripting.executeScript({ + target: { tabId: tabs[0].id }, + files: ['dist/content-script/update-description-tab.js'] + }).then(() => { + // Try sending the message again after injecting the script + setTimeout(() => { + chrome.tabs.sendMessage(tabs[0].id, message); + }, 100); + }).catch(err => { + console.error('Error injecting content script:', err); + }); + } + }); + } catch (error) { + console.error('Error sending message:', error); + } + }); + } + + // Set up toggle event handlers + const showCompanyTagsBtn = document.getElementById('show-company-tags-btn'); + showCompanyTagsBtn && showCompanyTagsBtn.addEventListener('click', function() { + chrome.storage.local.get(['showCompanyTags'], (result) => { + const showCompanyTags = !result.showCompanyTags; + chrome.storage.local.set({ showCompanyTags: showCompanyTags }, () => { + const showCompanyTagsIcon = document.getElementById('show-company-tags-icon'); + if (showCompanyTagsIcon) showCompanyTagsIcon.textContent = showCompanyTags ? '✅' : '❌'; + safelySendMessage({ action: 'updateDescription', title: document.title || 'title' }); + }); + }); + }); + + const showExamplesBtn = document.getElementById('show-examples-btn'); + showExamplesBtn && showExamplesBtn.addEventListener('click', function() { + chrome.storage.local.get(['showExamples'], (result) => { + const showExamples = !result.showExamples; + chrome.storage.local.set({ showExamples: showExamples }, () => { + const showExamplesIcon = document.getElementById('show-examples-icon'); + if (showExamplesIcon) showExamplesIcon.textContent = showExamples ? '✅' : '❌'; + safelySendMessage({ action: 'updateDescription', title: document.title || 'title' }); + }); + }); + }); + + const showDifficultyBtn = document.getElementById('show-difficulty-btn'); + showDifficultyBtn && showDifficultyBtn.addEventListener('click', function() { + chrome.storage.local.get(['showDifficulty'], (result) => { + const showDifficulty = !result.showDifficulty; + chrome.storage.local.set({ showDifficulty: showDifficulty }, () => { + const showDifficultyIcon = document.getElementById('show-difficulty-icon'); + if (showDifficultyIcon) showDifficultyIcon.textContent = showDifficulty ? '✅' : '❌'; + safelySendMessage({ action: 'updateDescription', title: document.title || 'title' }); + }); + }); + }); + + // Font size handler (simplified for this fix) + fontSizeSelect && fontSizeSelect.addEventListener('change', function() { + const fontSize = this.value; + chrome.storage.local.set({ fontSize: parseInt(fontSize) }); + }); +}); \ No newline at end of file diff --git a/src/popup/settings.ts b/src/popup/settings.ts index 03a9a2e..3f54b5c 100644 --- a/src/popup/settings.ts +++ b/src/popup/settings.ts @@ -1,79 +1,188 @@ -document.getElementById('home-button')!.onclick = () => { - window.location.href = 'popup.html'; +/* + Manages the settings page which is opened when the user clicks on the settings icon in the popup + The user can toggle the following settings: + - Show examples + - Show difficulty + - The user can also change the font size of the description + The Leetcode problem's descriptions tab will be updated with the new settings +*/ + +import { initializeTheme, setTheme } from "../utils/theme.js"; + +const homeButton = document.getElementById('open-home-btn') as HTMLButtonElement; +homeButton.onclick = () => { + // Preserve theme settings when navigating between pages + chrome.storage.local.get(['isDarkTheme', 'themeMode'], (result) => { + // Save current theme state to localStorage to ensure it persists + if (result.isDarkTheme !== undefined) { + localStorage.setItem('leetcode-explained-theme', result.isDarkTheme ? 'dark' : 'light'); + } + // Navigate to home page + window.location.href = 'popup.html'; + }); }; -document.addEventListener('DOMContentLoaded', (event) => { +document.addEventListener('DOMContentLoaded', () => { + // Initialize theme settings + initializeTheme(); + + // Set up theme dropdown + const themeSelect = document.getElementById('theme-select') as HTMLSelectElement; + if (themeSelect) { + // Set up change listener + themeSelect.addEventListener('change', () => { + const selectedValue = themeSelect.value as 'dark' | 'light' | 'auto'; + + // Apply the selected theme + setTheme(selectedValue); + + // Update LeetCode problem if active - only update solutions tab + chrome.tabs.query({ active: true, currentWindow: true }, (tabs) => { + if (tabs[0] && tabs[0].id) { + chrome.tabs.sendMessage(tabs[0].id, { action: 'updateSolutions', title: tabs[0].title || 'title' }); + } + }); + }); + } + + // Get font size and set the scale factor + const fontSizeSelect = document.getElementById('font-size-select') as HTMLSelectElement; + chrome.storage.local.get('fontSize', function (data) { + if (data.fontSize) { + fontSizeSelect.value = data.fontSize.toString(); + updateScaleFactor(data.fontSize.toString()); + } else { + // Default to small if not set + fontSizeSelect.value = '12'; + updateScaleFactor('12'); + chrome.storage.local.set({ fontSize: 12 }); + } + }); + + fontSizeSelect.onchange = function (event: Event) { + const selectedFontSize = (event.target as HTMLInputElement).value; + chrome.storage.local.set({ fontSize: parseInt(selectedFontSize) }); + updateScaleFactor(selectedFontSize); + }; + + // Function to update scale factor based on font size + function updateScaleFactor(fontSize: string) { + let scaleFactor: number; + const body = document.body; + + // Remove all display size classes + body.classList.remove('small-display', 'medium-display', 'large-display'); + + switch (fontSize) { + case '12': // Small + scaleFactor = 0.85; + body.classList.add('small-display'); + break; + case '14': // Medium + scaleFactor = 1.1; + body.classList.add('medium-display'); + break; + case '16': // Large + scaleFactor = 1.3; + body.classList.add('large-display'); + break; + default: + scaleFactor = 1.0; + break; + } + + document.documentElement.style.setProperty('--scale-factor', scaleFactor.toString()); + } + + // Initialize settings toggles chrome.storage.local.get(['showCompanyTags'], (result) => { - let showCompanyTagsIcon = document.getElementById('show-company-tags-icon'); - showCompanyTagsIcon!.textContent = result.showCompanyTags ? '✅' : '❌'; + const showCompanyTagsIcon = document.getElementById('show-company-tags-icon'); + if (showCompanyTagsIcon) showCompanyTagsIcon.textContent = result.showCompanyTags ? '✅' : '❌'; }); + chrome.storage.local.get(['showExamples'], (result) => { - let showExamplesIcon = document.getElementById('show-examples-icon'); - showExamplesIcon!.textContent = result.showExamples ? '✅' : '❌'; + const showExamplesIcon = document.getElementById('show-examples-icon'); + if (showExamplesIcon) showExamplesIcon.textContent = result.showExamples ? '✅' : '❌'; }); - + chrome.storage.local.get(['showDifficulty'], (result) => { - let showDifficultyIcon = document.getElementById('show-difficulty-icon'); - showDifficultyIcon!.textContent = result.showDifficulty ? '✅' : '❌'; + const showDifficultyIcon = document.getElementById('show-difficulty-icon'); + if (showDifficultyIcon) showDifficultyIcon.textContent = result.showDifficulty ? '✅' : '❌'; }); -}); -// Get font fize and check if it is already set in local storage -let fontSizeSelect = document.getElementById('font-size-select') as HTMLSelectElement; -chrome.storage.local.get('fontSize', function (data) { - if (data.fontSize) { - fontSizeSelect!.value = data.fontSize; - document.documentElement.style.setProperty('--dynamic-font-size', `${data.fontSize}px`); - } -}); + // Helper function to send messages safely to content script + function safelySendMessage(message: any) { + chrome.tabs.query({active: true, currentWindow: true}, (tabs) => { + const tabId = tabs[0]?.id; + if (!tabs || !tabs[0] || typeof tabId === 'undefined') { + return; + } + + try { + // Send message to background script for settings updates + if (message.action === 'updateDescription') { + chrome.runtime.sendMessage({ action: 'settingsUpdate' }); + return; + } -fontSizeSelect.onchange = function () { - let selectedFontSize = this.value; - chrome.storage.local.set({ fontSize: selectedFontSize }); - document.documentElement.style.setProperty('--dynamic-font-size', `${selectedFontSize}px`); -}; + // For other messages, send directly to content script + chrome.tabs.sendMessage(tabId, message, response => { + if (chrome.runtime.lastError) { + console.error('Error sending message:', chrome.runtime.lastError.message); + // Attempt to inject the content script if it's not already injected + chrome.scripting.executeScript({ + target: { tabId }, + files: ['dist/content-script/update-description-tab.js'] + }).then(() => { + // Try sending the message again after injecting the script + setTimeout(() => { + chrome.tabs.sendMessage(tabId, message); + }, 100); + }).catch(err => { + console.error('Error injecting content script:', err); + }); + } + }); + } catch (error) { + console.error('Error sending message:', error); + } + }); + } -document.getElementById('show-company-tags-btn')!.addEventListener('click', function () { - chrome.storage.local.get(['showCompanyTags'], (result) => { - const showCompanyTags = !result.showCompanyTags; - chrome.storage.local.set({ showCompanyTags: showCompanyTags }, () => { - document.getElementById('show-company-tags-icon')!.textContent = showCompanyTags ? '✅' : '❌'; - // Manually trigger the update description after toggling - chrome.tabs.query({ active: true, currentWindow: true }, (tabs) => { - chrome.tabs.sendMessage(tabs[0].id!, { action: 'updateDescription', title: tabs[0].title || 'title' }); + // Set up toggle event handlers + const showCompanyTagsBtn = document.getElementById('show-company-tags-btn'); + showCompanyTagsBtn && showCompanyTagsBtn.addEventListener('click', function () { + chrome.storage.local.get(['showCompanyTags'], (result) => { + const showCompanyTags = !result.showCompanyTags; + chrome.storage.local.set({ showCompanyTags: showCompanyTags }, () => { + const showCompanyTagsIcon = document.getElementById('show-company-tags-icon'); + showCompanyTagsIcon && (showCompanyTagsIcon.textContent = showCompanyTags ? '✅' : '❌'); + safelySendMessage({ action: 'updateDescription', title: document.title || 'title' }); }); }); }); -}); -document.getElementById('show-examples-btn')!.addEventListener('click', function () { - chrome.storage.local.get(['showExamples'], (result) => { - const showExamples = !result.showExamples; - chrome.storage.local.set({ showExamples: showExamples }, () => { - document.getElementById('show-examples-icon')!.textContent = showExamples ? '✅' : '❌'; - }) - // Manually trigger the update description after toggling - chrome.tabs.query({ active: true, currentWindow: true }, (tabs) => { - chrome.tabs.sendMessage(tabs[0].id!, { action: 'updateDescription', title: tabs[0].title || 'title' }); + let showExamplesBtn = document.getElementById('show-examples-btn'); + showExamplesBtn && showExamplesBtn.addEventListener('click', function () { + chrome.storage.local.get(['showExamples'], (result) => { + const showExamples = !result.showExamples; + chrome.storage.local.set({ showExamples: showExamples }, () => { + const showExamplesIcon = document.getElementById('show-examples-icon'); + showExamplesIcon && (showExamplesIcon.textContent = showExamples ? '✅' : '❌'); + safelySendMessage({ action: 'updateDescription', title: document.title || 'title' }); + }); }); }); -}); -document.getElementById('show-difficulty-btn')!.addEventListener('click', function () { - chrome.storage.local.get(['showDifficulty'], (result) => { - const showDifficulty = !result.showDifficulty; - chrome.storage.local.set({ showDifficulty: showDifficulty }, () => { - document.getElementById('show-difficulty-icon')!.textContent = showDifficulty ? '✅' : '❌'; - }) - // Manually trigger the update description after toggling - chrome.tabs.query({ active: true, currentWindow: true }, (tabs) => { - chrome.tabs.sendMessage(tabs[0].id!, { action: 'updateDescription', title: tabs[0].title || 'title' }); + const showDifficultyBtn = document.getElementById('show-difficulty-btn'); + showDifficultyBtn && showDifficultyBtn.addEventListener('click', function () { + chrome.storage.local.get(['showDifficulty'], (result) => { + const showDifficulty = !result.showDifficulty; + chrome.storage.local.set({ showDifficulty: showDifficulty }, () => { + const showDifficultyIcon = document.getElementById('show-difficulty-icon'); + if (showDifficultyIcon) showDifficultyIcon.textContent = showDifficulty ? '✅' : '❌'; + safelySendMessage({ action: 'updateDescription', title: document.title || 'title' }); + }); }); }); -}); - -function sendMessageToActiveTab(message: object): void { - chrome.tabs.query({ active: true, currentWindow: true }, (tabs) => { - chrome.tabs.sendMessage(tabs[0].id!, message); - }); -} \ No newline at end of file +}); \ No newline at end of file diff --git a/src/popup/theme-handler.js b/src/popup/theme-handler.js new file mode 100644 index 0000000..e2d1cff --- /dev/null +++ b/src/popup/theme-handler.js @@ -0,0 +1,26 @@ +// Check localStorage first for faster loading +const isDark = localStorage.getItem('leetcode-explained-theme') === 'dark'; + +// Set initial theme attribute +document.documentElement.setAttribute('data-theme', isDark ? 'dark' : 'light'); + +// Add initial dark theme styles if needed +if (isDark) { + const style = document.createElement('style'); + style.id = 'preload-dark-theme'; + style.innerHTML = ` + html, body { + background-color: #202124 !important; + color: #e8eaed !important; + } + pre, code, .response-container { + background-color: #303134 !important; + color: #e8eaed !important; + border-color: #5f6368 !important; + } + a { + color: #8ab4f8 !important; + } + `; + document.head.appendChild(style); +} \ No newline at end of file diff --git a/src/popup/transition-handler.js b/src/popup/transition-handler.js new file mode 100644 index 0000000..e071177 --- /dev/null +++ b/src/popup/transition-handler.js @@ -0,0 +1,10 @@ +// Enable smooth transitions after initial rendering +window.addEventListener('load', function() { + // Short delay to ensure everything is rendered first + setTimeout(function() { + // Remove the inline style forcing no transitions + const style = document.createElement('style'); + style.innerHTML = '* { transition: color 0.3s, background-color 0.3s, border-color 0.3s !important; }'; + document.head.appendChild(style); + }, 100); +}); \ No newline at end of file diff --git a/src/problems-by-company/company.css b/src/problems-by-company/company.css index 870cb3b..af00db6 100644 --- a/src/problems-by-company/company.css +++ b/src/problems-by-company/company.css @@ -1,67 +1,201 @@ body { background-color: #202020; color: #f0f0f0; - font-size: 18px; - font-family: 'Roboto', sans-serif; + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; + margin: 0; + padding: 20px; display: flex; flex-direction: column; align-items: center; justify-content: center; - text-align: center; - margin: 0; - padding: 20px; + min-height: 100vh; } h1 { - font-size: 36px; - margin-bottom: 20px; - color: lightcyan; + font-size: 24px; + font-weight: 500; + padding: 16px; + color: #69c0ff; + margin-bottom: 24px; + text-align: center; +} + +nav { + display: flex; + justify-content: center; + align-items: center; + gap: 12px; + margin-bottom: 32px; + flex-wrap: wrap; + width: 100%; + max-width: 800px; +} + +button, +.row input { + background-color: #373737; + color: #fff; + border: 1px solid rgba(255, 255, 255, 0.1); + padding: 10px 16px; + min-width: 120px; + max-width: 100%; + border-radius: 6px; + font-size: 14px; + transition: all 0.2s ease; +} + +nav button { + font-weight: 500; + letter-spacing: 0.5px; + text-transform: none; + display: flex; + align-items: center; + gap: 8px; + padding: 8px 16px; + min-width: 130px; + height: 40px; + background-color: var(--button-bg-color); + color: var(--text-color); + border: 1px solid var(--border-color); + border-radius: 6px; + font-size: 12px; + transition: all 0.2s ease; +} + +button:hover { + background-color: var(--button-hover-bg); + border-color: var(--button-hover-border); + cursor: pointer; } table { - border-collapse: collapse; - margin: auto; - width: 500px; + width: 100%; + max-width: 800px; + margin: 0 auto; + border-collapse: separate; + border-spacing: 0; + border-radius: 8px; + overflow: hidden; + box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); } -table, th, td { - border: 1px solid #FFFFFF; - padding: 10px; - text-align: center; + padding: 12px 16px; + text-align: left; + border-bottom: 1px solid rgba(255, 255, 255, 0.1); } th { - font-size: 18px; - background-color: #424242; + background-color: var(--button-bg-color); + color: var(--link-color); + font-weight: 500; + font-size: 14px; + text-transform: none; + letter-spacing: 0.5px; + padding: 12px 16px; + border-bottom: 1px solid var(--border-color); } td { - font-size: 16px; + font-size: 14px; +} + +tr:last-child td { + border-bottom: none; } a { - color: lightgreen; + color: #40a9ff; text-decoration: none; + transition: color 0.2s ease; } a:hover { - color: lightcyan; + color: #69c0ff; + background-color: transparent; } .header { - color: lightcyan; - + position: relative; + cursor: pointer; + user-select: none; } .header:hover { - color: lightgreen; - cursor: pointer; - background-color: #202020; + color: #69c0ff; +} + +.row { + width: 100%; + max-width: 800px; + margin-bottom: 24px; +} + +.row input { + width: 100%; + height: 32px; + background-color: #373737; + color: #fff; + border: 1px solid rgba(255, 255, 255, 0.1); + border-radius: 6px; + padding: 8px 16px; + font-size: 14px; + transition: all 0.2s ease; +} + +.row input:focus { + outline: none; + border-color: #40a9ff; + box-shadow: 0 0 0 2px rgba(64, 169, 255, 0.2); +} + +/* Add smooth transitions for interactive elements */ +button, +a, +.header, +input { + transition: all 0.2s ease; } -#score { - color: lightgreen; - font-weight: bold; +/* Acceptance rate colors - smooth gradient */ +td[data-acceptance] { + position: relative; +} + +td[data-acceptance]::after { + content: attr(data-acceptance) '%'; + font-weight: 500; +} + +/* Create a smooth gradient from red to yellow to green */ +td[data-acceptance^="9"] { color: #52c41a; } +td[data-acceptance^="8"] { color: #73d13d; } +td[data-acceptance^="7"] { color: #95de64; } +td[data-acceptance^="6"] { color: #b7eb8f; } +td[data-acceptance^="5"] { color: #fadb14; } +td[data-acceptance^="4"] { color: #ffa940; } +td[data-acceptance^="3"] { color: #ff7a45; } +td[data-acceptance^="2"] { color: #ff4d4f; } +td[data-acceptance^="1"] { color: #f5222d; } +td[data-acceptance^="0"] { color: #cf1322; } + +/* Responsive design */ +@media (max-width: 768px) { + body { + padding: 16px; + } + + table { + font-size: 14px; + } + + th, + td { + padding: 8px 12px; + } + + button { + min-width: 100px; + } } \ No newline at end of file diff --git a/src/problems-by-company/company.html b/src/problems-by-company/company.html index ca2f0f0..f10e6e8 100644 --- a/src/problems-by-company/company.html +++ b/src/problems-by-company/company.html @@ -7,21 +7,22 @@ + +
+ + +

Amazon

-

- Score = How likely the company is to ask this question on a scale of 1-10 -

-

- Data collected from 2021-2023 -

+ - + +
#Difficulty TitleScoreAcceptanceRank
- + \ No newline at end of file diff --git a/src/problems-by-company/company.ts b/src/problems-by-company/company.ts index e72d4d3..40657c7 100644 --- a/src/problems-by-company/company.ts +++ b/src/problems-by-company/company.ts @@ -1,82 +1,241 @@ -let companyName = "Amazon"; -let solutions = [] as { id: number, title: string, score: number, url: string }[]; +const allSolutions = [] as { id: number, rank: number, title: string, difficulty: string, url: string, acceptance: string }[]; +const solutions = [] as { id: number, rank: number, title: string, difficulty: string, url: string, acceptance: string }[]; +let companyName = 'Amazon'; +const companies: string[] = [ + 'Amazon', 'Apple', 'Facebook', 'Google', 'Microsoft', +]; -function main() { - chrome.storage.local.get("clickedCompany", function (data) { +async function main() { + chrome.storage.local.get('clickedCompany', function (data: { [key: string]: any; }) { companyName = data.clickedCompany; + const title: HTMLElement | null = document.getElementById('title'); + if (title) title.textContent = 'Top 50 ' + companyName + ' Questions'; + document.title = companyName + ' Questions'; + addCompanyProblems('#'); // Change this line to sort by frequency by default }); - document.getElementById("title")!.textContent = companyName; - document.title = companyName + "'s favorite problems" - addCompanyProblems("Score"); + document.getElementById('#')?.addEventListener('click', () => sortBy('#')); + document.getElementById('Difficulty')?.addEventListener('click', () => sortBy('Difficulty')); + document.getElementById('Rank')?.addEventListener('click', () => sortBy('Rank')); + document.getElementById('Title')?.addEventListener('click', () => sortBy('Title')); + document.getElementById('Acceptance')?.addEventListener('click', () => sortBy('Acceptance')); - // attach click listeners to table headers for sorting - document.getElementById('#')!.addEventListener('click', () => sortBy('#')); - document.getElementById('Title')!.addEventListener('click', () => sortBy('Title')); - document.getElementById('Score')!.addEventListener('click', () => sortBy('Score')); + addNavbarLinks(); + await addCompaniesToSelect(); +} + +function addNavbarLinks() { + const navbar = document.getElementById('navbar'); + companies.forEach((company) => { + const button = document.createElement('button') as HTMLElement; + + button.onclick = () => { + chrome.storage.local.set({ clickedCompany: company }, () => { + location.reload(); + }); + }; + button.onmouseover = () => { + button.style.backgroundColor = '#404040'; + button.style.cursor = 'pointer'; + }; + button.onmouseout = () => { + button.style.backgroundColor = '#373737'; + button.style.color = '#fff'; + }; + button.style.display = 'flex'; + button.style.alignItems = 'center'; + button.style.justifyContent = 'center'; + + const icon = document.createElement('img'); + icon.src = `https://logo.clearbit.com/${company.toLowerCase().replace(/\s/g, '')}.com`; + icon.style.height = '20px'; + icon.style.width = '20px'; + icon.style.marginRight = '20px'; + button.appendChild(icon); + + button.style.color = '#fff'; + button.style.minWidth = '130px'; + button.style.height = '40px'; + button.style.padding = '5px'; + button.style.backgroundColor = '#373737'; + button.style.borderRadius = '10px'; + button.style.fontSize = '12px'; + button.style.margin = '0 10px'; + + const companyName = document.createTextNode(`${company}`); + button.appendChild(companyName); + navbar?.appendChild(button); + }); +} + +interface Company { + name: string; +} + +interface Question { + title: string; + frontend_id: number; + companies?: Company[]; + difficulty_lvl?: string; // Make sure to define this + acceptance?: string; // Same for acceptance +} + +interface LeetcodeProblems { + questions: Question[]; } -// Adds the company problems by sorting method function addCompanyProblems(sortMethod: string) { - chrome.storage.local.get("leetcodeProblems", function (data) { - data.leetcodeProblems.questions.forEach(question => { - if (!question.companies) return; - question.companies.forEach(company => { - if (company.name === companyName) { - solutions.push({ - id: question.frontend_id, - title: question.title, - score: company.score, - url: `https://leetcode.com/problems/${question.title.replace(/\s/g, '-')}/` - }); - } + chrome.storage.local.get(['companyProblems', 'leetcodeProblems'], function (data) { + const companyProblems = data.companyProblems[companyName]; + const leetcodeProblems = data.leetcodeProblems.questions; + + if (Array.isArray(companyProblems)) { + companyProblems.forEach((problem) => { + const correspondingLeetcodeProblem = leetcodeProblems.find((q: Question) => q.frontend_id === problem.id); + allSolutions.push({ + id: problem.id, + rank: problem.rank, + title: problem.title, + url: `https://leetcode.com/problems/${problem.title.replace(/\s/g, '-')}/`, + difficulty: correspondingLeetcodeProblem ? String(correspondingLeetcodeProblem.difficulty_lvl) : 'N/A', + acceptance: correspondingLeetcodeProblem ? String(correspondingLeetcodeProblem.acceptance) : 'N/A', + }); }); - }); + } + + solutions.length = 0; + solutions.push(...allSolutions); + rebuildTable(); + }); +} + +function rebuildTable() { + const table = document.getElementById('solutionTable') as HTMLTableElement; + while (table.rows.length > 1) { + table.deleteRow(1); + } - const table = document.getElementById("solutionTable"); + solutions.forEach((solution) => { + const row = table.insertRow(-1); + row.insertCell(0).innerText = solution.id.toString(); - if (sortMethod === "Score") { - solutions.sort((a, b) => b.score - a.score); + const difficulty = solution.difficulty; + const difficultyCell = row.insertCell(1); + let difficultyText = ''; + let color = ''; + + if (difficulty === '1') { + difficultyText = 'Easy'; + color = 'lightgreen'; + } else if (difficulty === '2') { + difficultyText = 'Medium'; + color = 'orange'; + } else if (difficulty === '3') { + difficultyText = 'Hard'; + color = 'red'; } - solutions.forEach(solution => { - const row = table!.insertRow(-1); - row.insertCell(0).innerText = solution.id; - const titleCell = row.insertCell(1); - titleCell.innerHTML = `${solution.title}`; - row.insertCell(2).innerText = solution.score; + difficultyCell.innerText = difficultyText || 'N/A'; + difficultyCell.style.color = color; + difficultyCell.style.fontWeight = 'bold'; + difficultyCell.style.fontSize = '12px'; + difficultyCell.style.borderRadius = '5px'; + + row.insertCell(2).innerHTML = `${solution.title}`; + + const acceptanceCell = row.insertCell(3); + const acceptanceRate = solution.acceptance ? (parseFloat(solution.acceptance) * 100).toFixed(2) : 'N/A'; + acceptanceCell.setAttribute('data-acceptance', acceptanceRate.toString()); + acceptanceCell.style.fontSize = '12px'; + + const rankCell = row.insertCell(4); + rankCell.innerText = solution.rank.toString(); + }); +} + +async function addCompaniesToSelect() { + const companySearch = document.getElementById('companySearch') as HTMLInputElement; + const companyList = document.getElementById('companyList') as HTMLDataListElement; + let companies: string[] = []; + + // Define the type explicitly + const data = await new Promise<{ companyProblems: { [key: string]: any } }>((resolve) => { + chrome.storage.local.get('companyProblems', function (data) { + resolve({ companyProblems: data.companyProblems }); }); }); + + const companyProblems = data.companyProblems; + Object.keys(companyProblems).forEach((company) => { + if (company) { + companies.push(company); + } + }); + + const handleSelection = () => { + const inputValue = companySearch.value; + const selectedCompany = companies.find( + (company) => company.toLowerCase() === inputValue.toLowerCase() + ); + if (selectedCompany) { + chrome.storage.local.set({ clickedCompany: selectedCompany }, () => { + location.reload(); + }); + } + }; + + companySearch.addEventListener('keydown', (event) => { + if (event.key === 'Enter') { + handleSelection(); + } + }); + + companySearch.addEventListener('change', handleSelection); + + const sortedCompanies = companies.sort(); + + sortedCompanies.forEach((company) => { + const option = document.createElement('option'); + option.value = company; + companyList.appendChild(option); + }); } -function sortBy(column: string) { - if (column === 'Score') { - solutions.sort((a, b) => b.score - a.score); - } - else if (column === 'Title') { - solutions.sort((a, b) => a.title.localeCompare(b.title)); - } - else { - solutions.sort((a, b) => a.id - b.id); - } - // after sorting, you might want to re-render your table - const table = document.getElementById("solutionTable"); +const sortOrders: { [key: string]: boolean } = { + '#': false, + 'Difficulty': false, + 'Title': false, + 'Acceptance': false, + 'Rank': false, +}; - // remove all existing rows +function sortBy(column: string) { + sortOrders[column] = !sortOrders[column]; + const table = document.getElementById('solutionTable') as HTMLTableElement; while (table.rows.length > 1) { table.deleteRow(1); } - // add sorted rows - solutions.forEach(solution => { - const row = table.insertRow(-1); - row.insertCell(0).innerText = solution.id; - const titleCell = row.insertCell(1); - titleCell.innerHTML = `${solution.title}`; - row.insertCell(2).innerText = solution.score; - }); + switch (column) { + case '#': + solutions.sort((a, b) => (sortOrders[column] ? a.id - b.id : b.id - a.id)); + break; + case 'Difficulty': + solutions.sort((a, b) => (sortOrders[column] ? a.difficulty.localeCompare(b.difficulty) : b.difficulty.localeCompare(a.difficulty))); + break; + case 'Rank': + solutions.sort((a, b) => (sortOrders[column] ? a.rank - b.rank : b.rank - a.rank)); + break; + case 'Title': + solutions.sort((a, b) => (sortOrders[column] ? a.title.localeCompare(b.title) : b.title.localeCompare(a.title))); + break; + case 'Acceptance': + solutions.sort((a, b) => (sortOrders[column] ? parseFloat(a.acceptance) - parseFloat(b.acceptance) : parseFloat(b.acceptance) - parseFloat(a.acceptance))); + break; + } + + rebuildTable(); } -/* Run the script */ main(); diff --git a/src/utils/theme.ts b/src/utils/theme.ts new file mode 100644 index 0000000..10c0182 --- /dev/null +++ b/src/utils/theme.ts @@ -0,0 +1,188 @@ +// Core theme management for the extension +// Handles theme detection, application, and storage + +// Theme types +type ThemeMode = 'auto' | 'manual'; +type ThemeName = 'dark' | 'light'; + +// Theme styles for injection +const THEME_STYLES = { + dark: ` + html, body { + background-color: #202124 !important; + color: #e8eaed !important; + } + pre, code, .response-container { + background-color: #303134 !important; + color: #e8eaed !important; + border-color: #5f6368 !important; + } + a { + color: #8ab4f8 !important; + } + #info-message { + background-color: rgba(48, 49, 52, 0.5) !important; + color: #e8eaed !important; + } + .material-button, button, select { + background-color: #303134 !important; + color: #e8eaed !important; + border-color: #5f6368 !important; + } + `, + light: ` + html, body { + background-color: #fff !important; + color: #000 !important; + } + .material-button, button, select, input { + color:#1a1a1a !important; + border-color: #e0e0e0 !important; + } + a { + color: #4285f4 !important; + } + #info-message { + background-color: rgba(248, 249, 250, 0.5) !important; + color: #000 !important; + } + .response-container, pre, code { + background-color: #f8f9fa !important; + color: #000 !important; + border-color: #e0e0e0 !important; + } + ` +}; + +// Initialize theme on load +export function initializeTheme(): void { + // Get saved theme settings + chrome.storage.local.get(['isDarkTheme', 'themeMode', 'lastDetectedTheme'], (result) => { + let theme: ThemeName = result.isDarkTheme ? 'dark' : 'light'; + const mode: ThemeMode = result.themeMode === 'auto' ? 'auto' : 'manual'; + + // For auto mode, use last detected theme if available + if (mode === 'auto' && result.lastDetectedTheme) { + theme = result.lastDetectedTheme; + } + + // Apply the theme + applyTheme(theme, mode); + + // If in auto mode, try to detect the theme from LeetCode + if (mode === 'auto') { + detectThemeFromPage(); + } + }); +} + +// Set theme based on dropdown selection +export function setTheme(theme: ThemeName | 'auto'): void { + if (theme === 'auto') { + // Enable auto mode but keep current theme until detection + chrome.storage.local.get(['isDarkTheme'], (result) => { + const currentTheme = result.isDarkTheme ? 'dark' : 'light'; + + // Set auto mode and trigger detection + chrome.storage.local.set({ themeMode: 'auto' }, () => { + applyTheme(currentTheme, 'auto'); + detectThemeFromPage(); + }); + }); + } else { + // Set manual theme + applyTheme(theme, 'manual'); + } +} + +// Apply a theme to the current page +function applyTheme(theme: ThemeName, mode: ThemeMode): void { + // Set data attribute for CSS variables + document.documentElement.setAttribute('data-theme', theme); + + // Apply theme styles + applyThemeStyles(theme); + + // Save to storage + chrome.storage.local.set({ + isDarkTheme: theme === 'dark', + themeMode: mode, + lastDetectedTheme: theme + }); + + // Save to localStorage for faster initial loading + localStorage.setItem('leetcode-explained-theme', theme); + + // Update any UI selectors + updateThemeUI(theme, mode); +} + +// Apply inline theme styles +function applyThemeStyles(theme: ThemeName): void { + // Remove any existing theme styles + const existingDark = document.getElementById('preload-dark-theme'); + const existingLight = document.getElementById('light-theme-override'); + + if (existingDark) existingDark.remove(); + if (existingLight) existingLight.remove(); + + // Create new style element + const style = document.createElement('style'); + style.id = theme === 'dark' ? 'preload-dark-theme' : 'light-theme-override'; + style.innerHTML = THEME_STYLES[theme]; + document.head.appendChild(style); + + // Force a repaint to ensure styles are applied immediately + document.body.style.display = 'none'; + document.body.offsetHeight; // This triggers a reflow + document.body.style.display = ''; +} + +// Update the UI to show current theme +function updateThemeUI(theme: ThemeName, mode: ThemeMode): void { + // Update theme select dropdown if it exists + const themeSelect = document.getElementById('theme-select') as HTMLSelectElement; + if (themeSelect) { + themeSelect.value = mode === 'auto' ? 'auto' : theme; + } + + // Legacy theme toggle button (for backward compatibility) + const themeIcon = document.getElementById('theme-icon'); + const themeText = document.getElementById('theme-text'); + + if (themeIcon && themeText) { + if (mode === 'auto') { + themeIcon.textContent = '🔄'; + themeText.textContent = 'Auto'; + } else if (theme === 'dark') { + themeIcon.textContent = '🌙'; + themeText.textContent = 'Dark'; + } else { + themeIcon.textContent = '☀️'; + themeText.textContent = 'Light'; + } + } +} + +// Detect theme from active LeetCode page +function detectThemeFromPage(): void { + chrome.tabs.query({ active: true, currentWindow: true }, (tabs) => { + if (tabs[0]?.id) { + chrome.tabs.sendMessage( + tabs[0].id, + { action: 'getTheme' }, + (response) => { + if (chrome.runtime.lastError) { + console.error('Error detecting theme:', chrome.runtime.lastError); + return; + } + + if (response?.theme) { + // Apply the detected theme + applyTheme(response.theme, 'auto'); + } + } + ); + } + }); +} \ No newline at end of file diff --git a/src/webpack.config.js b/src/webpack.config.js deleted file mode 100644 index a9ea1e0..0000000 --- a/src/webpack.config.js +++ /dev/null @@ -1,24 +0,0 @@ -const path = require('path'); - -module.exports = { - entry: './dist/background/chatgpt/chatgpt.js', - output: { - filename: 'bundle.js', - path: path.resolve(__dirname, 'dist'), - }, - module: { - rules: [ - { - test: /\.js$/, - exclude: /node_modules/, - use: { - loader: 'babel-loader', - options: { - presets: ['@babel/preset-env'], - }, - }, - }, - ], - }, - mode: 'production', -}; \ No newline at end of file diff --git a/tsconfig.json b/tsconfig.json index 7cd3a81..a461e16 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -9,8 +9,8 @@ // "disableSolutionSearching": true, /* Opt a project out of multi-project reference checking when editing. */ // "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */ /* Language and Environment */ - "target": "es2016", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */ - // "lib": [], /* Specify a set of bundled library declaration files that describe the target runtime environment. */ + "target": "es2017", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */ + "lib": ["es2017", "dom", "es2015.iterable"], /* Specify a set of bundled library declaration files that describe the target runtime environment. */ // "jsx": "preserve", /* Specify what JSX code is generated. */ // "experimentalDecorators": true, /* Enable experimental support for legacy experimental decorators. */ // "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */ @@ -99,5 +99,8 @@ "skipLibCheck": true, /* Skip type checking all .d.ts files. */ "allowJs": true, "outDir": "./dist" - } + }, + "include": [ + "src/**/*" + ] } \ No newline at end of file