본문 바로가기

코딩테스트147

[Java] 프로그래머스_12943 : 콜라츠 추측 콜라츠 추측 : Level 1 https://school.programmers.co.kr/learn/courses/30/lessons/12943 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 class Solution { public int solution(int num) { int cnt = 0; long n = (long) num; if (n == 1) return 0; while (n != 1 && cnt != 500) { if (n % 2 == 0) { n /= 2; } else if (n % 2 != 0) { n = n * 3 + 1; } .. 2023. 11. 29.
[Java] 프로그래머스_43163 : 단어 변환 너비 우선 탐색(BFS) 단어 변환 - Level3 https://school.programmers.co.kr/learn/courses/30/lessons/43163 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 import java.util.*; class Solution { // 두 단어가 한 글자만 차이나는지 확인하는 함수 // 두 문자열을 문자 배열로 변환하여 각 위치에서의 문자를 비교하고, 차이가 1인 경우 true를 반환 private boolean isConvertable(String beginStr, String targetStr) {.. 2023. 11. 24.
[Java] 프로그래머스_43162 : 네트워크 깊이 우선 탐색(DFS) 네트워크 - Level3 https://school.programmers.co.kr/learn/courses/30/lessons/43162 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 import java.util.*; class Solution { private void visitAll(int computer, int[][] computers, boolean[] isVisited) { Stack s = new Stack(); s.push(computer); while (!s.isEmpty()) { int idx = s.p.. 2023. 11. 24.
[Java] 프로그래머스_43165 : 타겟 넘버 깊이 우선 탐색(DFS) 타겟 넘버 - Level2 https://school.programmers.co.kr/learn/courses/30/lessons/43165 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 import java.util.*; class Solution { private static class State { public final int idx; public final int acc; State(int idx, int acc) { this.idx = idx; this.acc = acc; } } public int solution.. 2023. 11. 23.
[Java] 프로그래머스_64064 : 불량 사용자 완전탐색 불량 사용자 - Level3 https://school.programmers.co.kr/learn/courses/30/lessons/64064 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이1 import java.util.*; class Solution { private void count(int idx, Set banned, String[][] bans, Set banSet) { if (idx == bans.length) { banSet.add(new HashSet(banned)); return; } for (String id : bans.. 2023. 11. 22.
[Java] 프로그래머스_42839 : 소수 찾기 완전탐색 소수 찾기 - Level2 https://school.programmers.co.kr/learn/courses/30/lessons/42839 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 재귀 정의 1. 상태 주어진 숫자들을 사용해서 숫자를 조합해 나가야 한다. 하나의 숫자를 계속해서 이어 붙여 나가야 하므로 상태에는 지금까지 만들어 놓은 숫자 comb, 사용할 수 있는 종이 조각들 numbers 로 2가지 변수가 포함된다. 2. 종료 조건 모든 경우를 확인해보아야 하므로 더 이상 숫자를 만들 수 없을 때(numbers가 비어있을 때) 재귀가 종.. 2023. 11. 21.