Study_Cat

꾸준히 공부하는 고양이가 될게요.

끊임없는 노력은 천재를 이긴다.

2024/04 22

[웹 개발] Typescript의 기본 타입에 대해 알아보자 (feat. React 적용 예제)

1. 기본 타입 let Bool: boolean // True or False let num: number // 정수, 실수, (2,8,16)진수, NaN, Infinity 가능 let str: string // "문자", '${str1}' + str2 let arr1: number[] = [1,2,3] let arr2: Array = [1,2,3] 2. 형식 지정 x let a: any let u: unknown /// 형식 지정 x /// 사용을 지양하는 편이 좋음.. num = a // 아무 타입 = any 괜찮음 num = u // 아무 타입 = unknown 경고 num = u as number // 이 처럼 타입을 명시하면 괜찮음..

코딩/웹 개발 2024.04.30

Typescript를 배워야 하는 이유 (feat. React 적용)

웹 개발 프로젝트를 진행하면서 typesciprt를 사용하게 됐습니다. 그래서 Typesciprt는 무엇이며 구지 왜 공부해서 써야하는 지 알아보도록 하겠습니다.1. Typescript는 무엇이고 왜 써야할까?타입스크립트는 자바스크립트의 슈퍼셋인 오픈소스 프로그래밍 언어이다. 마이크로소프트에서 개발, 유지하고 있으며 엄격한 문법을 지원한다. (wiki) 1) Javascript는 너무 자유롭다Javascript는 코딩하는 데 있어서 너무나도 제한이 없고 자유롭습니다. 처음 개발할 때는 편하게 느껴졌지만 이는 나중에 큰 프로젝트할 때 오히려 단점이 될 수 있습니다. "실행시간 오류" 를 제대로 catch해낼 수 없기 때문이죠! 그 중 가장 큰 문제의 원인은 변수의 type을 지정함으로 써 해결할 수 있습니..

코딩/웹 개발 2024.04.29

[알고리즘 개념] Network Flow 최대 유량 알고리즘 (feat. 6086번 풀이)

참고 블로그 : https://blog.naver.com/kks227/220804885235저는 kks227(라이) 님의 블로그를 자주 보는데요. 이번에 최대 유량 알고리즘을 공부할 때도 이 분의 블로그를 메인으로 보고 다른 문서들이랑 같이 봤습니다. 혹시.. 문제가 된다면 내리겠습니다.  개인적으로 이분탐색을 먼저 공부했기에 많이 햇갈렸는데요, 그래서 다른 분들도 최대한 이해하기 쉽게 설명할라고 합니닷.. 1. Main Idea1) 용어 설명용량 : c(u, v) - 정점 u->v로 전송할 수 있는 최대 용량유량 : f(u,v) - 정점 u->v로 흐르고 있는 유량잔여 용량 : r(u,v) - 정점 u->v로 더 흐를 수 있는 유량소스 : 시작점싱크 : 도착점2) 규칙1. 용량 제한 : f(u,v) 2..

코딩/알고리즘 2024.04.29

[공지사항] 블로그 운영 방식 변경

1. 블로그 시작 이유와 목표 처음에는 인증 글을 올리면서 매일을 알차게 보내고자 하였고 돈을 걸면서 쫌 강제성을 걸기 위해서 블로그 포스팅을 시작햇는데요, 최근에 블로그 작성 글을 보면 원래 목적과 다른.. 변질된 느낌을 받았습니다. 또 다른 이유로는 다른 분들과 공유하고 서로 피드백하면서 내용을 채워가는 그런 느낌을 기대했는데요. 개념 작성글은 적합하지만 그 외의 포스팅 글들은 적합하지 않고 제 블로그에 작성한 글들이 다 그런 글들인 것 같아서 쫌 자신에게 실망했던 부분이 있었습니다. 2. 변경 사항 아마 여러분들도 이런 인증글을 왜 봐야하지? 라는 느낌을 받으셨을 것 같고 상품 지급하는 방법이 까다롭기도 해서 아마 기존에 작성한 글들은 남겨두고 앞으론 [일기/기록장] 은 비공개로 작성하고, [공부]..

공지사항 2024.04.18

[교훈] 너무나 아프지만 중요한 교훈 ( + 추가 이벤트 진행 중 )

이벤트 관련 글은 아래에 있습니다!! 많은 참여 부탁드립니다!! +) 저의 추가적인 경험과 자세한 해석(?)은 댓글에 있어요! 오늘은 정말 하고 싶은 말이 많네욥... 모의 시험을 봤는데... 진짜 시험 분위기여서 그런지 머리가 블랙아웃나고... 결론을 이상하게 서술하고 뭐 이것 저것 신기한 실수들이 나오면서 평소에 풀던 문제들보다 훨씬 쉬운 문제들을 거의 다 틀렸습니다. ㅎㅎ 그 덕분에 오늘 멘탈이 굉장히 많이 깨졌는데요. 예전 같으면 아마 계속 울고 있었겠지만... 같은 실수를 반복하지 않기 위해, 쫌 더 성정하기 위해 차분한 마음으로 제 실수를, 흑역사(?) 를 파해쳐볼라고 합니다. 이게 진짜 시험이였으면 아찔했는데... 모의 시험인게 다행이네요. 1. 영어 단어 문제들이 다 영어라서 개념을 알고 ..

교훈 2024.04.16

[교훈] 2024년 4월 13일 - 아픈데 할 것은 많을 때

