2021/11/28 일요일

Gong Intaek·2021년 11월 28일
0

일상

목록 보기
170/1001
post-thumbnail

TIL


오늘 한 일

  • leetcode
    • Decode the Slanted Ciphertext. (medium)
  • 휴식

문제 풀이

Decode the Slanted Ciphertext. (medium)

주어진 길이의 문자열과 세로행의 길이를 입력받아 문자열의 세로행 길이를 가지는 이차배열로 정리한뒤 해당 2차배열에서의 가장 윗열 에서부터 대각선으로 문자들을 입력 받고, 순차적으로 다음행으로 넘어가 전체 문자열을 입력 받는다. 그리고 후행 공백을 제거하여 정리된 문자열을 돌려주는 문제이다.

대각선으로 읽는다는 것이 초기 시작값이 정행진채로 정해진 길이에서의 문자를 읽것과 유사하다.
위에 문제에서 예시1 로 나오는 것을 참고하면
총 문자열의 길이는 12, 세로의 길이는 3칸 따라서 가로의 길이는 4칸으로 정리된다. 첫째 문자에서부터 다음 문자의 1차 배열에서의 위치는 5칸 뒤로 볼수 있다.

따라서 초기값 i가 0 부터 3까지 반복 하게 하는 반복문 안에 초기값 j가 i부터 문자열의 길이까지 반복하되 5씩 증가하는 반복문을 수행시키고 인덱스가 j인 문자들을 순차적으로 더하여 문자열을 구성하면 문제에서 제시하는 문자열을 완성 할 수 있다.

후행 공백은 무시하기때문에 완성된 문자열에서 해당 부분을 제거하여 돌려주었다.


2주 동안 진행하고자 하는 것

Nest.js

  • nest.js를 활용한 SSR 페이지에 유저 가입, 로그인, 로그아웃, 유저정보 수정, 탈퇴 기능을 구현해보고자 함.
    • 당장은 nest.js에 익숙해져야 할듯 싶다. 간단한 서버 구조 작성이 시급하다.
    • ~~유저 정보를 받고 내부에 생성하고, 동일한 계정정보로 새로 생성을 요구하면 실패하게 하고, 비번 수정을 적용하고, 해당 계정 을 삭제하는등의 기본적인 crud 기능 동작을 하는 매우 단순한 서버를 구성해 보았다. ~~
    • 로그인된 유저목록을 저장하여 현재 로그인된 유저의 목록 확인이 가능하게 구성해보았다. 로그인시 해당 목록에 추가가되고 로그아웃시 삭제가 되는 구조이다.
  • 구현 하고자하는 페이지의 기본적인 모양은 진행하다 중단한 windy 프로젝트를 사용하것이나, 이전에 구현했던 것보다 일부 정보가 더 많아질 예정이므로 수정을 가할 것 이다.

    • 더 많은 정보 사용의 이유는 update 부분에서 사용할 자료 문제 였는데, 비밀번호 수정을 해당부분의 예시로 사용할 예정이라 추가적인 부분이 필요치 않아 기존 형식을 많이 유지할 예정이다.
  • nest.js를 활용한 ssr 구현에 Angular가 언급 되기에 해당부분을 확인하여야 할듯 싶다. 아니면 next.js를 활용한 react 구현 방향도..

    • 이 부분은 nest.js에 익숙해진뒤에 고민해봐야 할듯 싶다. ssr은 조금 더 봐야 할듯.
  • typescript와 typeorm 을 사용할 예정

  • 연습하는 코드가 git에 업데이트 되지 않는 이유 확인.

    • nestjs에서 제공하는 샘플 생성 부분에서 구성된 폴더 명으로 git 레포를 구성하는 작업이 진행된듯하다. 해서 기존 레포와 별개로 설정되어 추가되거나 수정된 부분을 인지 하지 못하는 상황이 발생하였다. 우선은 단순 무식하게 새로 생성된 레포 정보가 담긴 부분 자체를 삭제하는 방향으로 해결할수 있었다.

Django

  • django를 화용하여 위와 동일한 기능을 가진 페이지를 구현해보고자 함.
  • django 부분은 nest.js 진행이후에 더 생각 해볼 예정이다.(빨리 끝나면 다음주 초에?)(2주 동안 nest.js만 다뤄야할수도 있을것 같다.)

공부 할 것(꾸준히)


오늘은...

휴식을 취함.

profile
개발자가 되기위해 공부중

0개의 댓글