목록전체 글
Step-by-Step
https://reactrouter.com/docs/en/v6/api#useroutes React Router | API Reference Declarative routing for React apps at any scale reactrouter.com React-router-dom이 v5에서 v6으로 업그레이드 되었다 새로운 버전을 사용하면서 기능들을 매번 찾아보기 힘드니까 공식문서와 여러 검색을 통해 정리해야겠다 사용해본 기능들 위주로 정리하고, 하나씩 추가 예정이다 (※ 참조한 문서들은 아래에 표시) [설치] $ npm install react-router-dom # or, for a React Native app $ npm install react-router-native 1. Switch 대신 ..
https://www.acmicpc.net/problem/14499 14499번: 주사위 굴리기 첫째 줄에 지도의 세로 크기 N, 가로 크기 M (1 ≤ N, M ≤ 20), 주사위를 놓은 곳의 좌표 x, y(0 ≤ x ≤ N-1, 0 ≤ y ≤ M-1), 그리고 명령의 개수 K (1 ≤ K ≤ 1,000)가 주어진다. 둘째 줄부터 N개의 줄에 지 www.acmicpc.net 이 문제는 어떻게 접근해야하는지만 깨달으면 쉽게 풀 수 있는 문제인데,,, 사실 그러기가 쉽지 않다(어렵다) 문제에서 이런식으로 주사위를 펼쳐놓은 모양을 보여주고, 친절하게 번호까지 지정해준다 (이게 큰 힌트) 주사위가 어떤 칸에 도달하면, 칸의 숫자가 0이 아니면 주사위 밑면에 값을 복사하고 0으로 만들어주며 칸의 숫자가 0이면 ..
https://www.acmicpc.net/problem/12100 12100번: 2048 (Easy) 첫째 줄에 보드의 크기 N (1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 게임판의 초기 상태가 주어진다. 0은 빈 칸을 나타내며, 이외의 값은 모두 블록을 나타낸다. 블록에 쓰여 있는 수는 2 www.acmicpc.net 대학교 1학년때 자주하던 2048 게임이 나왔다! 워낙 자주하던 게임이라 따로 해보지 않아도 규칙을 알고 있었다 ※ 게임 해보기 : https://play2048.co/ 블록은 상하좌우 네 방향으로 밀 수 있으며, 같은 숫자를 가진 두 블록이 충돌하면 두 값이 합쳐진 하나의 블록으로 변하게 된다 여기서 Stack을 사용해야겠다고 생각했다..! 보드의 크기는 NXN(N=..
Java로 코딩 문제를 풀던 도중, 2차원 배열을 복사할 일이 생겼다 정확하게 복사하기 위해 구글에 검색해보던 도중, 배열의 복사에는 두 가지가 있다는 걸 알게 되었다 첫 번째는 배열의 주소값을 복사하는 얕은 복사(shallow copy), 두 번째는 배열의 값 자체를 복사하는 깊은 복사(Deep copy) 얕은 복사(Shallow Copy) - 주소값을 복사하는 방식으로, 복사 후 한쪽에서 값을 변경하면 다른 쪽에서도 변경된다 - 두 배열이 같은 값을 참조하기 때문에 한쪽에서 바꾸면 다른 쪽 배열의 값도 바뀌게 된다 int[] a = {2,3,5}; int[] b = a; System.out.println("b:"+b[0]+","+b[1]+","+b[2]); b[1] = 100; System.out.p..
https://www.acmicpc.net/problem/2178 2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net 깊이우선탐색(DFS)과 너비우선탐색(BFS) 중에 하나를 선택해서 풀어야 하는 문제였다 시간 복잡도는 비슷하다고 생각해 조금 더 익숙한 DFS를 선택했고, 코드를 작성하였다 코드 설계는 다음과 같이 하였다 1. 우선 사방 중에 갈 수 있는 곳을 찾은 후, 재귀를 이용하여 계속 탐색한다 2. 더 이상 갈 수 없는 곳이 나오면 해당 함수를 종료(return)하고 다음 방향으로 탐색한다 3. 최종 목적지에 도달하면 전역 변수에 이동한..
ArrayList에 추가를 하면 객체의 값이 저장되는게 아니라 주소 값을 저장하게 된다 예제를 통해 설명하면 import java.util.*; public class Solution{ public static void main(String[] args){ ArrayList arrays = new ArrayList(); ArrayList arr = new ArrayList(); for(int i=0; i
https://programmers.co.kr/learn/courses/30/lessons/42890 코딩테스트 연습 - 후보키 [["100","ryan","music","2"],["200","apeach","math","2"],["300","tube","computer","3"],["400","con","computer","4"],["500","muzi","music","3"],["600","apeach","music","2"]] 2 programmers.co.kr 이틀동안 머리를 굴려 완성한 코드,, 솔직히 인터넷에 검색하면 내가 작성한 코드보다 훨씬 좋은 방법이 많이 있을거 같았는데, 끝까지 해내고싶어서 완성한 코드이다 하하하하 정말 이 코드를 짜면서 배운점이 많다... 그래서 포스팅을 추가로 할 ..
https://programmers.co.kr/learn/courses/30/lessons/67257 코딩테스트 연습 - 수식 최대화 IT 벤처 회사를 운영하고 있는 라이언은 매년 사내 해커톤 대회를 개최하여 우승자에게 상금을 지급하고 있습니다. 이번 대회에서는 우승자에게 지급되는 상금을 이전 대회와는 다르게 다음과 programmers.co.kr 문제에서 나타난 연산자의 수가 3개이기 때문에 경우의 수는 3!=6가지이다. 깊이 우선 탐색(dfs)은 어딜가나 나오기 때문에 항상 복습하는 습관을 길러야겠다!!!!!고 생각한 문제. 코드를 분석하면 다음과 같다. 1. 전역변수 public static char[] prior = {'+','-','*'}; public static ArrayList op = n..
https://programmers.co.kr/learn/courses/30/lessons/72412
https://programmers.co.kr/learn/courses/30/lessons/17686 코딩테스트 연습 - [3차] 파일명 정렬 파일명 정렬 세 차례의 코딩 테스트와 두 차례의 면접이라는 기나긴 블라인드 공채를 무사히 통과해 카카오에 입사한 무지는 파일 저장소 서버 관리를 맡게 되었다. 저장소 서버에는 프로그램 programmers.co.kr 파일명에 따라 파일을 순서대로 정리하는 코드를 작성하는 문제이다 파일명은 크게 세 가지 파트로 나눌 수 있는데, 1. 파일 이름의 문자파트를 나타내는 HEAD (처음 ~ 숫자파트 전까지) 2. 파일 이름의 숫자파트를 나타내는 NUMBER 3. 나머지 부분인 TAIL (숫자파트 이후~끝까지 / 없을 수 있음) 파일 정리는 HEAD > NUMBER > T..