TIL

TIL_20230424

번잔중 2023. 4. 24. 23:31

오늘 할 일

  • LeetCode 데일리 문제 풀기
  • 출근하면서 자바의 정석 공부하기 
  • 코드스테이츠 - Cloud > AWS > Deploy 내용 노션에 정리하기
  • Heart - 모집글에도 이미지 저장 기능 추가하기
  • 원티드 프리온보딩 신청하기
  • 이력서 코칭 신청하기
  • 운동하기 - 웨이트 트레이닝

오늘 배운 것

LeetCode 데일리 문제 풀기

  • 오늘의 문제: 1046. Last Stone Weight(https://leetcode.com/problems/last-stone-weight/)
  • 문제 조건
    • i번째 돌의 무게인 stone[i]로 이루어진 정수형 배열 stones가 주어진다.
    • 우리는 그 돌들로 게임을 하고 있다. 각 차례에서 우리는 가장 무거운 돌 두 개를 고르고 그 둘을 서로 부신다. 가장 무거운 두 개의 돌을 x와 y(x <= y)라고 가정해보자. 이 둘을 부딪힌 결과는 다음과 같다.
      • x == y인 경우, 둘 다 부서진다.
      • x != y인 경우, 무게가 x인 돌이 부서지고, 무게가 y인 돌은 y - x된 무게로 변한다.
    • 게임이 끝나면 가장 무거운 돌 하나가 남아있다.
    • 마지막에 남은 돌의 무게를 반환해라. 만약 돌이 남아있지 않는 경우에는 0을 반환한다.
  • 문제 해결 과정
    • 최대힙을 이용해서 풀어보기로 했다.
    • 우선 stones에 있는 원소를 최대힙에 모두 추가한다.
    • 이후 최대힙의 원소를 연속으로 2개 꺼내면 최대값과 그 다음으로 큰 값이다. 이 둘을 변수에 저장하고 값을 비교해서 다른 경우에만 최대값에서 그 다음으로 큰 값을 빼고 최대힙에 저장한다. 이 과정을 최대힙에 원소가 하나 이하로 남을 때까지 반복한다.
    • 최대힙의 크기가 하나인 경우와 없는 경우를 고려하여 반환해주면 된다.

출근하면서 자바의 정석 공부하기 

  • ch 6. 객체지향 프로그래밍 1부터 학습을 시작했습니다. 아래에 적힌 내용들을 학습했습니다.
    • 객체지향언어
    • 클래스와 객체

코드스테이츠 - Cloud > AWS > Deploy 내용 노션에 정리하기

Deployment

  • 노션에 AWS의 Deploy 부분을 추가하고, 이미지도 직접 만들었습니다. (저작권 이쓔)
  • 서비스를 배포하는 각 과정마다 어떤 일을 하는지, 배포시에 주의할 점(상대경로, 환경변수, ...)에 대해서 학습했습니다.

Heart - 모집글에도 이미지 저장 기능 추가하기

  • 모집글에서도 이미지를 보일 수 있도록 기능을 추가로 구현했습니다.
  • Controller
    • post 메서드의 파라미터를 @RequestPart로 변경해서 form-data 타입의 값을 받을 수 있도록 수정했습니다.
  • Entity
    • RecruitImage - Image를 저장할 용도로 사용할 엔티티를 추가했습니다.
    • Recruit - 기존에 있던 모집글 전용 엔티티에 이미지 엔티티를 추가해주었습니다.
    • 이 둘 사이에는 다대일 관계가 성립합니다. 모집글 하나에 최대 5개의 이미지가 포함될 수 있기 때문입니다. 그래서 JPA를 이용하여 매핑해주었습니다.
  • Service
    • 이미지가 존재하는 경우 Repository에 저장할 수 있도록 로직을 작성해주었습니다.
    • 이렇게 해야 이미지가 form-data 객체에 포함되지 않아도 정상적으로 기능이 동작합니다.

원티드 프리온보딩 신청하기

  • 마침 원티드에서 프리온보딩 신청을 받고 있어서 냉큼 신청했습니다.
  • AWS를 알차게 배우고 이력서를 왕창 넣어야겠습니다. ㅎㅎ

이력서 코칭 신청하기

  • 이전에 코칭해주셨던 코치님께 다시 피드백을 받고 이력서를 넣어보려고 합니다.
  • 4월 28일 금요일로 잡았습니닷. 그 전까지 빨리 이력서를 수정해야겠습니다!

운동하기 - 웨이트 트레이닝

8일차!

느낀점

  • 리트코드에서 월요일마다 쉬운 난이도의 문제를 낸다는 것이 정설이 됐습니다. 신기방기
  • 오늘은 출근하면서 공부도 하고 집에 와서도 공부하고 이래저래 부지런히 움직이기도 했습니다만 운동하는 날은 여전히 시간이 모자라네요. ㅎㅎㅎ
  • 근데 운동이 잘 안되서 살짝 짜증납니다. ㅠㅠ 월요일은 가슴하는 날이라고 다들 벤치에서 떠날 생각이 없어 렉에 가서 꾸역꾸역 했습니다만 벤치가 불편해서 별로였습니다... 다음에는 그냥 월요일에 인클라인 벤치프레스를 해야겠네요!

내일 할 일

  • LeetCode 데일리 문제 풀기
  • 출근하면서 자바의 정석 공부하기 
  • 코드스테이츠 - Cloud > AWS > EC2 내용 노션에 정리하기
  • Heart - RecruitImage Response에 출력 안되는 부분 수정하기
  • 이력서 수정하기
  • 코딩 카페 가보기!