본문 바로가기

전체 글195

jwt vs session 보호되어 있는 글 입니다. 2024. 4. 16.
[kernel360] E2E Project 회고 무려 5개월 전, 한 달 동안 했던 다 식어버린 E2E 회고..... 150일 후에 되돌아보기...... 2023.10.24(화) ~ 2023.11.24(금), 5주 Front-End부터 Back-End까지의 구현 기술을 협업으로 경험해 보는 프로젝트로 기획, 설계 개발, 배포까지 구현한다. 웹서비스 전체를 구현하는 것을 목표로 서비스 요청 WAS와 DB를 활용한 처리 서버의 응답을 화면에 보여주기까지 구현하고 이를 배포하도록 한다. Kernel Engine 가입한 유저의 블로그 게시글과 관리자가 등록한 기술 블로그의 게시글을 키워드를 통해서 검색할 수 있는 검색엔진 서비스 운영체제의 그 커널 아니고요.... 커널360의 커널입니다.... 예예...ㅜㅜ 이름 달리 지을걸... 기획의도 운이 좋게도 내가 .. 2024. 4. 4.
[kernel360] 해커톤 회고 boot-up 다음은 해커톤톤 해커톤에서 제시한 목표는 다음과 같다. 최소한의 기술적 완성도를 가진 결과물을 단시간에 만들어 봄으로써 자신의 기술적 실력을 파악하고, 빠른 학습에 대한 경험을 습득한다. 프로젝트를 진행하며 코드의 품질, 기술적 협업 등을 이해하는 것을 목표로 한다. 해커톤은 4일동안 진행되는데 안내사항에 기획적 완성도, 창의성보다 작더라도 하나의 프로젝트를 기술적으로 완성하는 것에 중점을 둔다. 기능이 적게 포함되더라도 완성된 서비스를 구현할 수 있는 주제를 고안한다. 라고 되어있길래 뭘해야 4일 안에 완성할 수 있을까... 그리고 무엇보다 우리는 백엔드만 모여있고 프론트가 없는 상황인데... 라는 것을 고심하다가 작은 tistory 만들기라는 아이디어를 생각했다. 재미없어 보이긴 하지만.. 2023. 11. 1.
[kernel360] boot-up 회고 이번년도 하반기에 시작하게 된 kernel360, 가장 첫번째로 진행하게 된 커리큘럼은 boot-up이라는 프로젝트였다. 내가 생각했을 때 boot-up이라는 프로젝트에서 우리에게 원하는 것은 다음과 같았다. 상황 - 고객의 pain point를 해결해줄 수 있는 서비스를 개발하려고 할 때 이 프로젝트에서 배워야 할 것 1. 기획과 설계의 프로세스 익히기 2. 어떤 협업 도구가 있는지 배우고, 직접 사용해보기 개발을 실제로 하지는 않고 기획과 설계까지만 하기에 3일 정도의 시간동안 진행되는 프로젝트였는데 가장 특이했던 점은 3일차가 시작될 때 팀장을 제외한 팀원들이 모두 새로 바뀐다는 점이었다. 실제로 회사에 갔을 때 다른 사람이 하던 업무를 인수인계 받거나, 내가 하던 업무를 남에게 인수인계 해야하는 .. 2023. 11. 1.
[BOJ] 1010 다리 놓기 문제 재원이는 한 도시의 시장이 되었다. 이 도시에는 도시를 동쪽과 서쪽으로 나누는 큰 일직선 모양의 강이 흐르고 있다. 하지만 재원이는 다리가 없어서 시민들이 강을 건너는데 큰 불편을 겪고 있음을 알고 다리를 짓기로 결심하였다. 강 주변에서 다리를 짓기에 적합한 곳을 사이트라고 한다. 재원이는 강 주변을 면밀히 조사해 본 결과 강의 서쪽에는 N개의 사이트가 있고 동쪽에는 M개의 사이트가 있다는 것을 알았다. (N ≤ M) 재원이는 서쪽의 사이트와 동쪽의 사이트를 다리로 연결하려고 한다. (이때 한 사이트에는 최대 한 개의 다리만 연결될 수 있다.) 재원이는 다리를 최대한 많이 지으려고 하기 때문에 서쪽의 사이트 개수만큼 (N개) 다리를 지으려고 한다. 다리끼리는 서로 겹쳐질 수 없다고 할 때 다리를 지.. 2023. 9. 18.
[BOJ] 11726 2×n 타일링 문제 2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다. 입력 첫째 줄에 n이 주어진다. (1 ≤ n ≤ 1,000) 출력 첫째 줄에 2×n 크기의 직사각형을 채우는 방법의 수를 10,007로 나눈 나머지를 출력한다. 풀이 dynamic programming! 우선 단순 완전 탐색 등의 방법으로는 타일링이 가능한 경우의 수를 찾을 수 없다. 따라서 규칙이 있는지 알아보기 위해서 일부의 경우에 대해 노가다로 경우의 수를 모두 구했다. N=1 -> 1가지, N=2 -> 2가지, N=3 -> 3가지, N=4 -> 5가지, 그리고 test case로 주어진 N=9 -> 55가지 피보나치 수열을 떠올.. 2023. 9. 15.
[BOJ] 1969 DNA 문제 DNA란 어떤 유전물질을 구성하는 분자이다. 이 DNA는 서로 다른 4가지의 뉴클레오티드로 이루어져 있다(Adenine, Thymine, Guanine, Cytosine). 우리는 어떤 DNA의 물질을 표현할 때, 이 DNA를 이루는 뉴클레오티드의 첫글자를 따서 표현한다. 만약에 Thymine-Adenine-Adenine-Cytosine-Thymine-Guanine-Cytosine-Cytosine-Guanine-Adenine-Thymine로 이루어진 DNA가 있다고 하면, “TAACTGCCGAT”로 표현할 수 있다. 그리고 Hamming Distance란 길이가 같은 두 DNA가 있을 때, 각 위치의 뉴클오티드 문자가 다른 것의 개수이다. 만약에 “AGCAT"와 ”GGAAT"는 첫 번째 글자와 세 .. 2023. 9. 13.
[BOJ] 18511 큰 수 구성하기 문제 N보다 작거나 같은 자연수 중에서, 집합 K의 원소로만 구성된 가장 큰 수를 출력하는 프로그램을 작성하시오. K의 모든 원소는 1부터 9까지의 자연수로만 구성된다. 예를 들어 N=657이고, K={1, 5, 7}일 때 답은 577이다. 입력 첫째 줄에 N, K의 원소의 개수가 공백을 기준으로 구분되어 자연수로 주어진다. (10 ≤ N ≤ 100,000,000, 1 ≤ K의 원소의 개수 ≤ 3) 둘째 줄에 K의 원소들이 공백을 기준으로 구분되어 주어진다. 각 원소는 1부터 9까지의 자연수다. 단, 항상 K의 원소로만 구성된 N보다 작거나 같은 자연수를 만들 수 있는 경우만 입력으로 주어진다. 출력 첫째 줄에 N보다 작거나 같은 자연수 중에서, K의 원소로만 구성된 가장 큰 수를 출력한다. 해결 방법 .. 2023. 9. 12.
[BOJ] 15721 번데기 문제 중앙대학교 소프트웨어학부에 새로 입학한 19학번 새내기 일구는 새내기 새로 배움터에 가서 술게임을 여러 가지 배웠다. 그 중 가장 재미있었던 게임은 바로 번데기 게임이었다. 번데기 게임의 규칙은 다음과 같다. ‘뻔 – 데기 – 뻔 – 데기 – 뻔 – 뻔 – 데기 – 데기’ 를 1회차 문장이라고 하자. 2회차 문장은 ‘뻔 – 데기 – 뻔 - 데기 – 뻔 – 뻔 – 뻔 – 데기 – 데기 – 데기’가 된다. 즉 n-1회차 문장일 때는 ‘뻔 – 데기 – 뻔 – 데기 – 뻔(x n번) – 데기(x n번)’이 된다. 하이픈 사이를 지날 때마다 순서는 다음 사람으로 넘어간다. 원을 돌아 다시 일구 차례가 와도 게임은 계속 진행된다. 일구와 동기들, 그리고 선배들을 포함한 사람 A명이 다음과 같이 원으로 앉아 있.. 2023. 9. 11.