본문 바로가기

분류 전체보기

(32)
ESM과 CommonJS의 차이 ESM 이란?Enterprise Security Management 통합 보안 관리방화벽, 침입 탐지 시스템, 칩입 방지 시스템 등 각종 보안 시스템의 로그들을 모아 한곳에서 통합 관리를 할 수 있게 해주는 시스템아니고Enterprise Service Management 엔터프라이즈 서비스 관리아니고ECMA Script modules입니다!Node.js에는 CommonJS 모듈과 ECMAScript 모듈이라는 두가지 모듈 시스템이 있습니다.그러면 module이란 뭘까요 Module이란?프로그램을 구성하는 구성 요소, 관련된 데이터와 함수를 하나로 묶은 단위를 의미합니다.CommonJS 모듈CommonJS 모듈은 Node.js용 JavaScript 코드를 패키징하는 독창적인 방법입니다.ECMAScript ..
[Java] 백준 14891. 톱니바퀴 https://www.acmicpc.net/problem/14891 14891번: 톱니바퀴 첫째 줄에 1번 톱니바퀴의 상태, 둘째 줄에 2번 톱니바퀴의 상태, 셋째 줄에 3번 톱니바퀴의 상태, 넷째 줄에 4번 톱니바퀴의 상태가 주어진다. 상태는 8개의 정수로 이루어져 있고, 12시방향부터 www.acmicpc.net 이번 문제는 조금 까다로웠다. 톱니가 하나가 도는데 양 옆에 톱니들이 영향을 받는다. 이때 처음에 많이 고생한 부분은, 초기 상태에서 돌아갈지 말지가 정해진다는 것이다. 하나가 돌고 난 뒤에 그 다음애들이 도는게 아니고, 하나가 돌기전에 그옆에, 그옆옆에 있는 톱니까지 돌아갈지 말지 방향까지 미리 다 정해진 다음 한번에 같이 도는거다. 처음엔 이런 부분을 세세하게 체크하지않고 즉 문제를 잘 ..
[Java] 백준 14500. 테트로미노 https://www.acmicpc.net/problem/14500 14500번: 테트로미노 폴리오미노란 크기가 1×1인 정사각형을 여러 개 이어서 붙인 도형이며, 다음과 같은 조건을 만족해야 한다. 정사각형은 서로 겹치면 안 된다. 도형은 모두 연결되어 있어야 한다. 정사각형의 변 www.acmicpc.net 이번 문제는 조금 어려웠다. 처음에 dfs로 문제를 풀어야겠다 생각하긴 했지만, 정확히 윤곽이 잡히진 않았다. 문제도 제대로 읽지 않아서 맵의 전체를 다 채워보면서 최댓값을 구해야한다고 생각했다. 하지만 하나의 블럭만 넣었을때의 최댓값을 구하는게 문제다. 처음에는 저 5가지의 모양과 회전, 대칭했을때의 모양까지 전부 하드코딩하고 그걸 dfs로 돌려볼까도 생각했는데 가짓수가 너무 많아서 도저히 아닌..
[Java] 백준 14499. 주사위 굴리기 https://www.acmicpc.net/problem/14499 14499번: 주사위 굴리기 첫째 줄에 지도의 세로 크기 N, 가로 크기 M (1 ≤ N, M ≤ 20), 주사위를 놓은 곳의 좌표 x, y(0 ≤ x ≤ N-1, 0 ≤ y ≤ M-1), 그리고 명령의 개수 K (1 ≤ K ≤ 1,000)가 주어진다. 둘째 줄부터 N개의 줄에 지 www.acmicpc.net 이번 문제는 주사위 굴리기. 무난한 시뮬레이션 문제이다. 처음에는 주사위를 굴리는 방향에 따른 위치를 어떻게 보관하고 또 어떻게 굴릴것인지에 대한 고민이 있었는데, 그냥 돌리는 4가지 방향에 대해서 어떻게 변하는지를 그냥 하나하나 위치를 변화 시키는 방식으로 했다. 조금 무식해보이는데 이 방법 말고는 생각을 하지 못했다. 그 방법만..
[Java] 백준 3190. 뱀 https://www.acmicpc.net/problem/3190 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net 이번에 풀이한 문제는 뱀이다. 어릴때 하던 게임처럼 맵에서 사과를 먹으면 뱀의 길이가 늘어나고, 아니면 앞으로 전진한다. 그래도 뱀이 움직이는 방법이 알고리즘처럼 순차적으로 제시가 되어서 조금 편하게 했다. 그래도 조금 까다로운 부분이 있었던게, 방향을 바꾸면서 전진을 하는데, 꼬리가 어느방향으로 진행하는지, 그리고 어디 부분이 꼬리인지를 체크하는 것이 조금 까다로웠다. 이를 해결하기 위해서 각 Node..
[Java] 백준 14888. 연산자 끼워넣기 https://www.acmicpc.net/problem/14888 14888번: 연산자 끼워넣기 첫째 줄에 수의 개수 N(2 ≤ N ≤ 11)가 주어진다. 둘째 줄에는 A1, A2, ..., AN이 주어진다. (1 ≤ Ai ≤ 100) 셋째 줄에는 합이 N-1인 4개의 정수가 주어지는데, 차례대로 덧셈(+)의 개수, 뺄셈(-)의 개수, 곱 www.acmicpc.net 이번에도 조금 쉬운 문제. 숫자와, 연산자가 주어지고 이 연산자를 활용해서 만들수 있는 모든 결과값중에 최댓값과 최솟값을 출력하는 문제다. 나는 재귀로 문제를 풀었다. 이게 처음엔 dfs, bfs중에 뭘까 고민을 했는데... dfs인거겠지...? 어쨋든 하나의 연산자가 제일 먼저 오고, 그 다음에 오는것들을 주르륵 재귀로 해서 결과를 계산..
[Java] 백준 13458. 시험 감독 https://www.acmicpc.net/problem/13458 13458번: 시험 감독 첫째 줄에 시험장의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 각 시험장에 있는 응시자의 수 Ai (1 ≤ Ai ≤ 1,000,000)가 주어진다. 셋째 줄에는 B와 C가 주어진다. (1 ≤ B, C ≤ 1,000,000) www.acmicpc.net 오랜만에 다시 문제를 풀어봤다. 오랜만이니까 조금 쉬운 문제. 단순히 숫자 계산하는 정도의 간단한 문제다. public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStr..
[우테코] 우아한테크코스 프리코스 6기 백엔드 4주차 회고 (+ 결과 추가) 드디어 끝이 났다. 4주 동안의 프리코스. 약 한달 동안 많은걸 느끼고 또 배웠다. 프리코스라는 경험을 하게된것은 참 잘한 일인 것 같다. 당락도 물론 중요하지만 우선 4주동안 열심히 코딩을하고 나의 코드와 다른사람의 코드를 비교하고 또 학습하는 행위를 한것이 되게 재밌었고 답답했으며 뿌듯했고 또 벽을 마주하는 나를 보며 조금은 절망하기도, 또 미래를 계획하며 흥미롭고 재미있는 경험을 했다. 4주차 미션에서는 Input/Output View를 따로 분리하라는 요구사항이 있었다. 그리고 이전까지 해왔던 클래스 분리, 메소드 분리, 기능단위 커밋, 기능요구서 작성, 도메인 테스트 등의 요건들을 생각하며 개발을 했다. 기능 자체만을 구현하는 것은 이번 주차 미션도 크게 어려워 보이진 않았다. 구조를 어떻게 할..