본문 바로가기

분류 전체보기

(291)
프로그래머스, 예산 프로그래머스, 예산 예산 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 6개월전? 나의 풀이 def solution(d, budget): d.sort() for i in range(1, len(d)+1): if(d[0] > budget): return 0 if(sum(d[:i]) > budget): break else: answer = i return answer 왜 이렇게 풀었는지.. 생각 안나지만, 오늘 푼 풀이와 별반 다르지 않다. 다시 풀어보니, 이 문제는 그리디 문제였다. 6개월 전에는 그리디 개념도 몰랐던 나. 예산이 적은 부서부터 지급해야 최..
백준 8983 사냥꾼 백준 8983 사냥꾼 https://www.acmicpc.net/problem/8983 8983번: 사냥꾼 입력의 첫 줄에는 사대의 수 M (1 ≤ M ≤ 100,000), 동물의 수 N (1 ≤ N ≤ 100,000), 사정거리 L (1 ≤ L ≤ 1,000,000,000)이 빈칸을 사이에 두고 주어진다. 두 번째 줄에는 사대의 위치를 나타내는 M개의 x-좌 www.acmicpc.net 처음 이 문제를 봤을 때, 풀이 방법을 아예 모르겠어서 막막했었다. 여러번 반복해서 보니, 신기하게 풀린다. 접근방법 사대를 움직여 해당 동물을 죽일 수 있는지 살펴본다! 기준을 사대로 잡아야 한다!! 풀이 사대 길이와 |x-a| + b 길이 비교해 해당거리 내에 있으면 동물을 잡을 수 있고 없으면, 사대 위치를 조정해..
[나만무] node Logging System [나만무] node Logging System 개복치 서버 문제를 해결하기 위해 Logging 시스템 도입.. 라이브러리 설치 $ npm install winston $ npm install winston-daily-rotate-file $ npm install app-root-path server/winston/logger.js import winston from 'winston'; import winstonDaily from 'winston-daily-rotate-file'; const logDir = 'logs'; // logs 디렉토리 하위에 로그 파일 저장 const { combine, timestamp, printf } = winston.format; // Define log format co..
[나만무] Next Auth, google social login 구현 [나만무] Next Auth, google social login 구현 기존 구현했던 react-google-login 라이브러리 이용한 google login은 캐시를 지워줘야 됐다. 됐다 안됐다..하는 기능은 사실상 안되는 기능이다! npm i uninstall react-google-login 그래서 여러 자료를 찾던 중 NextAuth가 있길래 바로 이용. 참고 자료 https://www.youtube.com/watch?v=6lCXM11Tgyg https://dantechblog.gatsbyjs.io/posts/next-auth/ Home | Dan DevLog Blog posted about development dantechblog.gatsbyjs.io pages/api/auth/[...nex..
[나만무] 검색 기능 [나만무] 검색 기능 Front 쿼리 전달 features/Dashboard/components/SearchBar.tsx import React, { useState, KeyboardEvent } from "react"; import { useRouter } from "next/router"; export default function SearchBar() { ... const [keywords, setKeywords] = useState(""); const onKeyPress = (e: KeyboardEvent) => { if (e.key == "Enter") { e.preventDefault(); router.push({ pathname: '/search', query: {search : keywor..
[Hash Table] 백준 10816 숫자 카드 2 [Hash Table] 백준 10816 숫자 카드 2 📌 문제 백준 10816 숫자 카드 2 난이도 : 실버 4 https://www.acmicpc.net/problem/10816 10816번: 숫자 카드 2 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10,0 www.acmicpc.net 분류 : Accepted 📌 Hash Table(Dictionary) target in hash_table.keys() // True or False 반환 만약 해시테이블 key값에 해당 숫자 있으면 해당 키값의 벨류를 하나 증가시킴 없다면, key값..
[나만무] Google Social 로그인 [나만무] Google Social 로그인 구글 드라이브를 연동해야 할 수 도 있어서 google oauth 선택! 시간적 여유가 된다면, 카카오 소셜 로그인도 추가할 듯하다. 일단, 구글만! 회원가입은 없고, 소셜로 로그인하면 얻을 수 있는 정보로 회원관리할 예정이다, 로그인 한 회원이 유저 테이블 정보에 있으면 바로 토근 발급. 그렇지 않으면, 유저테이블에 등록후, 토근 발급!! 우리 서비스 서버에서 발행한 토큰으로 세션관리할 예정이다. 그렇다면 구글 oauth access token은 어디다 쓸꺼냐? 구글 드라이브 접근할 때, 사용할 듯하다... 더 알아봐야 한다. 일단 우리 서비스 세션 관리가 우선! Oauth 란? 사용자는 서비스 별로 로그인 정보를 따로 관리해야 해 불편함 검증되지 않은 App..
[나만무] 로그인 - 로그아웃 [나만무] 로그인 - 로그아웃 React-Node-MySQL 연동 프로젝트 진행 순서 1. CRA 생성 2. server 폴더 생성 - db 연결, 서버 3. Proxy설정 - package.json 폴더 구조 Client Server 리액트를 익히면서 클라이언트 서버가 있다는 걸 처음 알았다. 3000번 포트로 이어져 있기 때문에 이걸 proxy를 통해 포트 전환 해줘야 한다. 터미널창을 분리해서 두개의 서버를 돌려야 한다. 폴더 진입 주의!! Run Client Run Server .env DANGEROUSLY_DISABLE_HOST_CHECK=true PORT = 8000 MYSQL_HOST = 127.0.0.1 MYSQL_USERNAME = root MYSQL_PASSWORD = [비번] MYSQ..
Redux Redux 중앙 데이터 관리소(Store)로 상태관리소로 접근 & 제어 공용 변수 저장소 전역 상태관리 라이브러리 즉, Global State를 의미하고 그것을 관리하게 도와주는 라이브러리(패키지) 필요 이유 Props로 State를 공유하는 방법에는 불편한 점 개선 세팅 $ yarn add redux react-redux 리덕스 카운터 프로그램 세팅 modules/counter.js // 초기 상태값(state) const initialState = { number: 0, } // const [number, setNumber] = useState(0) // 리듀서 : 'state에 변화를 일으키는' 함수 // (1) state를 action의 type에 따라 변경하는 함수 // input : state..
Hooks - useEffect, 의존성 배열(dependency array) Hooks - useEffect, 의존성 배열(dependency array) useEffact 렌더링 될 때, 특정한 작업을 수행해야 할 때 설정하는 훅 컴포넌트가 화면에 보여졌을 때 컴포넌트가 화면에서 사라졌을 때(return) App.jsx import React, { useEffect, useState } from 'react' function App() { const [value, setValue] = useState('') useEffect(() => { console.log('hello useEffect!'); }); return ( { setValue(event.target.value); }} /> ) } export default App 의존성 배열 dependency array 이 배열..