분류 전체보기
-
BOJ)1915 - 가장 큰 정사각형PS/boj 2022. 9. 25. 12:46
정사각형의 조건 검사하자는 걸로 접근: 정사각형 한 변의 길이가 짝수, 홀수로 구분하여 정사각형의 중심을 기준으로 생각, 가능하려면 적어도 인접한 두 지점이 1이어야 함. 중간까지 시도 하다가 너무 복잡해지고 접근을 잘못한 거 같단 생각 들고 못 품. 다른 답변 보고 제출했는데 나중에 비슷한 문제 똑같이 풀 수 있을지 모르겠음.. 변의 길이가 1 보다 큰 정사각형 안에는 그보다 작은 정사각형이 있음. dp 생각, 점화식 세우기 dp(i, j) = i, j 를 우하단으로 하는 정사각형의 최대 변 길이 dp(i, j) = min(dp[i][j - 1], dp[i - 1][j], dp[i - 1][j - 1]) + 1 n, m = map(int, input().split()) board = [input() f..
-
Google Cloud Translation API detect confidenceDevOps 2022. 9. 24. 20:59
Google Cloud Translation API detect confidence GCP 에서 제공하는 Cloud Translation API 사용 시 detect 되는 언어 감지가 기대하는 대로 동작하지 않아 신뢰도에 대한 수치가 자세히 나와있는 무언가를 찾아보려고 시도했다. 문장의 길이가 짧을수록, 특히 영어를 사용하는 국가의 경우 정확성이 더욱 더 떨어지는 것으로 보였다. Basic, Advanced Basic(v2): https://cloud.google.com/translate/docs/editions 채팅, 소셜 미디어, 댓글과 같은 사용자 제작 컨텐츠를 취급하는 애플리케이션에 적합 Advanced(v3): 맞춤설정 및 긴 형식의 콘텐츠 사용 사례에 적합 용어집 기능 추가 https://cl..
-
JS RegExp perfomanceJavaScript & TypeScript 2022. 9. 24. 20:58
JS RegExp perfomance JavaScript 에서 /\s+/g 와 같이 리터럴 신택스로 작성한 RegExp이 존재할 때 const reg1 = /\s+/g 와 같이 다른 변수에 저장해두고 사용할 지, 아니면 바로 리터럴을 사용할 지에 대한 조사 내용은 아래 링크해둔 stackoverflow 의 첫 번째 답변을 보면 자세히 설명해주고 있다. ES5 이전에는 리터럴 신택스로 작성된 정규 표현식의 경우 자체적으로 한 번 컴파일하고 캐싱하고 사용하여 리터럴 신택스를 그대로 사용하여도 문제가 없었으나 ES5 부터 리터럴도 새 객체를 생성하는 것으로 변경되었고 그에 따라 JS 엔진들도 수정되었으므로 의존할 수 없다. 결론: 여러 번 사용되는 정규표현식의 경우 리터럴 신택스로 작성하여 따로 저장 후 사용..
-
BOJ)1389 - 케빈 베이커의 6단계 법칙PS/boj 2022. 9. 24. 12:54
최소 거리랑 그래프 보고 BFS 생각함. V, E 갯수 제한 보고 인접 리스트 생각함. search 함수에서 전부 방문했으면 안 돌아도 되는거 처리 할 수 있는거 같은데 시간 문제 없어서 넘어감. 문법 헷갈려서 아직 콘솔 안 찍어보면 삐걱거림. 풀이 너무 오래 걸림. import sys from collections import deque input = sys.stdin.readline N, M = map(int, input().split()) board = [[] for _ in range(N + 1)] for _ in range(M): x, y = map(int, input().split()) board[x].append(y) board[y].append(x) def search(x): dq = de..
-
BOJ)15686 - 치킨배달PS/boj 2022. 9. 22. 23:11
치킨 거리를 구하는 것은 O(1)로 가능 집에서 치킨집 까지의 거리를 모두 구한 리스트를 만들고 선택한 M 개의 치킨집까지의 거리 중에서 최솟값의 합을 구하면 nCm 개의 도시의 치킨거리가 나올텐데 그 중에 최솟값이 ans 라고 생각 최악의 경우를 고려해도 시간초과가 나지 않아 보였음. 13Cm 인데 여기서 m은 1~13, Combination 연산 최댓값 생각해도 13C7 대략 O(집 100 * 치킨집 7 * 13C7) sol 1 로 제출하고 다른 모범 답안 참조하여 sol 2로 수정함. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 # sol 1 impor..
-
fastify-multipart handle multiple file streams and fields in TypeScriptJavaScript & TypeScript 2022. 9. 22. 18:48
Property 'file' does not exist on type 'Multipart'. Property 'file' does not exist on type 'MultipartValue'. @fastify/fastify-multipart 버전이 7.1.2 → 7.2.0 으로 바뀌면서 에러가 발생했다. 릴리즈 히스토리를 보니 Multipart type 이 바뀌게 되어서 발생하는듯 했고 아래와 같이 수정하여 해결했다. 1. Using type predicates const isMultipartFile = (multipart: Multipart): multipart is MultipartFile => { return ( (multipart as MultipartFile).file !== undefined..
-
1장. 타입스크립트 알아보기책/misc 2022. 7. 17. 21:23
1장. 타입스크립트 알아보기 아이템 1~5 아이템 1. 타입스크립트와 자바스크립트의 관계 이해하기 모든 JS 프로그램은 이미 TS 프로그램이다. 반대로, TS는 일반적으로 유효한 JS프로그램이 아니다. 코드의 의도가 무엇인지 타입 구문을 통해 타입스크립트에게 알려줄 수 있기 때문에 코드의 동작과 의도가 다른 부분을 찾을 수 있다. TS는 JS 런타임 동작을 모델링하는 타입 시스템을 가지고 있기에 런타임 오류를 발생시키는 코드를 찾아내려고 한다. 모든 오류를 찾아낼 순 없다. 타입 체커를 통과하면서도 런타임 오류를 발생시키는 코드는 존재할 수 있다. 아이템 2. 타입스크립트 설정 이해하기 cli 가 아닌 설정 파일(tsconfig.json)을 사용하자. 팀원과 공유하기 위함. 엄격한 체크를 하고 싶다면 s..