반응형

알고리즘(Algorithm)/프로그래머스(Programmers) 57

[프로그래머스] 모의고사 - JAVA

프로그래머스 모의고사 - JAVA 문제 설명 수포자 삼인방은 모의고사에서 수학 문제를 전부 찍으려 한다. 1번 문제부터 마지막 문제까지의 정답이 순서대로 들은 배열 answers가 주어진다. 가장 많은 문제를 맞힌 사람이 누구인지 배열에 담아 retrun. 제한 조건 시험은 최대 10,000 문제로 구성되어있습니다. 문제의 정답은 1, 2, 3, 4, 5중 하나입니다. 가장 높은 점수를 받은 사람이 여럿일 경우, return하는 값을 오름차순 정렬해주세요. 문제 풀이 수포자 삼인방이 찍는 방식의 반복되는 패천을 찾아 저장. 수포자 별로 answers에서 몇개의 정답을 맞힌지 저장. 가장 많이 맞힌 점수를 찾음. 가장 많은 문제를 맞힌 사람이 누구인지 리스트에 저장 배열에 담아 return 소스 코드 im..

[프로그래머스] 소수 만들기 - JAVA

프로그래머스 소수 만들기 - JAVA 문제 설명 숫자들이 들어있는 배열 nums가 매개변수로 주어짐. nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 소수가 되는 경우의 개수를 return. 제한사항 nums에 들어있는 숫자의 개수는 3개 이상 50개 이하입니다. nums의 각 원소는 1 이상 1,000 이하의 자연수이며, 중복된 숫자가 들어있지 않습니다. 문제 풀이 에라스토테네스의 체를 사용하여 3000까지 숫자의 소수 유무를 저장. dfs탐색을 사용하여 3개의 수의 모든 조합을 탐색. 조합의 숫자를 더했을 떄 소수가 되는 걍우 answer를 1증가. 소스코드 import java.util.*; class Solution { public int answer = 0; public boolea..

[프로그래머스] 없는 숫자 더하기 - JAVA

프로그래머스 없는 숫자 더하기 - JAVA 문제 설명 0부터 9까지의 숫자 중 일부가 들어있는 배열 numbers가 매개변수로 주어짐. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 retrun. 제한 사항 1 ≤ numbers의 길이 ≤ 9 0 ≤ numbers의 모든 수 ≤ 9 numbers의 모든 수는 서로 다릅니다. 문제 풀이 0부터 9까지 모두 더한 수인 45에서 numbers에 존재하는 숫자를 빼면 존재하지 않는 수를 모두 더한 값과 동일. 소스 코드 class Solution { public int solution(int[] numbers) { int answer = 45; for (int n : numbers) { answer -= n; } return ans..

[프로그래머스] 수박수박수박수박수박수? - JAVA

프로그래머스 수박수박수박수박수박수? - JAVA 문제 설명 길이가 n이고, &#39;수박수박수박수...&#39;와 같은 패턴을 유지하는 문자열을 리턴. 제한 조건 n은 길이 10,000이하인 자연수. 소스 코드 class Solution { public String solution(int n) { StringBuilder answer = new StringBuilder(); for (int i = 0; i < n; i++) { answer.append(i % 2 == 0 ? "수" : "박"); } return answer.toString(); } }

[프로그래머스] 숫자 문자열과 영단어 - JAVA

프로그래머스 숫자 문자열과 영단어 - JAVA 문제 설명 일부 자릿수를 영단어로 바꾼 카드를 건네주면 원래 숫자를 찾는다. 일부 자릿수가 영단어로 바뀌어졌거나, 그대로인 문자열 s가 주어짐. 제한 사항 1 ≤ s의 길이 ≤ 50 s가 "zero" 또는 "0"으로 시작하는 경우는 주어지지 않습니다. return 값이 1 이상 2,000,000,000 이하의 정수가 되는 올바른 입력만 s로 주어집니다. 문제 풀이 치환할 숫자에 대응하는 영단어 배열을 생성. 문자열에서 존재하는 영단어를 replace() 함수를 사용하여 숫자 문자열로 치환. 숫자로만 이루어진 문자열을 정수로 변경하여 리턴. class Solution { public int solution(String s) { String[] numbers =..

[프로그래머스] 문자열 다루기 기본 - JAVA

프로그래머스 문자열 다루기 기본 - JAVA 문제 설명 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성되어있는지 확인. 1의 조건 성립 시 True, 성립하지 않을 시 False를 리턴. 제한 사항 s는 길이 1 이상, 길이 8이하 문자열. 소스 코드 class Solution { public boolean solution(String s) { if (s.length() != 4 && s.length() != 6) { return false; } for (char c : s.toCharArray()) { if (!Character.isDigit(c)) { return false; } } return true; } }

반응형