본문으로 바로가기

TIL_230620 | 강의를 일단 빨리 듣자

category Log/TIL 2023. 6. 20. 21:49


강의만 주구장창 듣지 말랬는데.....

오늘 다들어야 내일 숙제를 시작할 수 있기 때문에

무조건 오늘 다 들어야한다..

빨리 TIL 제출하고 다시 들으러 가야지


 

[오늘 한 거]

1. 알고리즘 2문제, 2. 강의듣기 끝...? 3. redux 사용방법 정리... 

 

 

 

[오늘의 문시해알]

문제 : 알고리즘 풀 때 어떻게든 풀어는 낸다. (약간 프로젝트 진행할 때도 비슷한 문제?인데) 변수, 조건문, 반복문 등을 짤 때 처음 본 사람이 바로 알 수 있게 짜는게 아니라 내가 봐도 헷갈리게 짠다... 가독성도 안좋고, 남에게도 설명하기 힘드니 고쳐야함

 

※ 예시로 오늘 푼 프로그래머스 문제 

더보기

문제


내가 푼 방법 : 사실 'index'랑 '배수' 에 집착해서 푸는 내내 헷갈리고 어려웠다..

function solution(cipher, code) {
// 구할 해독 코드의 빈문자열 초기화
  let answerString = '';
  
// cipher에서 index로 꺼내야할 수가 '배수번째 -1'
// 빈배열에 해당 index번째 cipher 문자 추가
  for (let i = 1; code * i - 1 < cipher.length; i++) {
    answerString += cipher[code * i - 1];
  }
  return answerString;
}

 

 

학우분이 푼 방법 : 사실 다른 거라곤 for문에 (괄호 안 내용 뿐인 것 같은데.. 나한텐 그것 차이가 좀 크게 느껴진다)

function solution(cipher, code) {
// 빈 문자열에 넣어
  let answer = '';
  
  // 반복 변수의 초깃값을 code번 째로 해주고, 
  // 다음 code배수 번째니까 같은 수를 반복변수에 더해주는 것으로 구했다... 
  // 당연한건데 생각 못했다... 이렇게 하니 한번에 알기 좋아보인다..
  for (let i = code; i <= cipher.length; i += code) {
    answer += cipher[i - 1];
  }
  return answer;
}

 

해결방안 : 1)일단 다른 사람이 짠 코드는 어떤 식으로 되어있는지 본다.  2)조금 더 생각해본다. 문제 풀기 전 후로 내가 쓴 코드를 한번에 이해할 수 있는지 test 해본다.

 

시도랑 알게된점은 차차....

 

 

 

[남은시간 뭐할 거?] (21:50~)

강의 다 듣고

useState의 함수형 업데이트 찾아보고 정리

씻고

1시 30분 전에 취침

 

 

 

[느낀점 ]

늦게 자니까 진~~~~~~~~~짜 피곤하다.. 깨어있는 시간에도 자는 것 같아서 진짜... 1시 30분 전에 자는 약속 꼭 지키자.