본문 바로가기
반응형

분류 전체보기60

[프로그래머스 고득점Kit] 위장(해시) - Javascript 실제 조합을 일일히 구해서 계산하면 아마 통과하지 못할것이다. 처음에 조합으로 풀고 제출했더니 테케 1번이 오답이 떴고 질문하기를 가보니까 나같은 사람들이 우글대고있었다. 찾아보니까 훨씬 더 간단하게 해결할 수 있는 방법이 있었다. function solution(clothes) { var type = new Map(); var arr = []; var i=0; clothes.map((value, idx) => { if(type.get(value[1])===undefined){ arr[i]=2; type.set(value[1], i++) } else { arr[type.get(value[1])]+=1; } }) var answer = 1; arr.map(value => { answer*=value; }).. 2021. 9. 16.
BOJ 4179 ) 불! (C++) 4179번: 불! 입력의 첫째 줄에는 공백으로 구분된 두 정수 R과 C가 주어진다. 단, 1 ≤ R, C ≤ 1000 이다. R은 미로 행의 개수, C는 열의 개수이다. 다음 입력으로 R줄동안 각각의 미로 행이 주어진다. 각각의 문 www.acmicpc.net BFS로 풀리는 문젠데 예외 처리 하는 부분에서 미처 고려하지 못한 부분이 있어 좀 헤맸다. 1. 불의 이동경로에 대한 큐와 지훈이의 이동 경로에 대한 큐를 각각 만들어주고 입력을 받으면서 시작점들을 각 큐에 입력해준다. 그리고 지훈이의 이동 시간을 체크할 배열(dist)과 불의 이동 시간을 체크할 배열(burn)에 이동 가능한 좌표를 -1로 체크해준다. (따로 체크하지 않은 좌표는 0으로 초기화 되어 있으므로 추후 방문여부 체크 시 해당 좌표가 .. 2021. 7. 28.
[Node.js]Reverse Geocoding with Naver Map API Naver Map API를 이용하여 GPS 좌표를 주소로 바꿀 수 있다. NAVER CLOUD PLATFORM cloud computing services for corporations, IaaS, PaaS, SaaS, with Global region and Security Technology Certification www.ncloud.com 위의 링크에서 신청 및 이용이 가능하다. 일부 서비스는 이용 요금이 부과되지만 지금 알아볼 Reverse Geocoding의 경우 무료로 이용이 가능하다. (다만 월간 서비스 이용 한도가 정해져 있다.) Reverse Geocoding 개요 - Reverse Geocoding api.ncloud-docs.com //longitude, latitude 좌표 let.. 2021. 7. 27.
React) 불필요한 렌더링을 없애보자! 리액트에서 setState가 호출될 때 마다 렌더링이 일어난다. 과도한 렌더링은 페이지 성능 저하를 야기할 수 있다. 따라서불필요한 렌더링을 최소화 할 필요가 있다. Class를 사용하는 경우 1. shouldComponentUpdate() shouldComponentUpdate(nextProps, nextState, nextContext){ if(this.state.counter !== nextState.counter){ return true; } return false; } shouldComponentUpdate()를 이용해 렌더링이 발생하는 조건을 설정할 수 있다. 위의 코드에서는 state의 counter 변수의 값이 변경된 경우에만 렌더링이 일어나도록 하고 있다. 2. PureComponent .. 2021. 6. 28.
VSCode 코드 자동완성 커스터마이징(Snippet) 알고리즘 공부를 다시 시작하면서 여러 문제를 풀다보니 새 문제를 풀때마다 같은 내용을 타이핑 해주는게 귀찮게 느껴졌다. 스니펫을 이용해서 귀찮음을 덜어보자. C++ #include using namespace std; int main(){ cin.tie(NULL); ios_base::sync_with_stdio(false); return 0; } 1. VSCode에서 Ctrl + Shift + P 2. Configure User Snippets 검색 3. cpp.json 검색 4. cpp.json 파일의 내용 수정 { "cppps": { "prefix": "cppps",// trigger word "body": [ "#include ", "using namespace std;", "", "int main.. 2021. 6. 18.
클라이언트에서 서버로 요청 보내기 (+ CORS) 클라이언트는 3000번 포트, 서버는 8002번 포트에서 실행중이다. 따라서 클라이언트에서 서버로 바로 요청을 보낼 수 없고 프록시를 통해 요청을 보내야 한다. 'http-proxy-middleware'를 이용한다. 클라이언트에 setupProxy.js 파일을 만들어 주고 아래와 같이 작성했다. (http://localhost:3000/api/auth/login 으로 요청을 보내면 http://localhost:8002/api/auth/login 요청이 서버로 전달된다.) const proxy = require('http-proxy-middleware'); module.exports = function(app) { app.use( '/api', proxy({ target:'http://localhost:.. 2021. 6. 17.
반응형