본문 바로가기

Algorithm278

[JAVA] 프로그래머스 LEVEL3 GPS https://school.programmers.co.kr/learn/courses/30/lessons/1837 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr코딩테스트 연습 > 2017 카카오코드 본선 > GPS 난이도: LEVEL3알고리즘 유형: DP(Dynamic Programming) 문제 풀이 DP로 풀지 않고 그래프 탐색을 사용해서 풀면 시간 초과가 발생한다. 경우의 수가 너무 많다.  먼저 2차원 그래프를 만든다.int [][] map = new int [n+1][n+1]; for(int i = 1; i 불가능한 경로를 기록하기 위해 .. 2024. 10. 19.
[JAVA] 프로그래머스 LEVEL2 유사 칸토어 비트열 https://school.programmers.co.kr/learn/courses/30/lessons/148652 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr코딩테스트 연습 > 연습문제 > 유사 칸토어 비트열 난이도: LEVEL2알고리즘 유형: 구현문제 풀이 n번째 유사 칸토어 비트열은 n-1번째 비트열에서 1은 11011로 치환  0은 00000 치환하여 만든다. 0 번째 유사 칸토어 비트열은 "1" 고정이다. 그럼 n번째 유사 칸토어 비트열 길이는 5^n이다.  매번 1을 11011 0을 00000으로 치환해서 직접 유사 칸토어 비트열 문자열을 만들고.. 2024. 10. 18.
[JAVA] 프로그래머스 LEVEL2 행렬의 곱셈 https://school.programmers.co.kr/learn/courses/30/lessons/12949 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr코딩테스트 연습 > 연습문제 > 행렬의 곱셈 난이도: LEVEL2알고리즘 유형: 구현 (수학: 행렬의 곱셈) 문제 풀이이번 문제는 행렬의 곱셈을 접하지 않았다면 풀 수 없는 문제였다.나 또한 예제에 나온 숫자로 행렬의 곱셈을 추정하면서 푸려고 했으나 포기하고 행렬의 곱셈 공식을 구글링하여 풀었다. arr1 행 길이는 2 arr1 열 길이는 3arr2 행 길이는 3 arr2 열 길이는 2  arr1 열 .. 2024. 10. 17.
[JAVA] 프로그래머스 LEVEL2 행렬 테두리 회전하기 https://school.programmers.co.kr/learn/courses/30/lessons/77485 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr코딩테스트 연습 > 2021 Dev-Matching: 웹 백엔드 개발자(상반기) > 행렬 테두리 회전하기 난이도: LEVEL2알고리즘 유형: 구현풀이 설명 로직은 간단하다.시계 방향으로 값을 큐에 넣고 큐에 넣기 시작한 시작 좌표로 돌아오면 끝난다. 이제 큐에서 꺼내서 값을 회전 시키는데 기존 시작 좌표 보다 이동 가능한 1템포 빠른 좌표에서 시작한다. 시작 좌표 보다 1칸 오른쪽이 아니라 왜 1템포가.. 2024. 10. 16.
[JAVA] 프로그래머스 LEVEL2 문자열 압축 https://school.programmers.co.kr/learn/courses/30/lessons/60057 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr코딩테스트 연습 > 2020 KAKAO BLIND RECRUITMENT > 문자열 압축 난이도: LEVEL2알고리즘 유형: 구현풀이 설명 나는 스택을 활용해서 문제를 풀었다. Element class static class Element{ int value; String str; public String toString(){ return value + " " + str; .. 2024. 10. 16.
[JAVA] 프로그래머스 LEVEL2 2개 이하로 다른 비트 https://school.programmers.co.kr/learn/courses/30/lessons/77885 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr코딩테스트 연습 > 월간 코드 챌린지 시즌2 > 2개 이하로 다른 비트 난이도: LEVEL2알고리즘 유형: 구현 문제 풀이 처음에는 1씩 증가시켜서 비트 차이가 1~2 차이 나는 숫자를 구할려고 했었다. 하지만 해당 풀이는 테스트케이스 10,11에서 시간 초과가 발생한다. 아마 비트 차이가 1~2인 숫자가 기존 숫자보다 훨씬 커서 시간 초과가 발생하는듯하다. ex) 10111111111111111111.. 2024. 10. 16.