From 2fbc5135ba9457d74064505eb2a16a300a18ce97 Mon Sep 17 00:00:00 2001 From: malkoG Date: Sun, 22 Dec 2019 13:44:04 +0900 Subject: [PATCH 1/8] feat: Add Custom Filter --- _config.yml | 2 ++ _plugins/keys_filter.rb | 13 +++++++++++++ 2 files changed, 15 insertions(+) create mode 100644 _plugins/keys_filter.rb diff --git a/_config.yml b/_config.yml index 10f9904..d3261dc 100644 --- a/_config.yml +++ b/_config.yml @@ -31,6 +31,8 @@ collections: lists: output: false + faqs: + output: false # Use this for production #sass: diff --git a/_plugins/keys_filter.rb b/_plugins/keys_filter.rb new file mode 100644 index 0000000..7491c69 --- /dev/null +++ b/_plugins/keys_filter.rb @@ -0,0 +1,13 @@ +module Jekyll + module KeysFilter + def keys(input) + input.keys + end + + def access(input, key) + input[key] + end + end +end + +Liquid::Template.register_filter(Jekyll::KeysFilter) \ No newline at end of file From 21899e31ea9a86002471292473851960b88993a6 Mon Sep 17 00:00:00 2001 From: malkoG Date: Sun, 22 Dec 2019 15:12:59 +0900 Subject: [PATCH 2/8] =?UTF-8?q?feat:=20FAQ=20=EB=A6=AC=EC=8A=A4=ED=8A=B8?= =?UTF-8?q?=20=ED=99=94=EB=A9=B4=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _data/faqs/activity.yaml | 20 ++++++++++ _data/faqs/registration.yaml | 20 ++++++++++ _faqs/faq.md | 72 ++++++++++++++++++++++++++++++++++++ _layouts/faq.html | 31 ++++++++++++++++ css/faq/main.css | 54 +++++++++++++++++++++++++++ faq.html | 19 ++++++++++ 6 files changed, 216 insertions(+) create mode 100644 _data/faqs/activity.yaml create mode 100644 _data/faqs/registration.yaml create mode 100644 _faqs/faq.md create mode 100644 _layouts/faq.html create mode 100644 css/faq/main.css create mode 100644 faq.html diff --git a/_data/faqs/activity.yaml b/_data/faqs/activity.yaml new file mode 100644 index 0000000..cb0ec9a --- /dev/null +++ b/_data/faqs/activity.yaml @@ -0,0 +1,20 @@ +- chatroom: "활동 내용" + chats: + - speaker: "admin" + messages: + - "dddddd" + - "asdasd" + - speaker: "guest" + messages: + - "asdsad" + - "asdsad" + - "asdsad" + - speaker: "admin" + messages: + - "dddddd" + - "asdasd" + - speaker: "guest" + messages: + - "asdsad" + - "asdsad" + - "asdsad" diff --git a/_data/faqs/registration.yaml b/_data/faqs/registration.yaml new file mode 100644 index 0000000..56946a5 --- /dev/null +++ b/_data/faqs/registration.yaml @@ -0,0 +1,20 @@ +- chatroom: "가입 조건" + chats: + - speaker: "admin" + messages: + - "dddddd" + - "asdasd" + - speaker: "guest" + messages: + - "asdsad" + - "asdsad" + - "asdsad" + - speaker: "admin" + messages: + - "dddddd" + - "asdasd" + - speaker: "guest" + messages: + - "asdsad" + - "asdsad" + - "asdsad" diff --git a/_faqs/faq.md b/_faqs/faq.md new file mode 100644 index 0000000..2e94724 --- /dev/null +++ b/_faqs/faq.md @@ -0,0 +1,72 @@ +--- +--- + +{% assign faq_list = site.data.faqs %} +{% assign faq_size = faq_list.size | minus: 1 %} + +{% comment %} + {% for faq in faq_list %} + {{ faq | jsonify }}
+ {{ faq[0] }}
+ {{ faq[1][0] | jsonify }}
+ {{ faq[1][0].chatroom }}
+ {{ faq[1][0].chats }}
+ {% for chat in faq[1][0].chats %} + {{ chat.speaker }}
+ {% for message in chat.messages %} + {{ message }} + {% endfor %} + {% endfor %} +
+ {% endfor %} +{% endcomment %} + +
+ {% for faq in faq_list %} + + {% assign faq_idx = forloop.index %} + +
+
+ +
+
+
+ {{ faq[1][0].chatroom }} +
+
+ ... +
+
+
+ {% endfor %} +
+ +
+ +{% for faq in faq_list %} + + {% assign faq_idx = forloop.index %} + +
+
+ {{ faq[1][0].chatroom }} +
+
+ {% for chat in faq[1][0].chats %} + {{ chat.speaker }}
+ {% for message in chat.messages %} +
+ {{ message }} +
+ {% endfor %} + {% endfor %} +
+
+{% endfor %} + {% comment %} + {{ faq_list[0].chatroom }} + {{ faq_list[0]}} + {% endcomment %} + +
\ No newline at end of file diff --git a/_layouts/faq.html b/_layouts/faq.html new file mode 100644 index 0000000..6c22313 --- /dev/null +++ b/_layouts/faq.html @@ -0,0 +1,31 @@ + + + + + + + + + + {% include head.html %} + + + + + + + + + + + {{ content }} + + + +{% include footer.html %} + + + + diff --git a/css/faq/main.css b/css/faq/main.css new file mode 100644 index 0000000..a7386d2 --- /dev/null +++ b/css/faq/main.css @@ -0,0 +1,54 @@ +body { + margin: 0; +} + +header { + padding-top: 20px; + padding-left: 20px; + font-size: 29px; + font-weight: 900; + padding-bottom: 10px; + + border-bottom: 1px solid #ddd; +} + +.faq { + display: flex; + height: 80px; + border-bottom: 1px solid #eee; +} + +.faq .icon { + flex-basis: 80px; + + display: flex; + justify-content: center; + align-items: center; +} + +.faq .icon img { + width: 60px; + height: 60px; + border-radius: 20px; +} + +.faq .content { + display: flex; + flex-direction: column; + margin-left: 20px; +} + +.faq .title { + flex: 4; + display: flex; + align-items: center; + + font-size: 20px; + font-weight: 900; +} + +.faq .preview { + flex: 3; + display: flex; + align-items: center; +} \ No newline at end of file diff --git a/faq.html b/faq.html new file mode 100644 index 0000000..c8ec3ad --- /dev/null +++ b/faq.html @@ -0,0 +1,19 @@ +--- +layout: faq +title: "HI-ARC" +excerpt: HI-ARC | Hong-Ik Algorithm Research Club +--- + +
+
+ {{ site.title }} FAQ +
+
+ +
+ {% comment %} + 한개짜리 일 때는 콜렉션 자체를 반환 + {% endcomment %} + + {{ site.faqs }} +
\ No newline at end of file From 1d5b0f583189fa43c9d81ad7e2da15f4d8ab9f9f Mon Sep 17 00:00:00 2001 From: malkoG Date: Sun, 22 Dec 2019 16:21:37 +0900 Subject: [PATCH 3/8] feat: Add FAQ Detail Page --- _data/faqs/activity.yaml | 2 +- _faqs/faq.md | 39 +++++++++++++++------ css/faq/chatroom.css | 74 ++++++++++++++++++++++++++++++++++++++++ css/faq/main.css | 11 +++++- faq.html | 8 +---- js/faq.js | 19 +++++++++++ 6 files changed, 134 insertions(+), 19 deletions(-) create mode 100644 css/faq/chatroom.css create mode 100644 js/faq.js diff --git a/_data/faqs/activity.yaml b/_data/faqs/activity.yaml index cb0ec9a..14774c9 100644 --- a/_data/faqs/activity.yaml +++ b/_data/faqs/activity.yaml @@ -6,7 +6,7 @@ - "asdasd" - speaker: "guest" messages: - - "asdsad" + - "asdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsad" - "asdsad" - "asdsad" - speaker: "admin" diff --git a/_faqs/faq.md b/_faqs/faq.md index 2e94724..3e3109d 100644 --- a/_faqs/faq.md +++ b/_faqs/faq.md @@ -21,12 +21,18 @@ {% endfor %} {% endcomment %} -
+
+
+
+ {{ site.title }} FAQ +
+
+ {% for faq in faq_list %} {% assign faq_idx = forloop.index %} -
+
@@ -42,25 +48,38 @@ {% endfor %}
-
+
+ {% for faq in faq_list %} {% assign faq_idx = forloop.index %}
-
- {{ faq[1][0].chatroom }} -
+
+
+ + {{ faq[1][0].chatroom }} +
+
+
- {% for chat in faq[1][0].chats %} - {{ chat.speaker }}
+ {% for chat in faq[1][0].chats %} +
+
+ +
+
{% for message in chat.messages %}
- {{ message }} +
+ {{ message }} +
{% endfor %} - {% endfor %} +
+
+ {% endfor %}
{% endfor %} diff --git a/css/faq/chatroom.css b/css/faq/chatroom.css new file mode 100644 index 0000000..fc4f25e --- /dev/null +++ b/css/faq/chatroom.css @@ -0,0 +1,74 @@ +.hide { + display: none; +} + +.chatroom-content { + height: calc(100vh - 84px); + overflow-y: scroll; + + background-color: #9bbbd4; +} + +.messages-wrapper { + display: flex; + margin-top: 20px; +} + +.messages-wrapper .message.guest { + flex: flex-end; +} + +.messages-wrapper .icon { + display: flex; + + flex-basis: 40px; + height: 54px; + + margin-right: 10px; + + justify-content: center; + align-items: center; +} + +.icon.guest { + display: none; +} + +.messages { + width: 100%; +} + +.speech-bubble { + max-width: calc(100vw - 20%); + margin-top: 5px; + margin-bottom: 5px; + + word-break: break-all; +} + +.admin.message { + display: flex; + justify-content: flex-start; +} + +.guest.message { + display: flex; + justify-content: flex-end; +} + +.speech-bubble { + border-radius: 15px; + padding: 10px; + max-width: calc(100vw - 20%); + width: auto; +} + +.admin .speech-bubble { + background-color: white; +} + +.guest .speech-bubble { + margin-right: 10px; + background-color: #f7e600; + right: 0; +} \ No newline at end of file diff --git a/css/faq/main.css b/css/faq/main.css index a7386d2..3a5f31c 100644 --- a/css/faq/main.css +++ b/css/faq/main.css @@ -7,9 +7,14 @@ header { padding-left: 20px; font-size: 29px; font-weight: 900; - padding-bottom: 10px; + padding-bottom: 20px; border-bottom: 1px solid #ddd; + align-items: center; +} + +header a { + padding-right: 10px; } .faq { @@ -51,4 +56,8 @@ header { flex: 3; display: flex; align-items: center; +} + +.pointer { + cursor: pointer; } \ No newline at end of file diff --git a/faq.html b/faq.html index c8ec3ad..5ac6088 100644 --- a/faq.html +++ b/faq.html @@ -4,16 +4,10 @@ excerpt: HI-ARC | Hong-Ik Algorithm Research Club --- -
-
- {{ site.title }} FAQ -
-
-
{% comment %} 한개짜리 일 때는 콜렉션 자체를 반환 {% endcomment %} - + {{ site.faqs }}
\ No newline at end of file diff --git a/js/faq.js b/js/faq.js new file mode 100644 index 0000000..cede20f --- /dev/null +++ b/js/faq.js @@ -0,0 +1,19 @@ +function clickFaq(faq_idx) { + var faqContainer = document.querySelector("#faq-container") + var chatroomContainer = document.querySelector("#chatroom-container") + var faq = document.querySelector(".chatroom-" + faq_idx.toString()); + + faq.classList.toggle('hide'); + faqContainer.classList.toggle('hide'); + chatroomContainer.classList.toggle('hide'); +} + +function goBackToFaqList(faq_idx) { + var faqContainer = document.querySelector("#faq-container") + var chatroomContainer = document.querySelector("#chatroom-container") + var faq = document.querySelector(".chatroom-" + faq_idx.toString()); + + chatroomContainer.classList.toggle('hide'); + faq.classList.toggle('hide'); + faqContainer.classList.toggle('hide'); +} \ No newline at end of file From c6aad321bf4196c25f552ede4f5bafe8b45d0482 Mon Sep 17 00:00:00 2001 From: malkoG Date: Sun, 22 Dec 2019 17:14:41 +0900 Subject: [PATCH 4/8] =?UTF-8?q?feat:=20FAQ=20=EC=83=81=EC=84=B8=20?= =?UTF-8?q?=ED=8E=98=EC=9D=B4=EC=A7=80=20=EC=B5=9C=EC=A2=85=20=EC=99=84?= =?UTF-8?q?=EC=84=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _data/faqs/registration.yaml | 27 ++++++++++++++++++ css/faq/chatroom.css | 54 +++++++++++++++++++++++++++++++++--- 2 files changed, 77 insertions(+), 4 deletions(-) diff --git a/_data/faqs/registration.yaml b/_data/faqs/registration.yaml index 56946a5..fe200ff 100644 --- a/_data/faqs/registration.yaml +++ b/_data/faqs/registration.yaml @@ -18,3 +18,30 @@ - "asdsad" - "asdsad" - "asdsad" + - speaker: "admin" + messages: + - "dddddd" + - "asdasd" + - speaker: "guest" + messages: + - "asdsad" + - "asdsad" + - "asdsad" + - speaker: "admin" + messages: + - "dddddd" + - "asdasd" + - speaker: "guest" + messages: + - "asdsad" + - "asdsad" + - "asdsad" + - speaker: "admin" + messages: + - "dddddd" + - "asdasd" + - speaker: "guest" + messages: + - "asdsad" + - "asdsad" + - "asdsad" diff --git a/css/faq/chatroom.css b/css/faq/chatroom.css index fc4f25e..3241d2a 100644 --- a/css/faq/chatroom.css +++ b/css/faq/chatroom.css @@ -3,7 +3,7 @@ } .chatroom-content { - height: calc(100vh - 84px); + height: calc(100vh - 85px); overflow-y: scroll; background-color: #9bbbd4; @@ -12,6 +12,7 @@ .messages-wrapper { display: flex; margin-top: 20px; + margin-left: 10px; } .messages-wrapper .message.guest { @@ -24,12 +25,17 @@ flex-basis: 40px; height: 54px; - margin-right: 10px; + margin-right: 5px; justify-content: center; align-items: center; } +.messages-wrapper .icon img { + width: 40px; + border-radius: 10px; +} + .icon.guest { display: none; } @@ -57,6 +63,10 @@ } .speech-bubble { + margin-left: 10px; + margin-right: 10px; + + position: relative; border-radius: 15px; padding: 10px; max-width: calc(100vw - 20%); @@ -68,7 +78,43 @@ } .guest .speech-bubble { - margin-right: 10px; + margin-right: 20px; background-color: #f7e600; right: 0; -} \ No newline at end of file +} + +.messages-wrapper +.messages.admin +.message.admin:first-of-type +.speech-bubble:after { + content: ''; + position: absolute; + left: 0; + top: 50%; + width: 0; + height: 0; + border: 10px solid transparent; + border-right-color: white; + border-left: 0; + border-top: 0; + margin-top: -5px; + margin-left: -10px; +} + +.messages-wrapper +.messages.guest +.message.guest:last-of-type +.speech-bubble:after { + content: ''; + position: absolute; + right: 0; + top: 50%; + width: 0; + height: 0; + border: 10px solid transparent; + border-left-color: #f7e600; + border-right: 0; + border-bottom: 0; + margin-top: -5px; + margin-right: -10px; +} From 16590b041a891f8a579de68170ad8d120e3de0b5 Mon Sep 17 00:00:00 2001 From: malkoG Date: Sun, 22 Dec 2019 17:20:12 +0900 Subject: [PATCH 5/8] =?UTF-8?q?FAQ=20=ED=8E=98=EC=9D=B4=EC=A7=80=20?= =?UTF-8?q?=EC=83=81=EB=8B=A8=EC=97=90=20=EB=92=A4=EB=A1=9C=EA=B0=80?= =?UTF-8?q?=EA=B8=B0=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _faqs/faq.md | 2 +- css/faq/main.css | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/_faqs/faq.md b/_faqs/faq.md index 3e3109d..b5e5e0d 100644 --- a/_faqs/faq.md +++ b/_faqs/faq.md @@ -24,7 +24,7 @@
- {{ site.title }} FAQ + {{ site.title }} FAQ
diff --git a/css/faq/main.css b/css/faq/main.css index 3a5f31c..faecdbb 100644 --- a/css/faq/main.css +++ b/css/faq/main.css @@ -15,6 +15,8 @@ header { header a { padding-right: 10px; + color: black; + text-decoration: none; } .faq { From 9186385b31b98e478877519a1da9b906bfac4c6b Mon Sep 17 00:00:00 2001 From: malkoG Date: Sun, 22 Dec 2019 17:22:54 +0900 Subject: [PATCH 6/8] fix: Remove Unnecessary Codes --- _plugins/keys_filter.rb | 13 ------------- 1 file changed, 13 deletions(-) delete mode 100644 _plugins/keys_filter.rb diff --git a/_plugins/keys_filter.rb b/_plugins/keys_filter.rb deleted file mode 100644 index 7491c69..0000000 --- a/_plugins/keys_filter.rb +++ /dev/null @@ -1,13 +0,0 @@ -module Jekyll - module KeysFilter - def keys(input) - input.keys - end - - def access(input, key) - input[key] - end - end -end - -Liquid::Template.register_filter(Jekyll::KeysFilter) \ No newline at end of file From 9459b502f341906f6aaac8b14f35baa2d9370f0c Mon Sep 17 00:00:00 2001 From: malkoG Date: Mon, 23 Dec 2019 09:30:31 +0900 Subject: [PATCH 7/8] =?UTF-8?q?FAQ=20=EC=98=88=EC=A0=9C=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _data/faqs/activity.yaml | 34 +++++++++++++++++-------- _data/faqs/registration.yaml | 48 ++++++++---------------------------- 2 files changed, 34 insertions(+), 48 deletions(-) diff --git a/_data/faqs/activity.yaml b/_data/faqs/activity.yaml index 14774c9..e538640 100644 --- a/_data/faqs/activity.yaml +++ b/_data/faqs/activity.yaml @@ -1,20 +1,34 @@ - chatroom: "활동 내용" chats: + - speaker: "guest" + messages: + - "하이아크에서는 어떤 활동을 하나요?" - speaker: "admin" messages: - - "dddddd" - - "asdasd" + - "하이아크의 주 목적은 ICPC, SCPC 등 여러 프로그래밍 대회에 참여해서 높은 성적을 받는 것입니다." + - "프로그래밍 대회에 참여하는 것이 주요 활동입니다." + - "SCPC, ICPC, 카카오 코드 페스티벌 등 오프라인에서 진행되는 프로그래밍 대회는 물론이며" + - "Codeforces, Google Code Jam, TopCoder 등 온라인에서 진행되는 대회도 참여합니다." + - speaker: "guest" + messages: + - "코린이인데 가입해도 되나요? ㅜㅜ" + - speaker: "admin" + messages: + - "팀을 구성해서 프로그래밍 대회를 나가다보면 지식의 격차가 발생할 수 있습니다." + - "지식의 격차를 해소하기 위해, 정기적으로 프로그래밍 대회에 나오는 자료구조/알고리즘 유형을 소개하는 강의를 엽니다." + - "그리고, 저학년도 프로그래밍 대회에 쉽게 진입할 수 있도록 하기 위해 저학년 대상 강의를 개설하기도 합니다." - speaker: "guest" messages: - - "asdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsad" - - "asdsad" - - "asdsad" + - "수준별로 알고리즘 수업을 개설한다고 봐도 되는거군요?" - speaker: "admin" messages: - - "dddddd" - - "asdasd" + - "네. 그렇습니다." + - "1학년이라도 금방 진입할 수 있도록, 언어 기초 강의도 개설합니다." - speaker: "guest" messages: - - "asdsad" - - "asdsad" - - "asdsad" + - "프로그래밍 대회에 참여하면 어떤 이점이 있나요?" + - speaker: "admin" + messages: + - "프로그래밍 대회에서 운 좋게 상을 받게 되면 이력서에 한 줄이라도 더 추가할 수 있습니다." + - "상을 받지 못하게 되도 괜찮습니다. 꾸준히 참여해온 기록 만으로도 프로그래밍에 대한 관심을 정량적으로 드러내는 수단이 될 수 있습니다." + - "프로그래밍 대회 문제를 많이 참여하다보면 코딩테스트는 쉽게 보일 정도로 자신감도 생기게 되며, 구현 능력도 눈에 띄게 올라가게 됩니다." \ No newline at end of file diff --git a/_data/faqs/registration.yaml b/_data/faqs/registration.yaml index fe200ff..0084bc6 100644 --- a/_data/faqs/registration.yaml +++ b/_data/faqs/registration.yaml @@ -1,47 +1,19 @@ - chatroom: "가입 조건" - chats: - - speaker: "admin" - messages: - - "dddddd" - - "asdasd" - - speaker: "guest" - messages: - - "asdsad" - - "asdsad" - - "asdsad" - - speaker: "admin" - messages: - - "dddddd" - - "asdasd" + chats: - speaker: "guest" messages: - - "asdsad" - - "asdsad" - - "asdsad" + - "가입 조건이 어떻게 되나요?" + - "신입생이라서 배경지식이 거의 없는데, 가입해도 괜찮나요?" - speaker: "admin" messages: - - "dddddd" - - "asdasd" + - "배경지식이 없는 사람이라도 누구나 가입이 가능합니다." + - "다 같이 프로그래밍 대회에 나갈 수 있도록 처음부터 가르쳐드립니다." + - "다만, 1년 이상 활동할 수 있으셔야 학회에서 얻어갈 수 있는 것이 많습니다." - speaker: "guest" messages: - - "asdsad" - - "asdsad" - - "asdsad" + - "고학년이 가입해도 괜찮다는 건가요?" - speaker: "admin" messages: - - "dddddd" - - "asdasd" - - speaker: "guest" - messages: - - "asdsad" - - "asdsad" - - "asdsad" - - speaker: "admin" - messages: - - "dddddd" - - "asdasd" - - speaker: "guest" - messages: - - "asdsad" - - "asdsad" - - "asdsad" + - "네. 괜찮습니다." + - "고학년일수록 배경지식의 유무에 따라 얻어갈 수 있는 정도가 다릅니다." + - "따라서, 몇 가지 추가적인 정보를 요구할 수 있습니다." From f3cb8d6f28513bcdd0eb922993c3e35cce4b2586 Mon Sep 17 00:00:00 2001 From: malkoG Date: Mon, 23 Dec 2019 09:39:42 +0900 Subject: [PATCH 8/8] fix typo --- _data/faqs/activity.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_data/faqs/activity.yaml b/_data/faqs/activity.yaml index e538640..5f91db8 100644 --- a/_data/faqs/activity.yaml +++ b/_data/faqs/activity.yaml @@ -31,4 +31,4 @@ messages: - "프로그래밍 대회에서 운 좋게 상을 받게 되면 이력서에 한 줄이라도 더 추가할 수 있습니다." - "상을 받지 못하게 되도 괜찮습니다. 꾸준히 참여해온 기록 만으로도 프로그래밍에 대한 관심을 정량적으로 드러내는 수단이 될 수 있습니다." - - "프로그래밍 대회 문제를 많이 참여하다보면 코딩테스트는 쉽게 보일 정도로 자신감도 생기게 되며, 구현 능력도 눈에 띄게 올라가게 됩니다." \ No newline at end of file + - "프로그래밍 대회 문제를 많이 접하다보면 코딩테스트는 쉽게 보일 정도로 자신감도 생기게 되며, 구현 능력도 눈에 띄게 올라가게 됩니다." \ No newline at end of file