본문 바로가기

분류 전체보기

(21)
정규식을 이용해서 카드 번호 Formatter 만들기 요즘 Payments 과제를 진행 중이다. 과제 도중 카드 번호와, 만료일을 포맷팅 할 필요가 생겨 정규식을 이용해서 구현해 보았다. 구현할 것은 다음과 같다. input : 1234567890123456 output : 1234-5678-9012-3456 유의할 점은 16자리 모두 완성되지 않은 상태에서도 `1234-56` 과 같이 4글자마다 '-'(dash)를 삽입해 주어야 한다는 것이다. 구현에는 두 가지 방식을 모두 이용해 보았다. ### match를 이용한 방법 export const cardSerialNumberFormatter = (serialnumber) => { if (serialnumber.length > 16) return; return serialnumber.match(/[0-9●]..
[TIL] 2021.02.16 (TUE) : 프로그램과 디자인패턴 # Today I Learned * 프로그램과 디자인패턴의 관계 ## 프로그램과 디자인 패턴의 관계 사실 오늘 한 것을 따지자면 더 많은 것 같긴하지만, 배웠다기보단 구현을 한 느낌이고 배웠다고 할 수 있는 것은 6시쯤 포코와 체프와 함께 왜 우리는 디자인 패턴을 사용하려고 하고, 그것이 정말 필요한건지? 무엇을 더 생각해 보아야 할 지에 대한 대화를 나눈 데에 있었다. 발단은 이랬다. 왜 우리는 MVC 를 쓰는걸까? 굳이 적용할 필요가 없는 곳에 편하다는 이유만으로 가져다 쓰고있는 것은 아닐까? 어떤 디자인 패턴을 쓰는 것이 좋은 것일까? 등등. 해결 되지 않는 문제들을 들고 포코를 소환했다. 다음 예시를 통해 직접 구현하고, 요구사항이 변함에 따라 어떻게 구조를 짜는 것이 적합할 지를 고민해 보는 시..
[TIL] 2021.02.15 (MON) : You Don't Know JS 읽기, transpilation, polyfilling, 자바스크립트에서의 import # Today I Learned * You Don't Know JS : 자바스크립트의 유래, 특징 * Transpilation, Polyfilling * 자바스크립트에서 import를 할 때의 동작 방식 ## You Don't Know JS * 오늘 읽은 범위 : Getting Started Ch1. What is JS to Ch1. Backwards, Forwards (출처 : You Don't Know JS Github Repository/링크) * 자바스크립트는 처음에는 Mocha, Live Script 등으로 불렸으나 추후 사람들의 투표를 통해 Java Script 가 된 것, 실제로 Java 와는 관련이 없다. 현재는 이름의 법적인 문제로 ECMAScript2019 가 공식 명칭이 됨. * TC..
[알고리즘/파이썬] 백준 알고리즘 1744번, 수 묶기 문제 출처 : www.acmicpc.net/problem/1744 1744번: 수 묶기 길이가 N인 수열이 주어졌을 때, 그 수열의 합을 구하려고 한다. 하지만, 그냥 그 수열의 합을 모두 더해서 구하는 것이 아니라, 수열의 두 수를 묶으려고 한다. 어떤 수를 묶으려고 할 때, 위치에 www.acmicpc.net 문제 정리 : 이번 문제는 주어진 수를 이용해 합할 때 최대 값을 구해서 출력하는 것이다. 수열 내에서 두개의 수를 묶을 수 있고, 묶은 수는 서로 곱한 후 다른 수와 더한다. 순서는 고려하지 않는다. 수열의 모든 수는 한 번만 묶일 수 있다. : 예를 들어 {3, 9, 1, 2, 0} 의 수열이 들어오면 구할 수 있는 최대 합은 0 + 1 + 2 + ( 3 * 9 ) = 30 이다. : 수열의..
[알고리즘/파이썬] 백준 알고리즘 11047번, 동전 0 문제 출처 : www.acmicpc.net/problem/11047 11047번: 동전 0 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) www.acmicpc.net 문제 정리 문제는 간단하다. 총 N 종류의 동전을 가지고, 각 동전을 이용해서 K 원을 만들 때 필요한 동전 개수의 최솟값을 구하는 것. 동전의 가치는 오름차순으로 들어온다. 문제 풀이 - 동전이 들어올 때, 1부터 들어오기 때문에 K원을 만들 수 없는 경우는 없다. - K원을 만들기 위한 최소값을 구하기 위해서는 큰 가치를 가진 ..
[알고리즘/파이썬] 백준 알고리즘 1783번, 병든 나이트 알고리즘 풀기만 하고 정리를 하지 않으니, 어떻게 풀었는지에 대한 기억이 남질 않아서 간단한 문제푸터 정리해 볼까 한다. (ㅋㅋㅋ) 하루에 몰아풀지말고 꾸준히좀 풀어야지.. 문제 출처 : www.acmicpc.net/problem/1783 1783번: 병든 나이트 첫째 줄에 체스판의 세로 길이 N와 가로 길이 M이 주어진다. N과 M은 2,000,000,000보다 작거나 같은 자연수이다. www.acmicpc.net 문제 정리 이 문제에서 나이트가 이동할 수 있는 방법은 다음 네가지 뿐이다. 2칸 위로, 1칸 오른쪽 1칸 위로, 2칸 오른쪽 1칸 아래로, 2칸 오른쪽 2칸 아래로, 1칸 오른쪽 나이트는 N x M 크기의 체스판의 가장 왼쪽 아래에서 시작하며, 위의 방법을 이용하여 이동할 수 있다. 이때 ..
[Operating System Concepts 10th] Chapter 3. Process 연습문제 풀이 3.1 - 3.6 친구들이랑 운영체제 스터디를 하면서, 찬찬히 배운 개념을 정리하려고 한다. 원래는 순서대로 해야지! 였는데, 스터디 날에 같이 푼 문제 내용을 정리해 두면 좋을 것 같아서 해당 주에 푼 문제를 정리해 놓을 생각이다. 오늘은 다들 바빠서 6문제 정도 밖에 풀지 못해서, 다음 주에 남은 부분 + chapter 4 연습문제를 풀기로. 풀면서 배웠던 것들도 있고, 이걸로 시험을 보기도 했었던 것 같은데 수업을 들으면서 해당 부분의 연습문제를 더 풀어볼 걸 하는 아쉬움이 남는다. 앞으로 복습해가면서 더 제대로 이해하기 위해 노력해야겠다. 문제 출처 : Operating System Concepts 10th edition. 답지 참고 : codex.cs.yale.edu/avi/os-book/OS10/practice..
무엇이든 물어보세요 '마법의 소라고동' 마법의 소라고동은 질문에 대한 대답을 해주는 서비스 입니다. '언제' 라는 키워드를 포함하면 3년 이내의 날짜를 대답해 준답니다. :) 소라고동에게 질문하러 가기🐚 개발 기간 - 2020.09.29 ( 약 3시간 ) 사용 언어 - react.js, css 개발 목적 - react 를 배우면서 한 번 리액트를 이용한 간단한 앱을 만들어 보고 싶었습니다. 디스코드에서 '소라고동 봇'을 재미있게 사용하고 있던 터라 비슷한 컨셉의 앱을 만들어 보면 재밌겠다 싶어서 제작되었습니다. 사용 방법 1. 질문을 입력합니다. (ex. 나 자러가도 돼? 언제 종강해? etc) 2. Enter Key (엔터키, PC), 입력 버튼 (모바일) 을 누릅니다. 3. 답변을 확인합니다. GIT Repository - github.c..