From e216dae426d993f6be9c16a7b434348698896a8e Mon Sep 17 00:00:00 2001 From: cruelladevil Date: Fri, 15 Apr 2022 18:02:47 +0900 Subject: [PATCH 1/8] =?UTF-8?q?=ED=8C=A8=ED=82=A4=EC=A7=80=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80=20=EB=B0=8F=20gitignore=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 - package-lock.json | 440 ++++++++++++++++++++++++++++++++++++++++++++++ package.json | 23 +++ 3 files changed, 463 insertions(+), 2 deletions(-) create mode 100644 package-lock.json create mode 100644 package.json diff --git a/.gitignore b/.gitignore index 61ba7c9..9ef0fc6 100644 --- a/.gitignore +++ b/.gitignore @@ -147,6 +147,4 @@ fabric.properties # End of https://www.toptal.com/developers/gitignore/api/macos,webstorm /references/ -/package.json -/package-lock.json /node_modules/ diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..231da30 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,440 @@ +{ + "name": "programmers-coding-test", + "version": "1.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "programmers-coding-test", + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "cheerio": "^1.0.0-rc.10", + "node-fetch": "^3.2.3" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" + }, + "node_modules/cheerio": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.10.tgz", + "integrity": "sha512-g0J0q/O6mW8z5zxQ3A8E8J1hUgp4SMOvEoW/x84OwyHKe/Zccz83PVT4y5Crcr530FV6NgmKI1qvGTKVl9XXVw==", + "dependencies": { + "cheerio-select": "^1.5.0", + "dom-serializer": "^1.3.2", + "domhandler": "^4.2.0", + "htmlparser2": "^6.1.0", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/cheeriojs/cheerio?sponsor=1" + } + }, + "node_modules/cheerio-select": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-1.6.0.tgz", + "integrity": "sha512-eq0GdBvxVFbqWgmCm7M3XGs1I8oLy/nExUnh6oLqmBditPO9AqQJrkslDpMun/hZ0yyTs8L0m85OHp4ho6Qm9g==", + "dependencies": { + "css-select": "^4.3.0", + "css-what": "^6.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.3.1", + "domutils": "^2.8.0" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/data-uri-to-buffer": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.0.tgz", + "integrity": "sha512-Vr3mLBA8qWmcuschSLAOogKgQ/Jwxulv3RNE4FXnYWRGujzrRWQI4m12fQqRkwX06C0KanhLr4hK+GydchZsaA==", + "engines": { + "node": ">= 12" + } + }, + "node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/fetch-blob": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.1.5.tgz", + "integrity": "sha512-N64ZpKqoLejlrwkIAnb9iLSA3Vx/kjgzpcDhygcqJ2KKjky8nCgUQ+dzXtbrLaWZGZNmNfQTsiQ0weZ1svglHg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "paypal", + "url": "https://paypal.me/jimmywarting" + } + ], + "dependencies": { + "node-domexception": "^1.0.0", + "web-streams-polyfill": "^3.0.3" + }, + "engines": { + "node": "^12.20 || >= 14.13" + } + }, + "node_modules/formdata-polyfill": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz", + "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==", + "dependencies": { + "fetch-blob": "^3.1.2" + }, + "engines": { + "node": ">=12.20.0" + } + }, + "node_modules/htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "node_modules/node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "github", + "url": "https://paypal.me/jimmywarting" + } + ], + "engines": { + "node": ">=10.5.0" + } + }, + "node_modules/node-fetch": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.2.3.tgz", + "integrity": "sha512-AXP18u4pidSZ1xYXRDPY/8jdv3RAozIt/WLNR/MBGZAz+xjtlr90RvCnsvHQRiXyWliZF/CpytExp32UU67/SA==", + "dependencies": { + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/node-fetch" + } + }, + "node_modules/nth-check": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz", + "integrity": "sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/parse5-htmlparser2-tree-adapter": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", + "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", + "dependencies": { + "parse5": "^6.0.1" + } + }, + "node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/web-streams-polyfill": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz", + "integrity": "sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==", + "engines": { + "node": ">= 8" + } + } + }, + "dependencies": { + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" + }, + "cheerio": { + "version": "1.0.0-rc.10", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.10.tgz", + "integrity": "sha512-g0J0q/O6mW8z5zxQ3A8E8J1hUgp4SMOvEoW/x84OwyHKe/Zccz83PVT4y5Crcr530FV6NgmKI1qvGTKVl9XXVw==", + "requires": { + "cheerio-select": "^1.5.0", + "dom-serializer": "^1.3.2", + "domhandler": "^4.2.0", + "htmlparser2": "^6.1.0", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "tslib": "^2.2.0" + } + }, + "cheerio-select": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-1.6.0.tgz", + "integrity": "sha512-eq0GdBvxVFbqWgmCm7M3XGs1I8oLy/nExUnh6oLqmBditPO9AqQJrkslDpMun/hZ0yyTs8L0m85OHp4ho6Qm9g==", + "requires": { + "css-select": "^4.3.0", + "css-what": "^6.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.3.1", + "domutils": "^2.8.0" + } + }, + "css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + } + }, + "css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==" + }, + "data-uri-to-buffer": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.0.tgz", + "integrity": "sha512-Vr3mLBA8qWmcuschSLAOogKgQ/Jwxulv3RNE4FXnYWRGujzrRWQI4m12fQqRkwX06C0KanhLr4hK+GydchZsaA==" + }, + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + } + }, + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" + }, + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "requires": { + "domelementtype": "^2.2.0" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + } + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" + }, + "fetch-blob": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.1.5.tgz", + "integrity": "sha512-N64ZpKqoLejlrwkIAnb9iLSA3Vx/kjgzpcDhygcqJ2KKjky8nCgUQ+dzXtbrLaWZGZNmNfQTsiQ0weZ1svglHg==", + "requires": { + "node-domexception": "^1.0.0", + "web-streams-polyfill": "^3.0.3" + } + }, + "formdata-polyfill": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz", + "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==", + "requires": { + "fetch-blob": "^3.1.2" + } + }, + "htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==" + }, + "node-fetch": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.2.3.tgz", + "integrity": "sha512-AXP18u4pidSZ1xYXRDPY/8jdv3RAozIt/WLNR/MBGZAz+xjtlr90RvCnsvHQRiXyWliZF/CpytExp32UU67/SA==", + "requires": { + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" + } + }, + "nth-check": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz", + "integrity": "sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==", + "requires": { + "boolbase": "^1.0.0" + } + }, + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "parse5-htmlparser2-tree-adapter": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz", + "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==", + "requires": { + "parse5": "^6.0.1" + } + }, + "tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "web-streams-polyfill": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz", + "integrity": "sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==" + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..1eb001e --- /dev/null +++ b/package.json @@ -0,0 +1,23 @@ +{ + "name": "programmers-coding-test", + "version": "1.0.0", + "description": "๐ŸŒฑ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ [์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๋ฌธ์ œ]", + "type": "module", + "scripts": { + "build": "node ./utils/build.js" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/codeisneverodd/programmers-coding-test.git" + }, + "author": "cruelladevil ", + "license": "MIT", + "bugs": { + "url": "https://github.com/codeisneverodd/programmers-coding-test/issues" + }, + "homepage": "https://github.com/codeisneverodd/programmers-coding-test#readme", + "dependencies": { + "cheerio": "^1.0.0-rc.10", + "node-fetch": "^3.2.3" + } +} From a9255ac1f2ffbce333a9f261974c1bc2e37bf0a4 Mon Sep 17 00:00:00 2001 From: cruelladevil Date: Fri, 15 Apr 2022 18:06:04 +0900 Subject: [PATCH 2/8] =?UTF-8?q?title=EA=B3=BC=20link=EB=A5=BC=20=ED=81=AC?= =?UTF-8?q?=EB=A1=A4=EB=A7=81=ED=95=98=EB=8A=94=20fetch.js=20=EB=B9=8C?= =?UTF-8?q?=EB=93=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- utils/fetch.js | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 utils/fetch.js diff --git a/utils/fetch.js b/utils/fetch.js new file mode 100644 index 0000000..6de38d1 --- /dev/null +++ b/utils/fetch.js @@ -0,0 +1,22 @@ +import fetch from 'node-fetch'; +import * as cheerio from 'cheerio'; + +async function fetchBody() { + const COURSE_URL = 'https://programmers.co.kr/learn/courses/30'; + const response = await fetch(COURSE_URL); + const body = await response.text(); + return body; +} + +export default async function fetchTitleLink() { + const body = await fetchBody(); + const $ = cheerio.load(body); + const lesson = {}; + + $('.lesson-title').each(function (index, el) { + const title = $(el).children('span').text(); + const link = $(el).attr('href'); + lesson[title] = link; + }); + return lesson; +} From f5f42e4862d9094dd5abb06d3084feb59acdee82 Mon Sep 17 00:00:00 2001 From: cruelladevil Date: Fri, 15 Apr 2022 18:13:53 +0900 Subject: [PATCH 3/8] =?UTF-8?q?README.md=EC=9D=98=20=EB=AC=B8=EC=A0=9C=20t?= =?UTF-8?q?able=20data=EB=A5=BC=20=ED=95=9C=20=EB=B2=88=EC=97=90=20?= =?UTF-8?q?=EB=B0=98=ED=99=98=ED=95=98=EB=8A=94=20string.js=20=EB=B9=8C?= =?UTF-8?q?=EB=93=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- utils/string.js | 63 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 utils/string.js diff --git a/utils/string.js b/utils/string.js new file mode 100644 index 0000000..d2f0966 --- /dev/null +++ b/utils/string.js @@ -0,0 +1,63 @@ +import * as fs from 'fs'; +import path from 'path'; +import fetchTitleLink from './fetch.js'; + +const __dirname = path.resolve(); +const titleLinkObject = await fetchTitleLink(); + +function getFileNameList(dir) { + try { + return fs + .readdirSync(dir) + .map(fileName => fileName.normalize('NFC')) + .filter(fileName => fileName !== '00-ํ•ด๋‹ต-์˜ˆ์‹œ.js') + .sort(); + } catch (err) { + return []; + } +} + +function checkException(title) { + switch (title) { + case '์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜': + return '์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜?'; + case 'H Index': + return 'H-Index'; + case 'N Queen': + return 'N-Queen'; + case '์˜คํ”ˆ์ฑ„ํŒ…๋ฐฉ': + return '์˜คํ”ˆ์ฑ„ํŒ…๋ฐฉ '; + default: + return title; + } +} + +function getTitle(fileName) { + const title = fileName.split('-').join(' ').slice(0, -3); + return checkException(title); +} + +export function getInfoList(levelNumber) { + const levelDir = path.resolve(__dirname, `./level-${levelNumber}`); + const fileNameList = getFileNameList(levelDir); + const infoList = fileNameList.map(fileName => { + const title = getTitle(fileName); + const link = titleLinkObject[title]; + return { title, link, fileName, levelNumber }; + }); + return infoList; +} + +function makeReadmeStr(infoItem, index) { + const { title, link, fileName, levelNumber } = infoItem; + const codeLink = `https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-${levelNumber}/${fileName}`; + return `| ${index + 1} | [${title}](${link}) | [${fileName}](${codeLink}) |`; +} + +export function getTableStr(levelNumber) { + if (getInfoList(levelNumber).length === 0) return ''; + + return getInfoList(levelNumber) + .map((item, index) => makeReadmeStr(item, index)) + .join('\n'); +} From 31318f2fa65af36be492dd4b2b461054a6b7a7ff Mon Sep 17 00:00:00 2001 From: cruelladevil Date: Fri, 15 Apr 2022 18:14:49 +0900 Subject: [PATCH 4/8] =?UTF-8?q?README.md=EB=A5=BC=20=EC=97=85=EB=8D=B0?= =?UTF-8?q?=EC=9D=B4=ED=8A=B8=20=ED=95=98=EB=8A=94=20build.js=20=EB=B9=8C?= =?UTF-8?q?=EB=93=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- utils/build.js | 98 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 utils/build.js diff --git a/utils/build.js b/utils/build.js new file mode 100644 index 0000000..65d1efd --- /dev/null +++ b/utils/build.js @@ -0,0 +1,98 @@ +import * as fs from 'fs'; +import path from 'path'; +import { getTableStr, getInfoList } from './string.js'; + +const __dirname = path.resolve(); +const FILE_TO_UPDATE = path.resolve(__dirname, './README.md'); +const updateData = `# ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ชจ๋“  ๋ฌธ์ œ ํ’€์ด +[![๋ฐฉ๋ฌธ์ž์ˆ˜](https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https://github.com/codeisneverodd/programmers-coding-test&count_bg=%2379C83D&title_bg=%23555555&icon=&icon_color=%23E7E7E7&title=๋ฐฉ๋ฌธ์ž์ˆ˜(Today/Total)&edge_flat=true)](https://github.com/codeisneverodd) + +๐ŸŒฑ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ [์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๋ฌธ์ œ](https://programmers.co.kr/learn/challenges?tab=all_challenges)์˜ ๋ฌธ์ œ ํ’€์ด๋ฅผ ์ฐพ์œผ์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. + +๐ŸŒฑ ๋ชจ๋“  ๋ฌธ์ œ๋Š” JavaScript๋กœ ํ’€์ด๋˜๋ฉฐ, ์›ํ•˜๋Š” ํ’€์ด๋Š” ์•„๋ž˜์—์„œ ๊ฒ€์ƒ‰์„ ํ†ตํ•ด ์ฐพ์œผ์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค + +[![thumbnail-coding-test-no-id](https://user-images.githubusercontent.com/54318460/158711288-5fbd903f-d3b6-4d56-bd1f-9e5946d67d0a.png) +](https://github.com/codeisneverodd/programmers-coding-test/) + + +## ๐Ÿ˜ **๋„์›€์ด ๋˜์…จ๋‹ค๋ฉด** ์˜ค๋ฅธ์ชฝ ์ƒ๋‹จ โ†— ์˜ โญ๏ธ **Star๋ฅผ ํด๋ฆญ**ํ•ด ์ด ํ”„๋กœ์ ํŠธ๋ฅผ ์‘์›ํ•ด์ฃผ์„ธ์š”! + +## Control + F ํ˜น์€ Cmd + F ๋ฅผ ํ†ตํ•ด ์›ํ•˜๋Š” ๋ฌธ์ œ์˜ ํ’€์ด๋ฅผ ์ฐพ์•„๋ณด์„ธ์š”! + +### Level 1 โœ… + +- ์ „์ฒด ๋ฌธ์ œ ์ˆ˜: 55๋ฌธ์ œ +- ํ’€์ด ๋ฌธ์ œ ์ˆ˜: ${getInfoList(1).length}๋ฌธ์ œ +- ํ’€์ด ์™„๋ฃŒ ์‹œ์ : 2022๋…„ 1์›” + +| ๋ฒˆํ˜ธ | ๋ฌธ์ œ ์ถœ์ฒ˜ | ํ’€์ด | +| --- | ------- | --- | +${getTableStr(1)} + +### Level 2 ๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ป(ํ’€์ด ์ค‘..) + +- ์ „์ฒด ๋ฌธ์ œ ์ˆ˜: 64๋ฌธ์ œ +- ํ’€์ด ๋ฌธ์ œ ์ˆ˜: ${getInfoList(2).length}๋ฌธ์ œ +- ํ’€์ด ์™„๋ฃŒ ์˜ˆ์ƒ ์‹œ์ : 2022๋…„ 4์›” ์ค‘ + +| ๋ฒˆํ˜ธ | ๋ฌธ์ œ ์ถœ์ฒ˜ | ํ’€์ด | +| --- | ------- | --- | +${getTableStr(2)} + +### Level 3 ๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ป(ํ’€์ด ์ค‘..) + +- ์ „์ฒด ๋ฌธ์ œ ์ˆ˜: 52๋ฌธ์ œ +- ํ’€์ด ๋ฌธ์ œ ์ˆ˜: ${getInfoList(3).length}๋ฌธ์ œ +- ํ’€์ด ์™„๋ฃŒ ์˜ˆ์ƒ ์‹œ์ : 2022๋…„ 8์›” ์ค‘ + +| ๋ฒˆํ˜ธ | ๋ฌธ์ œ ์ถœ์ฒ˜ | ํ’€์ด | +| --- | ------- | --- | +${getTableStr(3)} + +### Level 4 + +- ์ „์ฒด ๋ฌธ์ œ ์ˆ˜: 22๋ฌธ์ œ +- ํ’€์ด ๋ฌธ์ œ ์ˆ˜: ${getInfoList(4).length}๋ฌธ์ œ +- ํ’€์ด ์™„๋ฃŒ ์˜ˆ์ƒ ์‹œ์ : ์˜ˆ์ • ์—†์Œ + +| ๋ฒˆํ˜ธ | ๋ฌธ์ œ ์ถœ์ฒ˜ | ํ’€์ด | +| --- | ------- | --- | +${getTableStr(4)} + +### Level 5 + +- ์ „์ฒด ๋ฌธ์ œ ์ˆ˜: 6๋ฌธ์ œ +- ํ’€์ด ๋ฌธ์ œ ์ˆ˜: ${getInfoList(5).length}๋ฌธ์ œ +- ํ’€์ด ์™„๋ฃŒ ์˜ˆ์ƒ ์‹œ์ : ์˜ˆ์ • ์—†์Œ + +| ๋ฒˆํ˜ธ | ๋ฌธ์ œ ์ถœ์ฒ˜ | ํ’€์ด | +| --- | ------- | --- | +${getTableStr(5)} + +## ๐Ÿ™๐Ÿป ์•„์ง ํ’€๋ฆฌ์ง€ ์•Š์€ ๋ฌธ์ œ์˜ ํ•ด๋‹ต์„ ์ถ”๊ฐ€ํ•ด ์ฃผ์„ธ์š”! +### ์ปค๋ฐ‹ ์ปจ๋ฒค์…˜ +| ์ ‘๋‘์–ด | ์ž‘์—… ๋‚ด์šฉ | +| ------- | -------------------------------------------------- | +| Create | ์ƒˆ๋กœ์šด ํŒŒ์ผ ์ƒ์„ฑ ํ›„ ๋ฌธ์ œํ’€์ด ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ ํ•  ๊ฒฝ์šฐ | +| Add | ๊ธฐ์กด ํŒŒ์ผ์— ๋ฌธ์ œํ’€์ด ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ ํ•  ๊ฒฝ์šฐ | +| Update | ํŒŒ์ผ์˜ ๊ธฐ์กด ์ฝ”๋“œ๋ฅผ ์ˆ˜์ • ํ•  ๊ฒฝ์šฐ | +| Rename | ํŒŒ์ผ ํ˜น์€ ํด๋”๋ช…์„ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ์˜ฎ๊ธฐ๋Š” ์ž‘์—…๋งŒ์ผ ๊ฒฝ์šฐ | +| Remove | ํŒŒ์ผ์„ ์‚ญ์ œํ•˜๋Š” ์ž‘์—…๋งŒ ์ˆ˜ํ–‰ํ•œ ๊ฒฝ์šฐ | +| Comment | ์ฃผ์„ ์ถ”๊ฐ€ ๋ฐ ์ˆ˜์ •์˜ ๊ฒฝ์šฐ | + +### ์ถ”๊ฐ€ ๋ฐฉ๋ฒ• + +1. ์šฐ์ธก ์ƒ๋‹จ์˜ Fork๋ฅผ ๋ˆŒ๋Ÿฌ ๋ณธ์ธ์˜ GitHub๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค. +2. Forkํ•œ Repository๋ฅผ \`git clone ์ž์‹ ์ด-Forkํ•œ-์ž์‹ ์˜-Repository-์ฃผ์†Œ\` ๋ฅผ ํ†ตํ•ด ๋‹ค์šด๋ฐ›์Šต๋‹ˆ๋‹ค. +3. ํ•ด๋‹ต์„ ํ•ด๋‹นํ•˜๋Š” Level์˜ ํด๋”์— \`00-ํ•ด๋‹ต-์˜ˆ์‹œ.js\`์— ๋”ฐ๋ผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ด๋•Œ, **๋ฐ˜๋“œ์‹œ ๊ณต๋ฐฑ์€\`-\` ๋ฐ”๊พธ์–ด** ํŒŒ์ผ ์ด๋ฆ„์„ ์ง“์Šต๋‹ˆ๋‹ค. +4. ์ž์‹ ์ด Forkํ•œ ์ž์‹ ์˜ Repository์— push๋ฅผ ํ•œ ํ›„, GitHub์—์„œ Create pull request๋ฅผ ํ†ตํ•ด ๊ธฐ์—ฌํ•ฉ๋‹ˆ๋‹ค. +5. ํ•ด์„ค์€ ๊ฒ€์ˆ˜์ž๋“ค์˜ ํ™•์ธ์ด ๋๋‚˜๋Š”๋Œ€๋กœ ๋ณธ Repository์— ๋ฐ˜์˜๋ฉ๋‹ˆ๋‹ค. + +## ์ €์ž‘๊ถŒ + +ํ•ด๋‹น Repository์˜ ํ•ด๋‹ต์„ ์ž์‹ ์˜ ์ €์ž‘๋ฌผ์— ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ **๋ฐ˜๋“œ์‹œ** ๋ณธ Repository์˜ +์ฃผ์†Œ \`https://github.com/codeisneverodd/programmers-coding-test\` +๋ฅผ ๋ช…์‹œํ•˜์—ฌ์•ผํ•ฉ๋‹ˆ๋‹ค. +`; + +fs.writeFileSync(FILE_TO_UPDATE, updateData, 'utf-8'); From 4e3618fd11b737bcaafb451b1b0ccfb9f56a4ee2 Mon Sep 17 00:00:00 2001 From: cruelladevil Date: Fri, 15 Apr 2022 18:16:04 +0900 Subject: [PATCH 5/8] =?UTF-8?q?github-action=EC=9D=84=20=EC=9C=84=ED=95=9C?= =?UTF-8?q?=20yml=20=EB=B9=8C=EB=93=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/update-README.yml | 32 +++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 .github/workflows/update-README.yml diff --git a/.github/workflows/update-README.yml b/.github/workflows/update-README.yml new file mode 100644 index 0000000..0a97f43 --- /dev/null +++ b/.github/workflows/update-README.yml @@ -0,0 +1,32 @@ +# This workflow will do a clean installation of node dependencies, cache/restore them, build the source code and run tests across different versions of node +# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions + +name: update README.md + +on: + push: + branches: [ github-action ] + pull_request: + branches: [ github-action ] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - name: Use Node.js 16.14.0 + uses: actions/setup-node@v3 + with: + node-version: 16.14.0 + cache: 'npm' + - name: build README.md + run: npm run build + - name: update README.md + run: | + git add . + git config user.name github-actions + git config user.email github-actions@github.com + git commit -m "Automatic Update README.md" + git push From 60ef940c8ca550255d819356abc2b83dcca7ac44 Mon Sep 17 00:00:00 2001 From: cruelladevil Date: Fri, 15 Apr 2022 18:21:23 +0900 Subject: [PATCH 6/8] =?UTF-8?q?github-action=20=EB=B2=84=EA=B7=B8=20?= =?UTF-8?q?=ED=94=BD=EC=8A=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/update-README.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/update-README.yml b/.github/workflows/update-README.yml index 0a97f43..029b424 100644 --- a/.github/workflows/update-README.yml +++ b/.github/workflows/update-README.yml @@ -21,6 +21,8 @@ jobs: with: node-version: 16.14.0 cache: 'npm' + - name: install package + run: npm install - name: build README.md run: npm run build - name: update README.md From bc6065a9347ce6b141150bd7ecb848f6f74abfe2 Mon Sep 17 00:00:00 2001 From: github-actions Date: Fri, 15 Apr 2022 09:21:55 +0000 Subject: [PATCH 7/8] Automatic Update README.md --- README.md | 198 ++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 134 insertions(+), 64 deletions(-) diff --git a/README.md b/README.md index 7438b73..8a1193b 100644 --- a/README.md +++ b/README.md @@ -19,84 +19,155 @@ - ํ’€์ด ๋ฌธ์ œ ์ˆ˜: 55๋ฌธ์ œ - ํ’€์ด ์™„๋ฃŒ ์‹œ์ : 2022๋…„ 1์›” -| | ๋ฌธ์ œ ์ถœ์ฒ˜ | ํ’€์ด | -| ---- | ------------------------------------------------------------ | ------------------------------------------------------------ | -| 1 | [2016๋…„](https://programmers.co.kr/learn/courses/30/lessons/12901) | [2016๋…„.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/2016๋…„.js) | -| 2 | [3์ง„๋ฒ• ๋’ค์ง‘๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/68935) | [3์ง„๋ฒ•-๋’ค์ง‘๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/3์ง„๋ฒ•-๋’ค์ง‘๊ธฐ.js) | -| 3 | [K๋ฒˆ์งธ์ˆ˜](https://programmers.co.kr/learn/courses/30/lessons/42748) | [K๋ฒˆ์งธ์ˆ˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/K๋ฒˆ์งธ์ˆ˜.js) | -| 4 | [[1์ฐจ] ๋‹คํŠธ ๊ฒŒ์ž„](https://programmers.co.kr/learn/courses/30/lessons/17682) | [[1์ฐจ]-๋‹คํŠธ-๊ฒŒ์ž„.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/[1์ฐจ]-๋‹คํŠธ-๊ฒŒ์ž„.js) | -| 5 | [[1์ฐจ] ๋น„๋ฐ€์ง€๋„](https://programmers.co.kr/learn/courses/30/lessons/17681) | [[1์ฐจ]-๋น„๋ฐ€์ง€๋„.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/[1์ฐจ]-๋น„๋ฐ€์ง€๋„.js) | -| 6 | [x๋งŒํผ ๊ฐ„๊ฒฉ์ด ์žˆ๋Š” n๊ฐœ์˜ ์ˆซ์ž](https://programmers.co.kr/learn/courses/30/lessons/12954) | [x๋งŒํผ-๊ฐ„๊ฒฉ์ด-์žˆ๋Š”-n๊ฐœ์˜-์ˆซ์ž.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/x๋งŒํผ-๊ฐ„๊ฒฉ์ด-์žˆ๋Š”-n๊ฐœ์˜-์ˆซ์ž.js) | -| 7 | [๊ฐ€์šด๋ฐ ๊ธ€์ž ๊ฐ€์ ธ์˜ค๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12903) | [๊ฐ€์šด๋ฐ-๊ธ€์ž-๊ฐ€์ ธ์˜ค๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๊ฐ€์šด๋ฐ-๊ธ€์ž-๊ฐ€์ ธ์˜ค๊ธฐ.js) | -| 8 | [๊ฐ™์€ ์ˆซ์ž๋Š” ์‹ซ์–ด](https://programmers.co.kr/learn/courses/30/lessons/12906) | [๊ฐ™์€-์ˆซ์ž๋Š”-์‹ซ์–ด.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๊ฐ™์€-์ˆซ์ž๋Š”-์‹ซ์–ด.js) | -| 9 | [๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ์ˆซ์ž ๋ฐฐ์—ด](https://programmers.co.kr/learn/courses/30/lessons/12910) | [๋‚˜๋ˆ„์–ด-๋–จ์–ด์ง€๋Š”-์ˆซ์ž-๋ฐฐ์—ด.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋‚˜๋ˆ„์–ด-๋–จ์–ด์ง€๋Š”-์ˆซ์ž-๋ฐฐ์—ด.js) | -| 10 | [๋‚˜๋จธ์ง€๊ฐ€ 1์ด ๋˜๋Š” ์ˆ˜ ์ฐพ๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/87389) | [๋‚˜๋จธ์ง€๊ฐ€-1์ด-๋˜๋Š”-์ˆ˜-์ฐพ๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋‚˜๋จธ์ง€๊ฐ€-1์ด-๋˜๋Š”-์ˆ˜-์ฐพ๊ธฐ.js) | -| 11 | [๋‚ด์ ](https://programmers.co.kr/learn/courses/30/lessons/70128) | [๋‚ด์ .js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋‚ด์ .js) | -| 12 | [๋‘ ๊ฐœ ๋ฝ‘์•„์„œ ๋”ํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/68644) | [๋‘-๊ฐœ-๋ฝ‘์•„์„œ-๋”ํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋‘-๊ฐœ-๋ฝ‘์•„์„œ-๋”ํ•˜๊ธฐ.js) | -| 13 | [๋‘ ์ •์ˆ˜ ์‚ฌ์ด์˜ ํ•ฉ](https://programmers.co.kr/learn/courses/30/lessons/12912) | [๋‘-์ •์ˆ˜-์‚ฌ์ด์˜-ํ•ฉ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋‘-์ •์ˆ˜-์‚ฌ์ด์˜-ํ•ฉ.js) | -| 14 | [๋กœ๋˜์˜ ์ตœ๊ณ  ์ˆœ์œ„์™€ ์ตœ์ € ์ˆœ์œ„](https://programmers.co.kr/learn/courses/30/lessons/77484) | [๋กœ๋˜์˜-์ตœ๊ณ -์ˆœ์œ„์™€-์ตœ์ €-์ˆœ์œ„.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋กœ๋˜์˜-์ตœ๊ณ -์ˆœ์œ„์™€-์ตœ์ €-์ˆœ์œ„.js) | -| 15 | [๋ชจ์˜๊ณ ์‚ฌ](https://programmers.co.kr/learn/courses/30/lessons/42840) | [๋ชจ์˜๊ณ ์‚ฌ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋ชจ์˜๊ณ ์‚ฌ.js) | -| 16 | [๋ฌธ์ž์—ด ๋‚ด p์™€ y์˜ ๊ฐœ์ˆ˜](https://programmers.co.kr/learn/courses/30/lessons/12916) | [๋ฌธ์ž์—ด-๋‚ด-p์™€-y์˜-๊ฐœ์ˆ˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋ฌธ์ž์—ด-๋‚ด-p์™€-y์˜-๊ฐœ์ˆ˜.js) | -| 17 | [๋ฌธ์ž์—ด ๋‚ด ๋งˆ์Œ๋Œ€๋กœ ์ •๋ ฌํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12915) | [๋ฌธ์ž์—ด-๋‚ด-๋งˆ์Œ๋Œ€๋กœ-์ •๋ ฌํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋ฌธ์ž์—ด-๋‚ด-๋งˆ์Œ๋Œ€๋กœ-์ •๋ ฌํ•˜๊ธฐ.js) | -| 18 | [๋ฌธ์ž์—ด ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ๋ฐฐ์น˜ํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12917) | [๋ฌธ์ž์—ด-๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ-๋ฐฐ์น˜ํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋ฌธ์ž์—ด-๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ-๋ฐฐ์น˜ํ•˜๊ธฐ.js) | -| 19 | [๋ฌธ์ž์—ด ๋‹ค๋ฃจ๊ธฐ ๊ธฐ๋ณธ](https://programmers.co.kr/learn/courses/30/lessons/12918) | [๋ฌธ์ž์—ด-๋‹ค๋ฃจ๊ธฐ-๊ธฐ๋ณธ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋ฌธ์ž์—ด-๋‹ค๋ฃจ๊ธฐ-๊ธฐ๋ณธ.js) | -| 20 | [๋ฌธ์ž์—ด์„ ์ •์ˆ˜๋กœ ๋ฐ”๊พธ๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12925) | [๋ฌธ์ž์—ด์„-์ •์ˆ˜๋กœ-๋ฐ”๊พธ๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋ฌธ์ž์—ด์„-์ •์ˆ˜๋กœ-๋ฐ”๊พธ๊ธฐ.js) | -| 21 | [๋ถ€์กฑํ•œ ๊ธˆ์•ก ๊ณ„์‚ฐํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/82612) | [๋ถ€์กฑํ•œ-๊ธˆ์•ก-๊ณ„์‚ฐํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋ถ€์กฑํ•œ-๊ธˆ์•ก-๊ณ„์‚ฐํ•˜๊ธฐ.js) | -| 22 | [์„œ์šธ์—์„œ ๊น€์„œ๋ฐฉ ์ฐพ๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12919) | [์„œ์šธ์—์„œ-๊น€์„œ๋ฐฉ-์ฐพ๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์„œ์šธ์—์„œ-๊น€์„œ๋ฐฉ-์ฐพ๊ธฐ.js) | -| 23 | [์†Œ์ˆ˜ ๋งŒ๋“ค๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12977) | [์†Œ์ˆ˜-๋งŒ๋“ค๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์†Œ์ˆ˜-๋งŒ๋“ค๊ธฐ.js) | -| 24 | [์†Œ์ˆ˜ ์ฐพ๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12921) | [์†Œ์ˆ˜-์ฐพ๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์†Œ์ˆ˜-์ฐพ๊ธฐ.js) | -| 25 | [์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜?](https://programmers.co.kr/learn/courses/30/lessons/12922) | [์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜.js) | -| 26 | [์ˆซ์ž ๋ฌธ์ž์—ด๊ณผ ์˜๋‹จ์–ด](https://programmers.co.kr/learn/courses/30/lessons/81301) | [์ˆซ์ž-๋ฌธ์ž์—ด๊ณผ-์˜๋‹จ์–ด.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ˆซ์ž-๋ฌธ์ž์—ด๊ณผ-์˜๋‹จ์–ด.js) | -| 27 | [์‹œ์ € ์•”ํ˜ธ](https://programmers.co.kr/learn/courses/30/lessons/12926) | [์‹œ์ €-์•”ํ˜ธ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์‹œ์ €-์•”ํ˜ธ.js) | -| 28 | [์‹ ๊ณ  ๊ฒฐ๊ณผ ๋ฐ›๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/92334) | [์‹ ๊ณ -๊ฒฐ๊ณผ-๋ฐ›๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์‹ ๊ณ -๊ฒฐ๊ณผ-๋ฐ›๊ธฐ.js) | -| 29 | [์‹ ๊ทœ ์•„์ด๋”” ์ถ”์ฒœ](https://programmers.co.kr/learn/courses/30/lessons/72410) | [์‹ ๊ทœ-์•„์ด๋””-์ถ”์ฒœ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์‹ ๊ทœ-์•„์ด๋””-์ถ”์ฒœ.js) | -| 30 | [์‹คํŒจ์œจ](https://programmers.co.kr/learn/courses/30/lessons/42889) | [์‹คํŒจ์œจ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์‹คํŒจ์œจ.js) | -| 31 | [์•ฝ์ˆ˜์˜ ๊ฐœ์ˆ˜์™€ ๋ง์…ˆ](https://programmers.co.kr/learn/courses/30/lessons/77884) | [์•ฝ์ˆ˜์˜-๊ฐœ์ˆ˜์™€-๋ง์…ˆ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์•ฝ์ˆ˜์˜-๊ฐœ์ˆ˜์™€-๋ง์…ˆ.js) | -| 32 | [์•ฝ์ˆ˜์˜ ํ•ฉ](https://programmers.co.kr/learn/courses/30/lessons/12928) | [์•ฝ์ˆ˜์˜-ํ•ฉ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์•ฝ์ˆ˜์˜-ํ•ฉ.js) | -| 33 | [์—†๋Š” ์ˆซ์ž ๋”ํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/86051) | [์—†๋Š”-์ˆซ์ž-๋”ํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์—†๋Š”-์ˆซ์ž-๋”ํ•˜๊ธฐ.js) | -| 34 | [์˜ˆ์‚ฐ](https://programmers.co.kr/learn/courses/30/lessons/12982) | [์˜ˆ์‚ฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์˜ˆ์‚ฐ.js) | -| 35 | [์™„์ฃผํ•˜์ง€ ๋ชปํ•œ ์„ ์ˆ˜](https://programmers.co.kr/learn/courses/30/lessons/42576) | [์™„์ฃผํ•˜์ง€-๋ชปํ•œ-์„ ์ˆ˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์™„์ฃผํ•˜์ง€-๋ชปํ•œ-์„ ์ˆ˜.js) | -| 36 | [์Œ์–‘ ๋”ํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/76501) | [์Œ์–‘-๋”ํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์Œ์–‘-๋”ํ•˜๊ธฐ.js) | -| 37 | [์ด์ƒํ•œ ๋ฌธ์ž ๋งŒ๋“ค๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12930) | [์ด์ƒํ•œ-๋ฌธ์ž-๋งŒ๋“ค๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ด์ƒํ•œ-๋ฌธ์ž-๋งŒ๋“ค๊ธฐ.js) | -| 38 | [์ž๋ฆฟ์ˆ˜ ๋”ํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12931) | [์ž๋ฆฟ์ˆ˜-๋”ํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ž๋ฆฟ์ˆ˜-๋”ํ•˜๊ธฐ.js) | -| 39 | [์ž์—ฐ์ˆ˜ ๋’ค์ง‘์–ด ๋ฐฐ์—ด๋กœ ๋งŒ๋“ค๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12932) | [์ž์—ฐ์ˆ˜-๋’ค์ง‘์–ด-๋ฐฐ์—ด๋กœ-๋งŒ๋“ค๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ž์—ฐ์ˆ˜-๋’ค์ง‘์–ด-๋ฐฐ์—ด๋กœ-๋งŒ๋“ค๊ธฐ.js) | -| 40 | [์ •์ˆ˜ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ๋ฐฐ์น˜ํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12933) | [์ •์ˆ˜-๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ-๋ฐฐ์น˜ํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ •์ˆ˜-๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ-๋ฐฐ์น˜ํ•˜๊ธฐ.js) | -| 41 | [์ •์ˆ˜ ์ œ๊ณฑ๊ทผ ํŒ๋ณ„](https://programmers.co.kr/learn/courses/30/lessons/12934) | [์ •์ˆ˜-์ œ๊ณฑ๊ทผ-ํŒ๋ณ„.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ •์ˆ˜-์ œ๊ณฑ๊ทผ-ํŒ๋ณ„.js) | -| 42 | [์ œ์ผ ์ž‘์€ ์ˆ˜ ์ œ๊ฑฐํ•˜๊ธฐ์—ฐ์Šต๋ฌธ์ œ](https://programmers.co.kr/learn/courses/30/lessons/12935) | [์ œ์ผ-์ž‘์€-์ˆ˜-์ œ๊ฑฐํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ œ์ผ-์ž‘์€-์ˆ˜-์ œ๊ฑฐํ•˜๊ธฐ.js) | -| 43 | [์ง์‚ฌ๊ฐํ˜• ๋ณ„์ฐ๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12969) | [์ง์‚ฌ๊ฐํ˜•-๋ณ„์ฐ๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ง์‚ฌ๊ฐํ˜•-๋ณ„์ฐ๊ธฐ.js) | -| 44 | [์ง์ˆ˜์™€ ํ™€์ˆ˜](https://programmers.co.kr/learn/courses/30/lessons/12937) | [์ง์ˆ˜์™€-ํ™€์ˆ˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ง์ˆ˜์™€-ํ™€์ˆ˜.js) | -| 45 | [์ฒด์œก๋ณต](https://programmers.co.kr/learn/courses/30/lessons/42862) | [์ฒด์œก๋ณต.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ฒด์œก๋ณต.js) | -| 46 | [์ตœ๋Œ€๊ณต์•ฝ์ˆ˜์™€ ์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜](https://programmers.co.kr/learn/courses/30/lessons/12940) | [์ตœ๋Œ€๊ณต์•ฝ์ˆ˜์™€-์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ตœ๋Œ€๊ณต์•ฝ์ˆ˜์™€-์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜.js) | -| 47 | [์ตœ์†Œ์ง์‚ฌ๊ฐํ˜•](https://programmers.co.kr/learn/courses/30/lessons/86491) | [์ตœ์†Œ์ง์‚ฌ๊ฐํ˜•.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ตœ์†Œ์ง์‚ฌ๊ฐํ˜•.js) | -| 48 | [์ฝœ๋ผ์ธ  ์ถ”์ธก](https://programmers.co.kr/learn/courses/30/lessons/12943) | [์ฝœ๋ผ์ธ -์ถ”์ธก.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ฝœ๋ผ์ธ -์ถ”์ธก.js) | -| 49 | [ํฌ๋ ˆ์ธ ์ธํ˜•๋ฝ‘๊ธฐ ๊ฒŒ์ž„](https://programmers.co.kr/learn/courses/30/lessons/64061) | [ํฌ๋ ˆ์ธ-์ธํ˜•๋ฝ‘๊ธฐ-๊ฒŒ์ž„.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/ํฌ๋ ˆ์ธ-์ธํ˜•๋ฝ‘๊ธฐ-๊ฒŒ์ž„.js) | -| 50 | [ํ‚คํŒจ๋“œ ๋ˆ„๋ฅด๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/67256) | [ํ‚คํŒจ๋“œ-๋ˆ„๋ฅด๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/ํ‚คํŒจ๋“œ-๋ˆ„๋ฅด๊ธฐ.js) | -| 51 | [ํ‰๊ท  ๊ตฌํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12944) | [ํ‰๊ท -๊ตฌํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/ํ‰๊ท -๊ตฌํ•˜๊ธฐ.js) | -| 52 | [ํฐ์ผ“๋ชฌ](https://programmers.co.kr/learn/courses/30/lessons/1845) | [ํฐ์ผ“๋ชฌ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/ํฐ์ผ“๋ชฌ.js) | -| 53 | [ํ•ธ๋“œํฐ ๋ฒˆํ˜ธ ๊ฐ€๋ฆฌ๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12948) | [ํ•ธ๋“œํฐ-๋ฒˆํ˜ธ-๊ฐ€๋ฆฌ๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/ํ•ธ๋“œํฐ-๋ฒˆํ˜ธ-๊ฐ€๋ฆฌ๊ธฐ.js) | -| 54 | [ํ–‰๋ ฌ์˜ ๋ง์…ˆ](https://programmers.co.kr/learn/courses/30/lessons/12950) | [ํ–‰๋ ฌ์˜-๋ง์…ˆ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/ํ–‰๋ ฌ์˜-๋ง์…ˆ.js) | -| 55 | [ํ•˜์ƒค๋“œ ์ˆ˜](https://programmers.co.kr/learn/courses/30/lessons/12947) | [ํžˆ์ƒค๋“œ-์ˆ˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/ํžˆ์ƒค๋“œ-์ˆ˜.js) | +| ๋ฒˆํ˜ธ | ๋ฌธ์ œ ์ถœ์ฒ˜ | ํ’€์ด | +| --- | ------- | --- | +| 1 | [2016๋…„](https://programmers.co.kr/learn/courses/30/lessons/12901) | [2016๋…„.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/2016๋…„.js) | +| 2 | [3์ง„๋ฒ• ๋’ค์ง‘๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/68935) | [3์ง„๋ฒ•-๋’ค์ง‘๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/3์ง„๋ฒ•-๋’ค์ง‘๊ธฐ.js) | +| 3 | [K๋ฒˆ์งธ์ˆ˜](https://programmers.co.kr/learn/courses/30/lessons/42748) | [K๋ฒˆ์งธ์ˆ˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/K๋ฒˆ์งธ์ˆ˜.js) | +| 4 | [[1์ฐจ] ๋‹คํŠธ ๊ฒŒ์ž„](https://programmers.co.kr/learn/courses/30/lessons/17682) | [[1์ฐจ]-๋‹คํŠธ-๊ฒŒ์ž„.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/[1์ฐจ]-๋‹คํŠธ-๊ฒŒ์ž„.js) | +| 5 | [[1์ฐจ] ๋น„๋ฐ€์ง€๋„](https://programmers.co.kr/learn/courses/30/lessons/17681) | [[1์ฐจ]-๋น„๋ฐ€์ง€๋„.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/[1์ฐจ]-๋น„๋ฐ€์ง€๋„.js) | +| 6 | [x๋งŒํผ ๊ฐ„๊ฒฉ์ด ์žˆ๋Š” n๊ฐœ์˜ ์ˆซ์ž](https://programmers.co.kr/learn/courses/30/lessons/12954) | [x๋งŒํผ-๊ฐ„๊ฒฉ์ด-์žˆ๋Š”-n๊ฐœ์˜-์ˆซ์ž.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/x๋งŒํผ-๊ฐ„๊ฒฉ์ด-์žˆ๋Š”-n๊ฐœ์˜-์ˆซ์ž.js) | +| 7 | [๊ฐ€์šด๋ฐ ๊ธ€์ž ๊ฐ€์ ธ์˜ค๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12903) | [๊ฐ€์šด๋ฐ-๊ธ€์ž-๊ฐ€์ ธ์˜ค๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๊ฐ€์šด๋ฐ-๊ธ€์ž-๊ฐ€์ ธ์˜ค๊ธฐ.js) | +| 8 | [๊ฐ™์€ ์ˆซ์ž๋Š” ์‹ซ์–ด](https://programmers.co.kr/learn/courses/30/lessons/12906) | [๊ฐ™์€-์ˆซ์ž๋Š”-์‹ซ์–ด.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๊ฐ™์€-์ˆซ์ž๋Š”-์‹ซ์–ด.js) | +| 9 | [๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ์ˆซ์ž ๋ฐฐ์—ด](https://programmers.co.kr/learn/courses/30/lessons/12910) | [๋‚˜๋ˆ„์–ด-๋–จ์–ด์ง€๋Š”-์ˆซ์ž-๋ฐฐ์—ด.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋‚˜๋ˆ„์–ด-๋–จ์–ด์ง€๋Š”-์ˆซ์ž-๋ฐฐ์—ด.js) | +| 10 | [๋‚˜๋จธ์ง€๊ฐ€ 1์ด ๋˜๋Š” ์ˆ˜ ์ฐพ๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/87389) | [๋‚˜๋จธ์ง€๊ฐ€-1์ด-๋˜๋Š”-์ˆ˜-์ฐพ๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋‚˜๋จธ์ง€๊ฐ€-1์ด-๋˜๋Š”-์ˆ˜-์ฐพ๊ธฐ.js) | +| 11 | [๋‚ด์ ](https://programmers.co.kr/learn/courses/30/lessons/70128) | [๋‚ด์ .js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋‚ด์ .js) | +| 12 | [๋‘ ๊ฐœ ๋ฝ‘์•„์„œ ๋”ํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/68644) | [๋‘-๊ฐœ-๋ฝ‘์•„์„œ-๋”ํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋‘-๊ฐœ-๋ฝ‘์•„์„œ-๋”ํ•˜๊ธฐ.js) | +| 13 | [๋‘ ์ •์ˆ˜ ์‚ฌ์ด์˜ ํ•ฉ](https://programmers.co.kr/learn/courses/30/lessons/12912) | [๋‘-์ •์ˆ˜-์‚ฌ์ด์˜-ํ•ฉ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋‘-์ •์ˆ˜-์‚ฌ์ด์˜-ํ•ฉ.js) | +| 14 | [๋กœ๋˜์˜ ์ตœ๊ณ  ์ˆœ์œ„์™€ ์ตœ์ € ์ˆœ์œ„](https://programmers.co.kr/learn/courses/30/lessons/77484) | [๋กœ๋˜์˜-์ตœ๊ณ -์ˆœ์œ„์™€-์ตœ์ €-์ˆœ์œ„.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋กœ๋˜์˜-์ตœ๊ณ -์ˆœ์œ„์™€-์ตœ์ €-์ˆœ์œ„.js) | +| 15 | [๋ชจ์˜๊ณ ์‚ฌ](https://programmers.co.kr/learn/courses/30/lessons/42840) | [๋ชจ์˜๊ณ ์‚ฌ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋ชจ์˜๊ณ ์‚ฌ.js) | +| 16 | [๋ฌธ์ž์—ด ๋‚ด p์™€ y์˜ ๊ฐœ์ˆ˜](https://programmers.co.kr/learn/courses/30/lessons/12916) | [๋ฌธ์ž์—ด-๋‚ด-p์™€-y์˜-๊ฐœ์ˆ˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋ฌธ์ž์—ด-๋‚ด-p์™€-y์˜-๊ฐœ์ˆ˜.js) | +| 17 | [๋ฌธ์ž์—ด ๋‚ด ๋งˆ์Œ๋Œ€๋กœ ์ •๋ ฌํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12915) | [๋ฌธ์ž์—ด-๋‚ด-๋งˆ์Œ๋Œ€๋กœ-์ •๋ ฌํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋ฌธ์ž์—ด-๋‚ด-๋งˆ์Œ๋Œ€๋กœ-์ •๋ ฌํ•˜๊ธฐ.js) | +| 18 | [๋ฌธ์ž์—ด ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ๋ฐฐ์น˜ํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12917) | [๋ฌธ์ž์—ด-๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ-๋ฐฐ์น˜ํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋ฌธ์ž์—ด-๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ-๋ฐฐ์น˜ํ•˜๊ธฐ.js) | +| 19 | [๋ฌธ์ž์—ด ๋‹ค๋ฃจ๊ธฐ ๊ธฐ๋ณธ](https://programmers.co.kr/learn/courses/30/lessons/12918) | [๋ฌธ์ž์—ด-๋‹ค๋ฃจ๊ธฐ-๊ธฐ๋ณธ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋ฌธ์ž์—ด-๋‹ค๋ฃจ๊ธฐ-๊ธฐ๋ณธ.js) | +| 20 | [๋ฌธ์ž์—ด์„ ์ •์ˆ˜๋กœ ๋ฐ”๊พธ๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12925) | [๋ฌธ์ž์—ด์„-์ •์ˆ˜๋กœ-๋ฐ”๊พธ๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋ฌธ์ž์—ด์„-์ •์ˆ˜๋กœ-๋ฐ”๊พธ๊ธฐ.js) | +| 21 | [๋ถ€์กฑํ•œ ๊ธˆ์•ก ๊ณ„์‚ฐํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/82612) | [๋ถ€์กฑํ•œ-๊ธˆ์•ก-๊ณ„์‚ฐํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/๋ถ€์กฑํ•œ-๊ธˆ์•ก-๊ณ„์‚ฐํ•˜๊ธฐ.js) | +| 22 | [์„œ์šธ์—์„œ ๊น€์„œ๋ฐฉ ์ฐพ๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12919) | [์„œ์šธ์—์„œ-๊น€์„œ๋ฐฉ-์ฐพ๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์„œ์šธ์—์„œ-๊น€์„œ๋ฐฉ-์ฐพ๊ธฐ.js) | +| 23 | [์†Œ์ˆ˜ ๋งŒ๋“ค๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12977) | [์†Œ์ˆ˜-๋งŒ๋“ค๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์†Œ์ˆ˜-๋งŒ๋“ค๊ธฐ.js) | +| 24 | [์†Œ์ˆ˜ ์ฐพ๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/42839) | [์†Œ์ˆ˜-์ฐพ๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์†Œ์ˆ˜-์ฐพ๊ธฐ.js) | +| 25 | [์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜?](https://programmers.co.kr/learn/courses/30/lessons/12922) | [์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜.js) | +| 26 | [์ˆซ์ž ๋ฌธ์ž์—ด๊ณผ ์˜๋‹จ์–ด](https://programmers.co.kr/learn/courses/30/lessons/81301) | [์ˆซ์ž-๋ฌธ์ž์—ด๊ณผ-์˜๋‹จ์–ด.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ˆซ์ž-๋ฌธ์ž์—ด๊ณผ-์˜๋‹จ์–ด.js) | +| 27 | [์‹œ์ € ์•”ํ˜ธ](https://programmers.co.kr/learn/courses/30/lessons/12926) | [์‹œ์ €-์•”ํ˜ธ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์‹œ์ €-์•”ํ˜ธ.js) | +| 28 | [์‹ ๊ณ  ๊ฒฐ๊ณผ ๋ฐ›๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/92334) | [์‹ ๊ณ -๊ฒฐ๊ณผ-๋ฐ›๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์‹ ๊ณ -๊ฒฐ๊ณผ-๋ฐ›๊ธฐ.js) | +| 29 | [์‹ ๊ทœ ์•„์ด๋”” ์ถ”์ฒœ](https://programmers.co.kr/learn/courses/30/lessons/72410) | [์‹ ๊ทœ-์•„์ด๋””-์ถ”์ฒœ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์‹ ๊ทœ-์•„์ด๋””-์ถ”์ฒœ.js) | +| 30 | [์‹คํŒจ์œจ](https://programmers.co.kr/learn/courses/30/lessons/42889) | [์‹คํŒจ์œจ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์‹คํŒจ์œจ.js) | +| 31 | [์•ฝ์ˆ˜์˜ ๊ฐœ์ˆ˜์™€ ๋ง์…ˆ](https://programmers.co.kr/learn/courses/30/lessons/77884) | [์•ฝ์ˆ˜์˜-๊ฐœ์ˆ˜์™€-๋ง์…ˆ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์•ฝ์ˆ˜์˜-๊ฐœ์ˆ˜์™€-๋ง์…ˆ.js) | +| 32 | [์•ฝ์ˆ˜์˜ ํ•ฉ](https://programmers.co.kr/learn/courses/30/lessons/12928) | [์•ฝ์ˆ˜์˜-ํ•ฉ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์•ฝ์ˆ˜์˜-ํ•ฉ.js) | +| 33 | [์—†๋Š” ์ˆซ์ž ๋”ํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/86051) | [์—†๋Š”-์ˆซ์ž-๋”ํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์—†๋Š”-์ˆซ์ž-๋”ํ•˜๊ธฐ.js) | +| 34 | [์˜ˆ์‚ฐ](https://programmers.co.kr/learn/courses/30/lessons/12982) | [์˜ˆ์‚ฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์˜ˆ์‚ฐ.js) | +| 35 | [์™„์ฃผํ•˜์ง€ ๋ชปํ•œ ์„ ์ˆ˜](https://programmers.co.kr/learn/courses/30/lessons/42576) | [์™„์ฃผํ•˜์ง€-๋ชปํ•œ-์„ ์ˆ˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์™„์ฃผํ•˜์ง€-๋ชปํ•œ-์„ ์ˆ˜.js) | +| 36 | [์Œ์–‘ ๋”ํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/76501) | [์Œ์–‘-๋”ํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์Œ์–‘-๋”ํ•˜๊ธฐ.js) | +| 37 | [์ด์ƒํ•œ ๋ฌธ์ž ๋งŒ๋“ค๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12930) | [์ด์ƒํ•œ-๋ฌธ์ž-๋งŒ๋“ค๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ด์ƒํ•œ-๋ฌธ์ž-๋งŒ๋“ค๊ธฐ.js) | +| 38 | [์ž๋ฆฟ์ˆ˜ ๋”ํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12931) | [์ž๋ฆฟ์ˆ˜-๋”ํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ž๋ฆฟ์ˆ˜-๋”ํ•˜๊ธฐ.js) | +| 39 | [์ž์—ฐ์ˆ˜ ๋’ค์ง‘์–ด ๋ฐฐ์—ด๋กœ ๋งŒ๋“ค๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12932) | [์ž์—ฐ์ˆ˜-๋’ค์ง‘์–ด-๋ฐฐ์—ด๋กœ-๋งŒ๋“ค๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ž์—ฐ์ˆ˜-๋’ค์ง‘์–ด-๋ฐฐ์—ด๋กœ-๋งŒ๋“ค๊ธฐ.js) | +| 40 | [์ •์ˆ˜ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ๋ฐฐ์น˜ํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12933) | [์ •์ˆ˜-๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ-๋ฐฐ์น˜ํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ •์ˆ˜-๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ-๋ฐฐ์น˜ํ•˜๊ธฐ.js) | +| 41 | [์ •์ˆ˜ ์ œ๊ณฑ๊ทผ ํŒ๋ณ„](https://programmers.co.kr/learn/courses/30/lessons/12934) | [์ •์ˆ˜-์ œ๊ณฑ๊ทผ-ํŒ๋ณ„.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ •์ˆ˜-์ œ๊ณฑ๊ทผ-ํŒ๋ณ„.js) | +| 42 | [์ œ์ผ ์ž‘์€ ์ˆ˜ ์ œ๊ฑฐํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12935) | [์ œ์ผ-์ž‘์€-์ˆ˜-์ œ๊ฑฐํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ œ์ผ-์ž‘์€-์ˆ˜-์ œ๊ฑฐํ•˜๊ธฐ.js) | +| 43 | [์ง์‚ฌ๊ฐํ˜• ๋ณ„์ฐ๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12969) | [์ง์‚ฌ๊ฐํ˜•-๋ณ„์ฐ๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ง์‚ฌ๊ฐํ˜•-๋ณ„์ฐ๊ธฐ.js) | +| 44 | [์ง์ˆ˜์™€ ํ™€์ˆ˜](https://programmers.co.kr/learn/courses/30/lessons/12937) | [์ง์ˆ˜์™€-ํ™€์ˆ˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ง์ˆ˜์™€-ํ™€์ˆ˜.js) | +| 45 | [์ฒด์œก๋ณต](https://programmers.co.kr/learn/courses/30/lessons/42862) | [์ฒด์œก๋ณต.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ฒด์œก๋ณต.js) | +| 46 | [์ตœ๋Œ€๊ณต์•ฝ์ˆ˜์™€ ์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜](https://programmers.co.kr/learn/courses/30/lessons/12940) | [์ตœ๋Œ€๊ณต์•ฝ์ˆ˜์™€-์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ตœ๋Œ€๊ณต์•ฝ์ˆ˜์™€-์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜.js) | +| 47 | [์ตœ์†Œ์ง์‚ฌ๊ฐํ˜•](https://programmers.co.kr/learn/courses/30/lessons/86491) | [์ตœ์†Œ์ง์‚ฌ๊ฐํ˜•.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ตœ์†Œ์ง์‚ฌ๊ฐํ˜•.js) | +| 48 | [์ฝœ๋ผ์ธ  ์ถ”์ธก](https://programmers.co.kr/learn/courses/30/lessons/12943) | [์ฝœ๋ผ์ธ -์ถ”์ธก.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/์ฝœ๋ผ์ธ -์ถ”์ธก.js) | +| 49 | [ํฌ๋ ˆ์ธ ์ธํ˜•๋ฝ‘๊ธฐ ๊ฒŒ์ž„](https://programmers.co.kr/learn/courses/30/lessons/64061) | [ํฌ๋ ˆ์ธ-์ธํ˜•๋ฝ‘๊ธฐ-๊ฒŒ์ž„.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/ํฌ๋ ˆ์ธ-์ธํ˜•๋ฝ‘๊ธฐ-๊ฒŒ์ž„.js) | +| 50 | [ํ‚คํŒจ๋“œ ๋ˆ„๋ฅด๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/67256) | [ํ‚คํŒจ๋“œ-๋ˆ„๋ฅด๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/ํ‚คํŒจ๋“œ-๋ˆ„๋ฅด๊ธฐ.js) | +| 51 | [ํ‰๊ท  ๊ตฌํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12944) | [ํ‰๊ท -๊ตฌํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/ํ‰๊ท -๊ตฌํ•˜๊ธฐ.js) | +| 52 | [ํฐ์ผ“๋ชฌ](https://programmers.co.kr/learn/courses/30/lessons/1845) | [ํฐ์ผ“๋ชฌ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/ํฐ์ผ“๋ชฌ.js) | +| 53 | [ํ•ธ๋“œํฐ ๋ฒˆํ˜ธ ๊ฐ€๋ฆฌ๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12948) | [ํ•ธ๋“œํฐ-๋ฒˆํ˜ธ-๊ฐ€๋ฆฌ๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/ํ•ธ๋“œํฐ-๋ฒˆํ˜ธ-๊ฐ€๋ฆฌ๊ธฐ.js) | +| 54 | [ํ–‰๋ ฌ์˜ ๋ง์…ˆ](https://programmers.co.kr/learn/courses/30/lessons/12950) | [ํ–‰๋ ฌ์˜-๋ง์…ˆ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/ํ–‰๋ ฌ์˜-๋ง์…ˆ.js) | +| 55 | [ํžˆ์ƒค๋“œ ์ˆ˜](undefined) | [ํžˆ์ƒค๋“œ-์ˆ˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-1/ํžˆ์ƒค๋“œ-์ˆ˜.js) | ### Level 2 ๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ป(ํ’€์ด ์ค‘..) -> ํ’€์ด๊ฐ€ ์™„๋ฃŒ๋˜๋Š”๋Œ€๋กœ ํ‘œ๊ฐ€ ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค. ํ‘œ๊ฐ€ ์—†๋”๋ผ๋„ ํ•ด๋‹น ๋ ˆ๋ฒจ ํด๋”์—์„œ ํ˜„์žฌ๊นŒ์ง€ ํ’€์–ด์ง„ ํ’€์ด๋ฅผ ๊ฒ€์ƒ‰ํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. - ์ „์ฒด ๋ฌธ์ œ ์ˆ˜: 64๋ฌธ์ œ -- ํ’€์ด ๋ฌธ์ œ ์ˆ˜: 46๋ฌธ์ œ(2022.04.14) -- ํ’€์ด ์™„๋ฃŒ ์˜ˆ์ƒ ์‹œ์ : 2022๋…„ 4์›” ์ค‘ +- ํ’€์ด ๋ฌธ์ œ ์ˆ˜: 46๋ฌธ์ œ +- ํ’€์ด ์™„๋ฃŒ ์˜ˆ์ƒ ์‹œ์ : 2022๋…„ 4์›” ์ค‘ + +| ๋ฒˆํ˜ธ | ๋ฌธ์ œ ์ถœ์ฒ˜ | ํ’€์ด | +| --- | ------- | --- | +| 1 | [124 ๋‚˜๋ผ์˜ ์ˆซ์ž](https://programmers.co.kr/learn/courses/30/lessons/12899) | [124-๋‚˜๋ผ์˜-์ˆซ์ž.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/124-๋‚˜๋ผ์˜-์ˆซ์ž.js) | +| 2 | [H-Index](https://programmers.co.kr/learn/courses/30/lessons/42747) | [H-Index.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/H-Index.js) | +| 3 | [JadenCase ๋ฌธ์ž์—ด ๋งŒ๋“ค๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12951) | [JadenCase-๋ฌธ์ž์—ด-๋งŒ๋“ค๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/JadenCase-๋ฌธ์ž์—ด-๋งŒ๋“ค๊ธฐ.js) | +| 4 | [K ๋ฒˆ์งธ์ˆ˜](undefined) | [K-๋ฒˆ์งธ์ˆ˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/K-๋ฒˆ์งธ์ˆ˜.js) | +| 5 | [N๊ฐœ์˜ ์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜](https://programmers.co.kr/learn/courses/30/lessons/12953) | [N๊ฐœ์˜-์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/N๊ฐœ์˜-์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜.js) | +| 6 | [[1์ฐจ] ๋‰ด์Šค ํด๋Ÿฌ์Šคํ„ฐ๋ง](https://programmers.co.kr/learn/courses/30/lessons/17677) | [[1์ฐจ]-๋‰ด์Šค-ํด๋Ÿฌ์Šคํ„ฐ๋ง.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/[1์ฐจ]-๋‰ด์Šค-ํด๋Ÿฌ์Šคํ„ฐ๋ง.js) | +| 7 | [[1์ฐจ] ์บ์‹œ](https://programmers.co.kr/learn/courses/30/lessons/17680) | [[1์ฐจ]-์บ์‹œ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/[1์ฐจ]-์บ์‹œ.js) | +| 8 | [[3์ฐจ] n์ง„์ˆ˜ ๊ฒŒ์ž„](https://programmers.co.kr/learn/courses/30/lessons/17687) | [[3์ฐจ]-n์ง„์ˆ˜-๊ฒŒ์ž„.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/[3์ฐจ]-n์ง„์ˆ˜-๊ฒŒ์ž„.js) | +| 9 | [[3์ฐจ] ํŒŒ์ผ๋ช… ์ •๋ ฌ](https://programmers.co.kr/learn/courses/30/lessons/17686) | [[3์ฐจ]-ํŒŒ์ผ๋ช…-์ •๋ ฌ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/[3์ฐจ]-ํŒŒ์ผ๋ช…-์ •๋ ฌ.js) | +| 10 | [๊ฐ€์žฅ ํฐ ์ˆ˜](https://programmers.co.kr/learn/courses/30/lessons/42746) | [๊ฐ€์žฅ-ํฐ-์ˆ˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/๊ฐ€์žฅ-ํฐ-์ˆ˜.js) | +| 11 | [๊ฐ€์žฅ ํฐ ์ •์‚ฌ๊ฐํ˜• ์ฐพ๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12905) | [๊ฐ€์žฅ-ํฐ-์ •์‚ฌ๊ฐํ˜•-์ฐพ๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/๊ฐ€์žฅ-ํฐ-์ •์‚ฌ๊ฐํ˜•-์ฐพ๊ธฐ.js) | +| 12 | [๊ฑฐ๋ฆฌ๋‘๊ธฐ ํ™•์ธํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/81302) | [๊ฑฐ๋ฆฌ๋‘๊ธฐ-ํ™•์ธํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/๊ฑฐ๋ฆฌ๋‘๊ธฐ-ํ™•์ธํ•˜๊ธฐ.js) | +| 13 | [๊ด„ํ˜ธ ๋ณ€ํ™˜](https://programmers.co.kr/learn/courses/30/lessons/60058) | [๊ด„ํ˜ธ-๋ณ€ํ™˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/๊ด„ํ˜ธ-๋ณ€ํ™˜.js) | +| 14 | [๊ด„ํ˜ธ ํšŒ์ „ํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/76502) | [๊ด„ํ˜ธ-ํšŒ์ „ํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/๊ด„ํ˜ธ-ํšŒ์ „ํ•˜๊ธฐ.js) | +| 15 | [๊ตฌ๋ช…๋ณดํŠธ](https://programmers.co.kr/learn/courses/30/lessons/42885) | [๊ตฌ๋ช…๋ณดํŠธ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/๊ตฌ๋ช…๋ณดํŠธ.js) | +| 16 | [๊ธฐ๋Šฅ๊ฐœ๋ฐœ](https://programmers.co.kr/learn/courses/30/lessons/42586) | [๊ธฐ๋Šฅ๊ฐœ๋ฐœ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/๊ธฐ๋Šฅ๊ฐœ๋ฐœ.js) | +| 17 | [๋‹ค๋ฆฌ๋ฅผ ์ง€๋‚˜๋Š” ํŠธ๋Ÿญ](https://programmers.co.kr/learn/courses/30/lessons/42583) | [๋‹ค๋ฆฌ๋ฅผ-์ง€๋‚˜๋Š”-ํŠธ๋Ÿญ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/๋‹ค๋ฆฌ๋ฅผ-์ง€๋‚˜๋Š”-ํŠธ๋Ÿญ.js) | +| 18 | [๋‹ค์Œ ํฐ ์ˆซ์ž](https://programmers.co.kr/learn/courses/30/lessons/12911) | [๋‹ค์Œ-ํฐ-์ˆซ์ž.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/๋‹ค์Œ-ํฐ-์ˆซ์ž.js) | +| 19 | [๋•…๋”ฐ๋จน๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12913) | [๋•…๋”ฐ๋จน๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/๋•…๋”ฐ๋จน๊ธฐ.js) | +| 20 | [๋ฉ€์ฉกํ•œ ์‚ฌ๊ฐํ˜•](https://programmers.co.kr/learn/courses/30/lessons/62048) | [๋ฉ€์ฉกํ•œ-์‚ฌ๊ฐํ˜•.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/๋ฉ€์ฉกํ•œ-์‚ฌ๊ฐํ˜•.js) | +| 21 | [๋ฉ”๋‰ด ๋ฆฌ๋‰ด์–ผ](https://programmers.co.kr/learn/courses/30/lessons/72411) | [๋ฉ”๋‰ด-๋ฆฌ๋‰ด์–ผ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/๋ฉ”๋‰ด-๋ฆฌ๋‰ด์–ผ.js) | +| 22 | [๋ฌธ์ž์—ด ์••์ถ•](https://programmers.co.kr/learn/courses/30/lessons/60057) | [๋ฌธ์ž์—ด-์••์ถ•.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/๋ฌธ์ž์—ด-์••์ถ•.js) | +| 23 | [์‚ผ๊ฐ ๋‹ฌํŒฝ์ด](https://programmers.co.kr/learn/courses/30/lessons/68645) | [์‚ผ๊ฐ-๋‹ฌํŒฝ์ด.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/์‚ผ๊ฐ-๋‹ฌํŒฝ์ด.js) | +| 24 | [์†Œ์ˆ˜ ์ฐพ๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/42839) | [์†Œ์ˆ˜-์ฐพ๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/์†Œ์ˆ˜-์ฐพ๊ธฐ.js) | +| 25 | [์ˆ˜์‹ ์ตœ๋Œ€ํ™”](https://programmers.co.kr/learn/courses/30/lessons/67257) | [์ˆ˜์‹-์ตœ๋Œ€ํ™”.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/์ˆ˜์‹-์ตœ๋Œ€ํ™”.js) | +| 26 | [์ˆซ์ž์˜ ํ‘œํ˜„](https://programmers.co.kr/learn/courses/30/lessons/12924) | [์ˆซ์ž์˜-ํ‘œํ˜„.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/์ˆซ์ž์˜-ํ‘œํ˜„.js) | +| 27 | [์Šคํ‚ฌํŠธ๋ฆฌ](https://programmers.co.kr/learn/courses/30/lessons/49993) | [์Šคํ‚ฌํŠธ๋ฆฌ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/์Šคํ‚ฌํŠธ๋ฆฌ.js) | +| 28 | [์˜์–ด ๋๋ง์ž‡๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12981) | [์˜์–ด-๋๋ง์ž‡๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/์˜์–ด-๋๋ง์ž‡๊ธฐ.js) | +| 29 | [์˜ˆ์ƒ ๋Œ€์ง„ํ‘œ](https://programmers.co.kr/learn/courses/30/lessons/12985) | [์˜ˆ์ƒ-๋Œ€์ง„ํ‘œ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/์˜ˆ์ƒ-๋Œ€์ง„ํ‘œ.js) | +| 30 | [์˜คํ”ˆ์ฑ„ํŒ…๋ฐฉ ](https://programmers.co.kr/learn/courses/30/lessons/42888) | [์˜คํ”ˆ์ฑ„ํŒ…๋ฐฉ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/์˜คํ”ˆ์ฑ„ํŒ…๋ฐฉ.js) | +| 31 | [์˜ฌ๋ฐ”๋ฅธ ๊ด„ํ˜ธ](https://programmers.co.kr/learn/courses/30/lessons/12909) | [์˜ฌ๋ฐ”๋ฅธ-๊ด„ํ˜ธ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/์˜ฌ๋ฐ”๋ฅธ-๊ด„ํ˜ธ.js) | +| 32 | [์œ„์žฅ](https://programmers.co.kr/learn/courses/30/lessons/42578) | [์œ„์žฅ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/์œ„์žฅ.js) | +| 33 | [์ ํ”„์™€ ์ˆœ๊ฐ„ ์ด๋™](https://programmers.co.kr/learn/courses/30/lessons/12980) | [์ ํ”„์™€-์ˆœ๊ฐ„-์ด๋™.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/์ ํ”„์™€-์ˆœ๊ฐ„-์ด๋™.js) | +| 34 | [์กฐ์ด์Šคํ‹ฑ](https://programmers.co.kr/learn/courses/30/lessons/42860) | [์กฐ์ด์Šคํ‹ฑ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/์กฐ์ด์Šคํ‹ฑ.js) | +| 35 | [์ง์ง€์–ด ์ œ๊ฑฐํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12973) | [์ง์ง€์–ด-์ œ๊ฑฐํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/์ง์ง€์–ด-์ œ๊ฑฐํ•˜๊ธฐ.js) | +| 36 | [์ตœ๋Œ“๊ฐ’๊ณผ ์ตœ์†Ÿ๊ฐ’](https://programmers.co.kr/learn/courses/30/lessons/12939) | [์ตœ๋Œ“๊ฐ’๊ณผ-์ตœ์†Ÿ๊ฐ’.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/์ตœ๋Œ“๊ฐ’๊ณผ-์ตœ์†Ÿ๊ฐ’.js) | +| 37 | [์ตœ์†Ÿ๊ฐ’ ๋งŒ๋“ค๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/12941) | [์ตœ์†Ÿ๊ฐ’-๋งŒ๋“ค๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/์ตœ์†Ÿ๊ฐ’-๋งŒ๋“ค๊ธฐ.js) | +| 38 | [์นดํŽซ](https://programmers.co.kr/learn/courses/30/lessons/42842) | [์นดํŽซ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/์นดํŽซ.js) | +| 39 | [ํฐ ์ˆ˜ ๋งŒ๋“ค๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/42883) | [ํฐ-์ˆ˜-๋งŒ๋“ค๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/ํฐ-์ˆ˜-๋งŒ๋“ค๊ธฐ.js) | +| 40 | [ํƒ€๊ฒŸ ๋„˜๋ฒ„](https://programmers.co.kr/learn/courses/30/lessons/43165) | [ํƒ€๊ฒŸ-๋„˜๋ฒ„.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/ํƒ€๊ฒŸ-๋„˜๋ฒ„.js) | +| 41 | [ํŠœํ”Œ](https://programmers.co.kr/learn/courses/30/lessons/64065) | [ํŠœํ”Œ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/ํŠœํ”Œ.js) | +| 42 | [ํ”„๋ฆฐํ„ฐ](https://programmers.co.kr/learn/courses/30/lessons/42587) | [ํ”„๋ฆฐํ„ฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/ํ”„๋ฆฐํ„ฐ.js) | +| 43 | [ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜](https://programmers.co.kr/learn/courses/30/lessons/12945) | [ํ”ผ๋ณด๋‚˜์น˜-์ˆ˜.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/ํ”ผ๋ณด๋‚˜์น˜-์ˆ˜.js) | +| 44 | [ํ–‰๋ ฌ ํ…Œ๋‘๋ฆฌ ํšŒ์ „ํ•˜๊ธฐ](https://programmers.co.kr/learn/courses/30/lessons/77485) | [ํ–‰๋ ฌ-ํ…Œ๋‘๋ฆฌ-ํšŒ์ „ํ•˜๊ธฐ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/ํ–‰๋ ฌ-ํ…Œ๋‘๋ฆฌ-ํšŒ์ „ํ•˜๊ธฐ.js) | +| 45 | [ํ–‰๋ ฌ์˜ ๊ณฑ์…ˆ](https://programmers.co.kr/learn/courses/30/lessons/12949) | [ํ–‰๋ ฌ์˜-๊ณฑ์…ˆ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/ํ–‰๋ ฌ์˜-๊ณฑ์…ˆ.js) | +| 46 | [ํ›„๋ณดํ‚ค](https://programmers.co.kr/learn/courses/30/lessons/42890) | [ํ›„๋ณดํ‚ค.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-2/ํ›„๋ณดํ‚ค.js) | ### Level 3 ๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ป(ํ’€์ด ์ค‘..) - ์ „์ฒด ๋ฌธ์ œ ์ˆ˜: 52๋ฌธ์ œ -- ํ’€์ด ๋ฌธ์ œ ์ˆ˜: 5๋ฌธ์ œ(2022.03.30) +- ํ’€์ด ๋ฌธ์ œ ์ˆ˜: 8๋ฌธ์ œ - ํ’€์ด ์™„๋ฃŒ ์˜ˆ์ƒ ์‹œ์ : 2022๋…„ 8์›” ์ค‘ +| ๋ฒˆํ˜ธ | ๋ฌธ์ œ ์ถœ์ฒ˜ | ํ’€์ด | +| --- | ------- | --- | +| 1 | [2_x_n_ํƒ€์ผ๋ง](undefined) | [2_x_n_ํƒ€์ผ๋ง.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-3/2_x_n_ํƒ€์ผ๋ง.js) | +| 2 | [N-Queen](https://programmers.co.kr/learn/courses/30/lessons/12952) | [N-Queen.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-3/N-Queen.js) | +| 3 | [๊ฐ€์žฅ ๋จผ ๋…ธ๋“œ](https://programmers.co.kr/learn/courses/30/lessons/49189) | [๊ฐ€์žฅ-๋จผ-๋…ธ๋“œ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-3/๊ฐ€์žฅ-๋จผ-๋…ธ๋“œ.js) | +| 4 | [๋„คํŠธ์›Œํฌ](https://programmers.co.kr/learn/courses/30/lessons/43162) | [๋„คํŠธ์›Œํฌ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-3/๋„คํŠธ์›Œํฌ.js) | +| 5 | [๋ฒ ์ŠคํŠธ์•จ๋ฒ”](https://programmers.co.kr/learn/courses/30/lessons/42579) | [๋ฒ ์ŠคํŠธ์•จ๋ฒ”.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-3/๋ฒ ์ŠคํŠธ์•จ๋ฒ”.js) | +| 6 | [์—ฌํ–‰๊ฒฝ๋กœ](https://programmers.co.kr/learn/courses/30/lessons/43164) | [์—ฌํ–‰๊ฒฝ๋กœ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-3/์—ฌํ–‰๊ฒฝ๋กœ.js) | +| 7 | [์ด์ค‘์šฐ์„ ์ˆœ์œ„ํ](https://programmers.co.kr/learn/courses/30/lessons/42628) | [์ด์ค‘์šฐ์„ ์ˆœ์œ„ํ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-3/์ด์ค‘์šฐ์„ ์ˆœ์œ„ํ.js) | +| 8 | [์ž…๊ตญ์‹ฌ์‚ฌ](https://programmers.co.kr/learn/courses/30/lessons/43238) | [์ž…๊ตญ์‹ฌ์‚ฌ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-3/์ž…๊ตญ์‹ฌ์‚ฌ.js) | + ### Level 4 -ํ’€์ด ์™„๋ฃŒ ์˜ˆ์ƒ ์‹œ์  : ์˜ˆ์ • ์—†์Œ +- ์ „์ฒด ๋ฌธ์ œ ์ˆ˜: 22๋ฌธ์ œ +- ํ’€์ด ๋ฌธ์ œ ์ˆ˜: 1๋ฌธ์ œ +- ํ’€์ด ์™„๋ฃŒ ์˜ˆ์ƒ ์‹œ์ : ์˜ˆ์ • ์—†์Œ + +| ๋ฒˆํ˜ธ | ๋ฌธ์ œ ์ถœ์ฒ˜ | ํ’€์ด | +| --- | ------- | --- | +| 1 | [๋‹จ์–ด ํผ์ฆ](https://programmers.co.kr/learn/courses/30/lessons/12983) | [๋‹จ์–ด-ํผ์ฆ.js](https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-4/๋‹จ์–ด-ํผ์ฆ.js) | ### Level 5 -ํ’€์ด ์™„๋ฃŒ ์˜ˆ์ƒ ์‹œ์ : ์˜ˆ์ • ์—†์Œ +- ์ „์ฒด ๋ฌธ์ œ ์ˆ˜: 6๋ฌธ์ œ +- ํ’€์ด ๋ฌธ์ œ ์ˆ˜: 0๋ฌธ์ œ +- ํ’€์ด ์™„๋ฃŒ ์˜ˆ์ƒ ์‹œ์ : ์˜ˆ์ • ์—†์Œ + +| ๋ฒˆํ˜ธ | ๋ฌธ์ œ ์ถœ์ฒ˜ | ํ’€์ด | +| --- | ------- | --- | + ## ๐Ÿ™๐Ÿป ์•„์ง ํ’€๋ฆฌ์ง€ ์•Š์€ ๋ฌธ์ œ์˜ ํ•ด๋‹ต์„ ์ถ”๊ฐ€ํ•ด ์ฃผ์„ธ์š”! ### ์ปค๋ฐ‹ ์ปจ๋ฒค์…˜ @@ -122,4 +193,3 @@ ํ•ด๋‹น Repository์˜ ํ•ด๋‹ต์„ ์ž์‹ ์˜ ์ €์ž‘๋ฌผ์— ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ **๋ฐ˜๋“œ์‹œ** ๋ณธ Repository์˜ ์ฃผ์†Œ `https://github.com/codeisneverodd/programmers-coding-test` ๋ฅผ ๋ช…์‹œํ•˜์—ฌ์•ผํ•ฉ๋‹ˆ๋‹ค. - From 78c906c8f4b5ddd91a546cabd92beeeb05553635 Mon Sep 17 00:00:00 2001 From: cruelladevil Date: Fri, 15 Apr 2022 18:26:14 +0900 Subject: [PATCH 8/8] =?UTF-8?q?main=20=EB=B8=8C=EB=9E=9C=EC=B9=98=EC=97=90?= =?UTF-8?q?=EC=84=9C=20=EB=8F=99=EC=9E=91=ED=95=98=EB=8F=84=EB=A1=9D=20yml?= =?UTF-8?q?=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/update-README.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/update-README.yml b/.github/workflows/update-README.yml index 029b424..38d8401 100644 --- a/.github/workflows/update-README.yml +++ b/.github/workflows/update-README.yml @@ -5,9 +5,9 @@ name: update README.md on: push: - branches: [ github-action ] + branches: [ main ] pull_request: - branches: [ github-action ] + branches: [ main ] jobs: build: