회고

[취업준비일지] - 6

Happy Programmer 2022. 10. 26. 23:52

1.@meia를 통해 max, min width등을 정해 해당 조건을 충족할 경우 정해진 css가 정해지게 할 수 있다. 
@media (max-width : 480px){
   width : 80%
}

2.Bootstrap은 프레임워크로 리액트에서 사용하기 좋은 도구인 것 같다.
특히 React-Bootstrap으로 따로 페이지가 있는데
import를 통해 편하게 양식을 사용할 수 있다.

하지만 부트스트랩은 정형화된 디자인만 사용되고
로딩 속도가 지연된다고 한다.
또한 기존 정의와 다른 클래스를 이해해야 하기 때문에 러닝커브 문제도 있다.


3.useEffec의 의존성배열에 입력되야할 텍스트값을 넣어줄 경우
텍스트 데이터가 갱신될 경우 그 값을 이용하는 다른 state를 즉각적으로 관리해줄 수 있다.(제목, 내용 등)


4.gitignore파일을 만든 다음 서버의 dev파일(key, api정보 등), package파일, modules 파일 등을 추가해 깃허브에 올라가지 않도록 만들어야 한다.

특히 AWS등을 사용할 경우 잘못하면 해킹(사실 정보 공유라 해킹이라고 하기도 민망하다)당해 엄청난 요금폭탄을 맞을 수 있으므로 깃허브에 올릴 때는 중요 정보 및 필요없는 데이터는 올라가지 않도록 주의하자


5.heap sort는 완전이진트리를 기준으로 하는데 새로운 값이 추가될 경우 크기 비교를 통해 하단으로 내려가는 구조로 되어있다.

최대 힙 또는 회소 힙을 만들어 정렬할 때 사용하며
주 이용 용도는 새로운 값들을 추가하며 최대값(또는 최소값)을 자주 사용해야 할 때 주로 사용한다.

노드 최상위 값(최대/최소)이 사용되고 나면 최 하단 마지막 리프노드의 값을 끌어올린 후 다시 하단으로 내려가며 정렬시켜 최대/최소값을 루트노드에 위치시킨다. 효율성은 최선, 평균, 최악 모두 O(NlogN)으로 일반적으로는 사용하지 않고 특정 상황(위에 언급한 자주 데이터를 넣고 빼며 최대 또는 최소값대로 처리해야하는 우선순위 큐 등에 사용된다)


6.상태 코드에 따라 현재 상황(상태)이 어떤지 알 수 있다.
세자리 중 1xx는 리퀘스트 처리중, 2xx는 성공, 3xx는 Redirection, 4xx는 클라이언트 관련 문제, 5xx는 서버 관련 문제로 추측할 수 있다.
성공에는 대표적으로 200(ok), 204(No Content), 206(Partial Content)가 있으며
Redirection은 301(영구변경), 302(일시적 변경),303(302보다 조건 추가), 304(조건틀림/Redirection과는 관련이 없음), 307(302와 비슷하지만 POST->GET 치환을 사양에 따라 안할 수 있음)
Client Error는 400(Bad Request), 401(Unauthorized), 403(Forbidden), 404(Not Found)
Server Error는 500(internal Server Error), 503(Service Unavaliable), 504(Gateway Time-Out) 등이 있다.




(1).백준 2501 약수구하기는 약수를 구한 다음 n번째 약수를 출력하는 문제로
index가 0부터 시작되지만 약수의 순서는 첫번째부터 카운팅하는 차이와
약수 범위 밖인 경우 0을 출력하는 것만 주의하면 되는 문제였다.

let input = `6 3`.split(' ').map(Number)
let arr = []
for(let i = 1 ; i <= input[0] ; i++){
    if(input[0]%i === 0){
        arr.push(i)
    }
}

if(arr[input[1]-1]){
    console.log(arr[input[1]-1])
}
else{
    console.log(0)
}