본문 바로가기

전체 글67

[React Native] 딥링크 설정하기 React Navigation 공식문서에서 해당 내용을 확인하실 수 있습니다 https://reactnavigation.org/docs/deep-linking/ 안드로이드 android > app > src > main > AndroidManifest.xml activity 안에다가 해당 코드를 넣어줍니다 IOS ios는 2가지를 설정해줘야 합니다 1. ios > 프로젝트 이름 폴더 > AppDelegate.mm 해당 코드를 넣어줍니다 #import - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url options:(NSDictionary *)options { return [RCTLinkingManager application:ap.. 2024. 1. 4.
[React Native] Path alias 설정 방법은 2가지가 있습니다. 1. tsconfig + package.json tsconfig 파일을 설정해주고 path alias를 설정할 모든 폴더에 package.json 파일을 만들어줍니다. 모든 폴더에 package.json 파일을 만들어야 해서 번거롭다는 단점이 있습니다. //tsconfig.json { "extends": "@tsconfig/react-native/tsconfig.json", "compilerOptions": { "baseUrl": "./src", "paths": { "@components/*": ["components/*"], "@hooks/*": ["hooks/*"], "@pages/*": ["pages/*"], "@routes/*": ["routes/*"], "@types/.. 2024. 1. 3.
[프로그래머스] 혼자서 하는 틱택토 JS 문제링크 풀이 방법 나올 수 없는 경우를 구해 0을 리턴해줬습니다 1. X가 O보다 많을 때 2. O가 X보다 2개이상 많을 때 3. 선공이 이미 이겼는데 후공이 이어서 진행한 경우 4. 후공이 이미 이겼는데 선공이 이어서 진행한 경우 이기는 경우를 빙고라고 지칭했습니다 가로, 세로 빙고 여부를 판별하는 함수 대각선 빙고 여부를 판별하는 함수를 만들어서 활용했습니다 function solution(board) { // 나올 수 없는 경우 구하기 //1. X가 O보다 많을 때 //2. O가 X보다 2개이상 많을 때 //3. 선공이 이미 이겼는데 후공이 이어서 진행한 경우 //4. 후공이 이미 이겼는데 선공이 이어서 진행한 경우 let o_cnt = 0; let x_cnt = 0; for (row of bo.. 2024. 1. 3.
[프로그래머스] 당구 연습 JS 문제 링크 풀이 이 문제도 생각보다 오래 걸렸습니다 처음에는 (시작공과 벽면의 거리 + 벽면과 도착공의 거리)의 제곱을 구했는데 각 거리를 구하는 과정에서 실수가 나와서 오차가 생기더라구요 다른 분들의 풀이를 찾아보니 점을 대칭시켜서 구하는거였습니다 도착공의 좌표를 상[0], 하[1], 좌[2], 우[3] 대칭시킴 대칭시킨 도착공의 좌표와 시작공 사이의 거리를 구함 대신 시작공이 벽보다 도착공을 먼저 만나는 상황이면 건너뛴다 예를 들어 도착공을 위쪽으로 대칭시킬건데(시작공을 상단벽에 부딪히게 만들고) && 두 공이 같은 세로선상에 있고 && 시작공이 도착공 아래쪽에 있다면 => 벽에 부딪히기 전에 도착공에 부딪히므로 continue; 이해가 안가시는 분들은 아래 링크 참고해주세요!! https://sil.. 2024. 1. 3.
[프로그래머스] 리코쳇 로봇 JS 문제링크 풀이 방법 bfs로 접근하긴 했는데 큐에 넣어야 하는 노드들과 방문 체크해야 하는 노드들을 잘못 생각해서 계속 오답처리가 나더라구요 스터디원님의 풀이 보고 감을 잡아서 다시 풀었습니다! 이전에 풀었던 bfs와 다르게 지나친 모든 노드를 방문 처리 하는게 아니라 끝에 다다른 노드만 방문 처리를 해서 최단 거리를 찾을 수 있었습니다 1. 출발점과 목표점의 좌표를 저장합니다. 2. 시작점을 방문 처리하고 큐에 넣어줍니다. 3. 큐에서 꺼낸 지점부터 상하좌우로 돌면서 한 뱡향으로 갈 수 있는 만큼 끝까지 갈 것 4. 도착한 끝지점을 방문하지 않은 상태면 cnt+1하고 큐에 넣어줌 (지나가는 모든 노드를 방문처리 하면 안됨!! 왜냐하면 지나갔던 노드들을 다시 지나가야 하는 경우가 존재, 하지만 이미 한 .. 2024. 1. 3.
[프로그래머스] 과제 진행하기 JS 문제링크 풀이 방법 1. 시간은 모두 분(숫자)으로 변환, 과제를 시작 시간 기준으로 오름차순 정렬합니다 2. 과제 큐에서 새로운 과제를 하나 꺼냅니다 3. 새로운 과제 시작 시간이 되지 않고, 임시 저장된 과제가 있으면 4. 앞으로 할 과제의 시작 시간 전까지 임시 저장 과제들을 꺼내서 진행합니다 5. 현재 과제가 계획된 마지막 과제라면 끝까지 마무리합니다 6. 다음 과제가 있다면 다음 과제 시작 시간과 과제 종료 시간을 비교하여 완료 배열 또는 임시 과제 스택에 넣어줍니다 7. 계획된 과제를 모두 진행할 때까지 반복합니다 8. 계획된 과제가 끝나면 스택에서 pop되는 순서대로 과제가 진행됩니다 function timeToNumber(time) { const [hours, minutes] = time... 2024. 1. 3.