본문 바로가기

알고리즘/프로그래머스46

[프로그래머스 / 소수 만들기 / JAVA] https://school.programmers.co.kr/learn/courses/30/lessons/12977 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 Map은 중복을 거른다. 경우의 수 갯수를 구하기 때문에 합산된 수는 중복이 될 수 있다. 소수를 구하는 방식은 2부터 자신의 수-1까지 하나씩 나눠보면서 0으로 나눠지는 지 확인 import java.util.*; class Solution { public int solution(int[] nums) { int answer = 0; List list = new ArrayList(); .. 2023. 3. 21.
[프로그래머스 / [1차] 비밀지도 / JAVA] https://school.programmers.co.kr/learn/courses/30/lessons/17681 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 정해진 배열 안에 숫자들을 이진법으로 만들어야 되는데 정답률이 높은 거 보고 바꿔주는 메서드가 있을 거 같아서 찾아봤다. https://dpdpwl.tistory.com/92 [Java]자바 진수변환(10진수->2진수,8진수,16진수) 10진수를 2진수,8진수,16진수로 변환 할 때, Integer 클래스의 함수를 사용하면 쉽게 변환이 가능합니다. Integer 클래스의 toBinary.. 2023. 3. 20.
[프로그래머스 / [1차] 다트 게임 / JAVA] https://school.programmers.co.kr/learn/courses/30/lessons/17682 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 점수를 저장할 배열과 배열의 순서를 가르키는 count를 만들고 정해진 문자열에서 점수는 꼭 들어가는 문자라서 문자가 나올 때만 count를 증가시켜주었음 그 외엔 문자가 나올 수 있는 모든 경우를 다 계산 class Solution { public int solution(String dartResult) { int answer = 0; int[] score = {-1, -1, -1};.. 2023. 3. 19.
[프로그래머스 / 완주하지 못한 선수 / JAVA / 해시] https://school.programmers.co.kr/learn/courses/30/lessons/42576 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 첫 접근은 HashMap을 이용하면서 풀어나갔다. 그러나 Map은 중복을 거르기 때문에 동명이인 부분을 해결하려니 머리가 깨질 거 같더라 그래서 다 갈아엎고 그냥 String 배열 그 자체로 풀기로 하였다. String 배열로 하니 짧게 적고 해결했으나,이 방법으론 정확성 테스트는 통과했으나 효율성 테스트에선 시간 초과로 걸렸다. 정확성 테스트 O, 효율성 테스트 X class Solu.. 2023. 3. 17.
[프로그래머스 / 체육복 / JAVA / 탐욕법] https://school.programmers.co.kr/learn/courses/30/lessons/42862 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 학생들의 체육복 소유 여부를 확인하는 boolean 배열과 체육복 여벌을 갖는 boolean 배열을 기본적으로 사용해서 문제를 풀었다. 0번 인덱스로 시작하면 헷갈릴 거 같아서 크기가 1 더 큰 배열로 만들어주었음 두 배열 다 체육복을 갖고있으면 true, 없으면 false 체육복을 갖고 있는지 검사로 다 확인 후에 2번 부터 끝 번호 앞 까지 양 옆 친구들의 체육복 소유 여부, 자신의.. 2023. 3. 16.
[프로그래머스 / 실패율 / JAVA] https://school.programmers.co.kr/learn/courses/30/lessons/42889 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 Map에다가 해당 스테이지 번호 키에 실패율을 담아서 사용하였다. Map에는 keySet()으로 Map이 가지고 있는 key들을 출력 가능한 메소드가 있는데 해당 메소드로 실패율이 제일 높은 스테이지를 검사해서 해당 스테이지를 배열에 담고 return 문제를 풀다가 해당 스테이지 아무도 가지 못했을 때 실패율이 0 / 0이 나오는 경우가 있는데 내 지식선에선 이게 그냥 0으로만 생각되는.. 2023. 3. 15.