오늘은 아래와 같은 제목과 주제를 두고 오늘 배우고 느낀점을 적어보겠습니다. 아픈데 할 것은 많을 때 1. 핑계 일단... 문제를 풀다가 잘 안되면 "오늘은 몸 상태가 안좋아서..." 라는 생각을 가끔 하는데요. 아주 틀렸다고 하진 않겠지만 의심해볼 필요가 있다고 생각합니다. 과연 이건 컨디션 탓일까...? 핑계 아닐까? 라는 생각이 드네요... 2. 게으름 아프면 아무것도 하고 싶지 않고 그냥 쉬고 싶긴 합니다. 하지만 해야할 것은 많고.. 조금의 빈 시간이 생기면 "쫌만 있다가 해야지" 라는 생각이 너무 강해서 침대에서 유튜브 보다가... 밥 먹고 살짝 놀다가.. 오늘 가장 후회하는 일이었네요.. 3. 애매한 욕심 솔직히 이것은 (1) 과 (2)를 합친 느낌인데요... 해야 할 것이 많아서 하긴 하는..

교훈 2024.04.13

[공지사항] 시험 기간 및 컨디션 관리로 인해 글을 올립니다.

시험기간 : 4월 22~4월 26일 대학 첫 시험이니 긴장되는 것도 있지만 지금 너무 컨디션이 안좋고 머리도 멍해서 해당 기간 동안은 [공부] 를 통해 공부한 내용, 푼 문제를 올리는 것으로 대체합니다. 다행히 열이 40도 까지 오른건 아니라서 이렇게 포스팅 쓰고 있는것도 다행이네요 ㅎㅎ... 여러분도 몸조심 하시고 시험 대박나세요! 2024년 4월 16일 수정내용 기존에는 [공부]에 푼 내용을 올리는 것으로 대체하려고 했습니다. 이를 일기 및 기록지에 공통으로 적는것으로 수정하겠습니다. (가끔 개념 정리할 때도 있습니다. 그리고 시험 기간이 지나면 다시 활발히 활동을 진행하겠습니다.) 항상 읽어주셔서 감사합니다! 제발... 구글님 제 포스팅좀 검색 창에 올려줘여...

공지사항 2024.04.13

[알고리즘 문제] 13250번 주사위 게임 (feat. 탑-다운, 바텀-업)

사실 이 문제는 1주일 전에 푼거긴 한데 dynamic programming에서 bottom-up, top-down 기법의 차이를 분석하고 넘어가고자 포스팅하고자 한다. 13250번: 주사위 게임 효빈이는 1부터 6까지 수가 적혀있는 6면 주사위를 가지고 있다. 매번 주사위를 던질 때마다 주사위의 윗 면에 적힌 수 만큼 사탕을 받게 된다. 효빈이가 적어도 N개의 사탕을 받기 위해 주사위를 www.acmicpc.net 1. 문제 분석 dt[i] = i이상의 사탕을 가져올 때 주사위를 던진 횟수의 기댓값으로 지정했다. 또한 주사위는 1~6 자연수 이기에 해당 범위의 dt값에만 영향을 받는다. 2. Bottom-Up Bottom-Up은 문제를 작은 단위로 쪼갠 상태에서 부터 큰 단위로 범위를 확장해 나가는 방..

코딩/알고리즘 2024.04.12

[전산수학I] 행렬과 행렬의 곱셈 (feat. 기하적 해석)

1. 행렬끼리 곱(일반적) A = m by n, B = k by l 행렬, 즉 A = m행 n열, B = k행 l열 이라고 가정했을 때 행렬의 곱을 하기 위해서는 n = k여야 한다. 그 결과는 m by l 행렬, m행 l열로 나타나며 계산하는 방법은 A의 행과 B의 열을 차례대로 대응해서 곱하면 된다. 결과값은 아래와 같다. 2. 기하 관점 해석 위 그림은 아래와 같이 쓸 수 있다. 또한 Ax 꼴은 이전 포스팅에서 선형대수 Transformation 에서 서술했으므로 참고하면 된다. 물론 간단하게 이렇게 말해도 되지만 위의 설명을 모호하다. 따라서 더 자세하게 말하면 아래와 같다. 물론 작은 행렬을 계산할 때는 잘 알려진 방법으로 행렬의 곱을 계산하면 되지만 이를 물리나 데이터 분석에 사용할 때는 기하..

[알고리즘 문제] 1521번 랜덤 소트

1521번: 랜덤 소트 첫째 줄에 순열의 크기 N이 주어진다. 둘째 줄에 순열에 들어있는 수 N개가 주어진다. 이 수는 모두 1보다 크거나 같고, N보나 작거나 같으며, 같은 수는 2번 이상 주어지지 않는다. 또, N은 8보다 www.acmicpc.net 1. 문제 분석 N = 8이하 자연수라서 check배열을 이용해 최대 8!의 경우의 수를 구하여 답을 얻을 수 있다. 그리고 bfs와 memoization을 이용해 기댓값을 구하면 된다. 2. 실패 과정 살짝 확률을 경우의 수로 정의하는 것과 햇갈려서 횟수의 합과 경우의 수를 나눴다. 솔직히 이래도 괜찮지 않을까? 하고 무심코 넘어갔는데.. 1시간 고민 끝에 틀린 이유를 알 수 있었다. (아래 참고) 3. 성공 과정 위의 그림에서 쓴 글처럼 사실 어느 ..

코딩/알고리즘 2024.04.10