전체 글

전체 글

    [ETRI] 에트리 4주차

    [ETRI] 에트리 4주차

    입사 초에는 8시 20분 출근하던 게 요즘은 8시 30분으로 고정되었습니다. 아침에 조금 더 여유로워지니까 일하는 것도 더 탄력을 받는 것 같습니다. 드디어 이번 주부터 양식당/분식당이 영업을 시작했습니다. 입사하는 날부터 문을 닫았어가지고 못 갔었는데 너무 기대되는 마음으로 월요일 오픈하자마자 가봤습니다. 역시 사람이 몰려서 밥을 받는데 30분 정도 걸렸습니다... 맛은 합격이지만 양은 좀 적었습니다. 그래도 자주 갈 것 같지만 조금 일찍 가야 점심시간에 좀 쉴 수 있을 것 같습니다. 이번 주는 박사님이 전처리만 하면 된다고 하셔서 월요일부터 데이터를 주셨습니다. AI, 전처리, 데이터 뭐 이런 거랑은 거리가 아주 먼 저한테는 아주 빡셌습니다. 개발환경 세팅을 하고 방향을 잡고 진행하는 것 전부 스스로..

    [Spring] Swagger Api문서 작성하기

    [Spring] Swagger Api문서 작성하기

    주요 어노테이션 @Api : 해당 어노테이션을 설명합니다 @ApiOperation(value = "제목", note = "설명") @ApiImplicitParam(name = "파라미터", value = "파라미터 값") @ApiIgnore : 명세서에 표시하지 않는 것을 의미합니다. @ApiModelProperty : dto에 작성. 예시를 넣을 수 있습니다. 주로 컨트롤러에서 사용되고 @ApiModelProperty만 dto에서 사용됩니다. 컨트롤러 @Api @Api 어노테이션을 통해 아래와 같이 Controller의 명칭을 변경할 수 있습니다. @Api(tags = {"게시글 API"}) // Swagger 최상단 Controller 명칭 public class BoardController { ....

    [Beakjoon] 백준 1902번 Python

    [Beakjoon] 백준 1902번 Python

    Beakjoon 1902, 배 solved.ac Gold5 Greedy 알고리즘 문제 지민이는 항구에서 일한다. 그리고 화물을 배에 실어야 한다. 모든 화물은 박스에 안에 넣어져 있다. 항구에는 크레인이 N대 있고, 1분에 박스를 하나씩 배에 실을 수 있다. 모든 크레인은 동시에 움직인다. 각 크레인은 무게 제한이 있다. 이 무게 제한보다 무거운 박스는 크레인으로 움직일 수 없다. 모든 박스를 배로 옮기는데 드는 시간의 최솟값을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N이 주어진다. N은 50보다 작거나 같은 자연수이다. 둘째 줄에는 각 크레인의 무게 제한이 주어진다. 이 값은 1,000,000보다 작거나 같다. 셋째 줄에는 박스의 수 M이 주어진다. M은 10,000보다 작거나 같은 자연수이다...

    [Beakjoon] 백준 23351번 Python

    [Beakjoon] 백준 23351번 Python

    Beakjoon 23351, 물 주기 solved.ac Silver3 Greedy 알고리즘 문제 랑이 집사는 고양이들이 좋아한다는 캣닢을 직접 재배하려고 한다. 일직선으로 놓여진 N개의 화분에 캣닢이 하나씩 심어져 있다. 각 화분은 초기에 K만큼의 수분을 머금고 있고, 매일 아래와 같은 일이 순서대로 일어난다. 랑이 집사가 연속된 A개의 화분에 물을 준다. 이 때 물을 준 화분의 수분은 B만큼씩 증가한다. 모든 화분의 수분이 1씩 감소한다. 수분이 0이 된 화분에 있는 캣닢은 죽는다. 모든 캣닢이 살아 있는 기간이 최대한 길어지도록 물을 줄 때, 첫 캣닢이 죽는 날짜를 출력하는 프로그램을 작성하시오. 첫 날은 1일이다. 입력 첫째 줄에 자연수 N, K, A, B가 공백을 사이에 두고 주어진다. (2≤N≤..

    [Beakjoon] 백준 16471번 Python

    [Beakjoon] 백준 16471번 Python

    Beakjoon 16471, 작은 수 내기 solved.ac Silver4 Greedy 알고리즘 문제 여자친구와 함께 보드게임카페에 간 주언이는, 여러 보드게임을 하며 데이트를 즐겼다. 3시간 커플세트로 결제를 하려던 순간, 주언이는 가격표 옆에 쓰여 있는 새로운 이벤트를 보았다. 바로 “사장님과의 게임에서 이기면 무료, 지거나 비기면 5000원 추가 지불” 이벤트였다. 보드게임에 자신이 있는 주언이는 사장님에게 게임 룰을 물어보았고, 그 룰은 다음과 같았다. 각자 N장의 카드를 받는다. (N은 홀수다) 각자 카드를 1장씩 골라서 카드에 적힌 수의 크기를 비교한다. (각 카드에 적힌 수는 0이상, 100,000이하의 정수다) 더 작은 수가 적힌 카드를 낸 사람이 1점을 얻고, 승부에 사용된 카드는 버린다..

    [ETRI] 에트리 3주차

    [ETRI] 에트리 3주차

    저번 주에 자택 근무를 하면서 1시간 정도 늦게 일어나다 보니 이번 주는 아침에 일어나는 것이 좀 어려운 주였습니다. 월요일은 아침부터 커피로 버티면서 논문들을 계속 보고 있었습니다. 저번 주 까지 했던 논문 리뷰들을 정리해서 사수님께 보내드렸는데 답장이 안 와서 그냥 계속하던 일을 하고 있었습니다. 그런데 4시쯤 커피 배달을 하면서 4층 사무실에 들렀는데 그때까지만 해도 사수님은 제가 아직 자택 근무를 계속하고 있는 줄 아셨는지 깜짝 놀란 눈치였습니다. 화요일은 악재의 연속이었습니다만 회사에서는 사고를 치지 않았습니다. 이날은 인턴 동기를 도와 오랜만에 Docker를 만져봤습니다. Docker Hub에 있는 이미지를 가져와도 해당 환경이 적용이 안 되는 문제도 같이 해결하는 등 오랜만에 개발을 해봤습니..

    [자취라이프] 대전에서 속상한 3주차

    [자취라이프] 대전에서 속상한 3주차

    때는 이번 주 화요일 굉장히 속상한 일이 생겼습니다. 아침에 잘 일어났지만 다시 자서 출근까지 아슬아슬한 8시 30분에 기상했습니다. 엄청 서둘러서 준비를 다 마치고 출발만 하면 되는데 안경을 못 찾아서 10분 정도를 더 지체했습니다. ETRI까지 차로 가면 7분. 9시까지는 꼭 출근을 해야 하기 때문에 급한 마음에 가방도 못 챙기고 신발도 슬리퍼를 신고 그렇게 차를 타고 출발했습니다. 항상 주차장에서 우회전을 해서 나가는데 그날따라 배수로공사를 해서 지나갈 수 없었습니다. 공사장에서 근무하시는 분이 들어오시면 안 된다고 차를 돌려달라고 해서 후진으로 다시 주차장으로 갔습니다. 좌회전을 하면 한 바퀴 돌아가야 했기 때문에 시간이 간당간당했던 저는 너무 마음이 급했습니다. 그 결과... 운전석쪽 뒷문을 해..

    [Github Decorating] 깃허브 프로필에 WakaTime 추가하기

    [Github Decorating] 깃허브 프로필에 WakaTime 추가하기

    WakaTime은 코딩 시간을 보여주는 친구입니다. 어떤 언어를 얼마나 사용했는지 보여주는 친구로 저는 시간이 좀 짧아지는 느낌에 자극을 좀 받았습니다. Status로 만들기 먼저 여기에 들어가셔서 Repository를 포크 해서 가져옵니다. 그다음부터는 README에 있는 내용을 차근차근 따라 하시면 됩니다. 1. Gist 만들기 https://gist.github.com/로 들어가셔서 Gist를 아무렇게나 Public으로 만들어줍니다. 그다음 https://github.com/settings/tokens/new로 들어가셔서 새 토큰을 발급해줍니다. 이때 gist를 체크해서 발급해줍니다. 이때 키를 꼭 잊어버리지 않게 주의해주세요! 2. WakaTime 계정 만들기 https://wakatime.com..

    [Network] 프로토콜(Protocol)이란?

    프로토콜이란? 우리나라 말로는 규약이라는 뜻인데 컴퓨터끼리는 서로 같은 프로토콜끼리만 통신이 가능합니다. 즉, 컴퓨터끼리 서로 통신을 하기 위해서 꼭 필요한 통신 규약이라고 볼 수 있습니다. 네트워크에 나오는 영어 약자 중 뒤에 P가 들어가는 것은 대부분 프로토콜의 약자입니다. 이 프로토콜에도 여러 종유가 있습니다. 대표적으로 인터넷에서 사용하는 프로토콜은 TCP/IP(Transmission Control Protocol / Internet Protocol)입니다. 그 외에도 IPX, UDP, AppleTalk, HTTP, FTP 등 여러 프로콜이 있습니다. 프로토콜의 종류 계층 프로토콜 응용(Application) Telnet, FTP, HTTP, SMTP 표현(Presentation) ASCII, J..

    [Spring] Swagger3 적용하기

    [Spring] Swagger3 적용하기

    먼저 build.gradle에 Swagger에 필요한 의존성을 주입해줍니다. // Swagger implementation 'io.springfox:springfox-boot-starter:3.0.0' 그리고 Application.yml에 아래의 코드를 추가해줍니다. spring: mvc: pathmatch: matching-strategy: ant_path_matcher 그다음 SwaggerConfig.java를 추가합니다. @Configuration public class SwaggerConfig { @Bean public Docket api() { return new Docket(DocumentationType.OAS_30) .useDefaultResponseMessages(false) .selec..