GitHub 자세히보기

Algorithm/Programmers 9

[Programmers] 124 나라의 숫자 for JAVA

문제 바로가기 코딩테스트 연습 - 124 나라의 숫자 programmers.co.kr 문제풀이 1. 처음 풀이 124로만 숫자를 나타낼 수 있다는 점에서 124나라는 3진수를 사용한다는 것을 알 수 있다. 다만, 3진수가 012가 아닌 124로 이루어져 있다. 구현 1. country 배열에 숫자 0, 1, 2, 4로 초기화한다. 2. n > 0 인 경우, 반복 2-1. n을 3으로 나눈 나머지가 0이면, 결과에 4를 붙이고 n은 3으로 나눈 후 1을 뺌 2-2. 나머지가 0이 아니면, 결과에 country 배열의 나머지번째를 붙이고 n은 3으로 나눔 3. 결과 출력 class Solution { public String solution(int n) { String answer = ""; int[] co..

[Programmers] 숫자 문자열과 영단어 for JAVA - Map vs String

문제 바로가기 코딩테스트 연습 - 숫자 문자열과 영단어 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자 programmers.co.kr 문제풀이 숫자와 영단어를 대응시켜야한다는 관점에서 저는 Map을 사용했습니다. 하지만 대부분의 문제후기를 보면 String의 replaceAll() 메소드를 사용하신 것을 확인할 수 있습니다. 두가지 풀이에 대해 살펴보겠습니다. 1. Map 적용 숫자의 일부 자릿수를 영단어로 바꾸는 문제이다. 숫자에 대응하는 영단어를 Map에 저장한다. 이를 사용하여 for문을 돌며 영단어를 숫자로 변환한다. 구현 1. 단어-영단어를 Map 에 초기화 ..

[프로그래머스] k진수에서 소수 개수 구하기 for JAVA

문제 바로가기 코딩테스트 연습 - k진수에서 소수 개수 구하기 문제 설명 양의 정수 n이 주어집니다. 이 숫자를 k진수로 바꿨을 때, 변환된 수 안에 아래 조건에 맞는 소수(Prime number)가 몇 개인지 알아보려 합니다. 0P0처럼 소수 양쪽에 0이 있는 경우 P0처럼 소 programmers.co.kr 구현 아이디어 입력받은 n을 k진수로 변환하는 과정이 필요 P가 조건에 해당하는지 확인(P 사이에 0이 있을 수 없음) 2-1. 0P0 2-2. P0 2-3. 0P 2-4. P P가 소수인지 확인 조건에 맞으면 answer를 1씩 증가 변수 sb : n을 k진수로 변환하는 과정에서 사용할 변수(StringBuilder) change : k진수로 변환된 문자열 값 tmp : 변환된 수 안의 P(lo..

[프로그래머스] 신고 결과 받기 for Java - HashMap 를 적용한 풀이

문제 바로가기 코딩테스트 연습 - 신고 결과 받기 문제 설명 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다. 각 유저는 한 번에 한 명의 programmers.co.kr 문제풀이 신고한 사람과 신고당한 사람을 담을 자료구조가 필요하다. 중복을 방지하기 위해 HashMap을 사용했다. 또한, 신고한 사람은 본인이 신고한 사람의 집합도 가지고 있어야하기 때문에 이를 저장하기 위해 Set 자료구조를 사용했다. 변수 - reporter : 입력받은 report 중 신고를 한 유저 - singo : 입력받은 report 중 신고를 당한 유저 - reporterArr : 신고한 사람을 저장하는 HashMap - key..

[프로그래머스] 쿼드압축 후 개수 세기 for JAVA 분할정복

문제설명 0과 1로 이루어진 2n x 2n 크기의 2차원 정수 배열 arr이 있습니다. 당신은 이 arr을 쿼드 트리와 같은 방식으로 압축하고자 합니다. 구체적인 방식은 다음과 같습니다. 당신이 압축하고자 하는 특정 영역을 S라고 정의합니다. 만약 S 내부에 있는 모든 수가 같은 값이라면, S를 해당 수 하나로 압축시킵니다. 그렇지 않다면, S를 정확히 4개의 균일한 정사각형 영역(입출력 예를 참고해주시기 바랍니다.)으로 쪼갠 뒤, 각 정사각형 영역에 대해 같은 방식의 압축을 시도합니다. arr이 매개변수로 주어집니다. 위와 같은 방식으로 arr을 압축했을 때, 배열에 최종적으로 남는 0의 개수와 1의 개수를 배열에 담아서 return 하도록 solution 함수를 완성해주세요. 제한사항 arr의 행의 ..

1 2