본문 바로가기

전체 글

(46)
Import, Export ▶ MoularizationReact는 프로그램을 구성하는 내부의 코드를 기능별로 나누어 Module형식으로 관리하는데 용이함한 파일에 쓰여진 코드를 여러 파일로 관리할 수 있음재사용성이 증가함▶ import 할 때, {}의 차이모듈을 보내주는 export 방식의 차이모듈을 다른 파일에서 불러올 때, import 사용하듯, 모듈을 다른 파일로 보내려면 export라고 작성해야 함. Example.jsconst a = 1;const b = 2;export a;export default b;Sub.jsimport hi, {a} from './Example';  Example.js에서 export한 모듈을 불러오기 위해선, Sub.js에서 import로 불러와서 사용하면 됨.맨처음있는 hi는 default로 ..
[백준 13460번] 구슬 탈출 2(파이썬) ▶ 문제 ▶ 풀이 BFS 알고리즘을 이용하여 풀이 탐색 방향 = 상,하,좌,우 ( dx, dy 이용) 구슬이 멈추는 경우 움직인 위치가 벽인 경우 움직인 위치가 구멍이 경우 예외처리가 필요한 경우 파란구슬이 먼저 들어간 경우 무시 두 구슬의 위치가 같은 경우 더 많이 이동한 구슬이 더 뒤에 있는 구슬이기때문에 한칸 더 뒤로 이동 ▶ 코드 from collections import deque import sys input = sys.stdin.readline # 빠른 입출력 위한 코드 n, m = map(int, input().split()) graph = [] for i in range(n): graph.append(list(input())) for j in range(m): if graph[i][j] ..
BFS ▶ BFS BFS는 너비 우선 탐색이라고도 부르며, 그래프에서 가까운 노드부터 우선적으로 탐색하는 알고리즘 맹목적인 탐색을 하고자할 때 사용할 수 있는 기본적인 탐색 기법 최단 경로를 찾아준다는 점에서 최단길이를 보장해야 할 때 많이 사용(미로 찾기) ▶ 원리 큐 자료구조를 이용 탐색 시작 노드를 큐에 삽입하고 방문 처리 큐에서 노드를 꺼낸 뒤, 해당 노드의 인접 노드 중에서 방문하지 않은 노드를 모두 큐에 삽입하고 방문처리 더 이상 2번의 과정을 수행할 수 없을 때까지 반복 ▶ BFS 코드(파이썬) from collections import deque def bfs(graph,start,visited): queue=deque([start]) visited[start]=True #visited : 들어온..
React Router ▶ React Router React에서 페이지 이동 처리(url 기준) npm install react-router-dom 사용법 import { BrowserRouter, Routes, Switch, Route } from 'react-router-dom'; import Home from "./routes/Home"; import Movie from "./routes/Movie"; function App(){ return 새로고침 뛸 Component } Browser Browser Router (보통의 웹사이트처럼 입력한 url로 표기) Hash Router (보통의 url에 추가적인 random값이 추가되어짐) Switch Route를 찾는 것 / 단 하나의 Route만 렌더링 하기 위함 Rout..
UseEffect ▶ useEffect (코드가 언제 실행될지를 정할 수 있음) import {useEffect} from 'react' function Hello(){ useEffect(()=>{ console.log('hi'); },[]) } function Hello2(){ function effectFn(){ console.log('hi2'); } useEffect(effectFn,[]); //같은 의미 return Hello } 2가지 argument 존재 우리가 실행시키고 싶은 함수 dependency 해당 dependency가 변화할때마다 우리가 실행시키고 싶은 함수를 실행한다는 의미 []비어있으면 코드가 한번만 실행된다는 것을 의미) ▶ Cleanup (uesEffect에서 실행하고 싶은 함수가 사라질 경우..
Props ▶ Props (재사용 가능 코드에 유용함) function Retext({Text}){ return( {Text} ) } //이렇게 사용 시, 하단 코드와 동일 /* hihi */ //응용 function Sitebox({ text, imgurl, url }) { // props 재사용가능용으로 만듬 return ( {text} ); } 재사용해야하는 코드가 많을 경우 매우 유용하게 사용가능
[백준 2869번] 달팽이는 올라가고 싶다(파이썬) ▶ 문제 ▶ 풀이 하루동안 가는 거리 :a-b x일동안 가는 거리(V) = a*x-(b*(x-1)) 해당 공식 계산 시, x=(v-b)/(a-b)가 됨. 바로 올라갈 경우는 나눠떨어질 경우. 하루 뒤에 올라갈 경우 +1해주면됨 ▶ 코드 a,b,v=map(int,input().split()) x=(v-b)/(a-b) if((v-b)%(a-b)==0): print(int(x)) else: print(int(x)+1) 깃허브 풀이 사이트 : https://github.com/JaeHyunYu/Algorithm/tree/master/Baekjoon/Level1 Site:https://www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으..
[백준 11005번] 진법 변환2(파이썬) ▶ 문제 ▶ 풀이 1 사람이 푸는 방식으로 푼 방식 제곱근 중 가장 큰 값을 계속해서 빼는 식으로 구함. becomenum함수 : 10진수로 변화하는 함수 becomealpha함수 : 10진법을 그 이상으로 변환하는 함수 finenum함수 : b진법으로 변환 시, 몇자리 숫자인지를 파악하는 함수 (진법으로 변환시 첫번째 숫자와, 몇자리 수인지 return) 입력받은 숫자가 0이 될때까지 제곱근 중 가장 큰값을 findnum함수를 이용하여 구하고, 뺌으로써 진법변환 실시 ▶ 코드 import math def becomenum(param): return (ord(param)-55) def becomealpha(param): return (chr(param+55)) def findnum(param,param2..