전체 글 205

[프로그래머스] 실패율 for JAVA

https://programmers.co.kr/learn/courses/30/lessons/42889 코딩테스트 연습 - 실패율 실패율 슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스 programmers.co.kr 내가 푼 방법 어떻게 풀었냐면...그냥 fail[] 배열을 만들어서 실패율을 넣고 배열의 뒤부터 큰걸 훑어서 제일 큰 수의 index를 answer[] 배열에 넣었다. 뒤부터 훑은 이유는 겹치는 수가 있으면 작은수부터 넣어야하니까..~~ 그리고 index 넣은 수는 -2로 바꿔줬다. 진짜 몇시간동안 봤다. 어찌저찌 해서 냈더니 정답률 70이라 어이없어서ㅜㅠ 포기..

[프로그래머스] 폰켓몬 for JAVA

https://programmers.co.kr/learn/courses/30/lessons/1845 코딩테스트 연습 - 폰켓몬 당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다. programmers.co.kr 내가 푼 방법 nums 배열 속 숫자의 중복을 제거하여 폰켓몬이 몇 종류가 있는지 파악한다. 가질 수 있는 폰켓몬 수 = nums.length / 2 폰켓몬 종류 > 가질 수 있는 수 -> return 가질 수 있는 폰켓몬 수 폰켓몬 종류 return 폰켓몬의 종류 코드 import java.util.ArrayList; class Solution { publi..

[프로그래머스] K번째수 for JAVA

https://programmers.co.kr/learn/courses/30/lessons/42748 코딩테스트 연습 - K번째수 [1, 5, 2, 6, 3, 7, 4] [[2, 5, 3], [4, 4, 1], [1, 7, 3]] [5, 6, 3] programmers.co.kr 내가 푼 방법 그냥 문제를 정리하고 풀라는대로 풀었다. for문으로 2차원 배열인 commands의 0~n번째 행을 읽고...했다. 코드 import java.util.ArrayList; import java.util.Collections; class Solution { public int[] solution(int[] array, int[][] commands) { int[] answer = new int[commands.le..

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

https://programmers.co.kr/learn/courses/30/lessons/12977 코딩테스트 연습 - 소수 만들기 주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 합니다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 programmers.co.kr 내가 푼 방법 내가 풀려고 시도한 방법은 우선 배열에서 3개의 수를 3중 for문으로 더하고 그 수가 2부터 자기 자신 전까지의 수 중에서 나누어지는게 있는지 찾는다. 3중 for문을 사용해서 시간 복잡도가 엉망인 코드이다. 코드 class Solution { public int solution(int[] nums) { int answer =..

[프로그래머스] 내적 for JAVA

https://programmers.co.kr/learn/courses/30/lessons/70128 코딩테스트 연습 - 내적 길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요. 이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 programmers.co.kr 내가 푼 방법 문제 그대로 풀었다. 코드 class Solution { public int solution(int[] a, int[] b) { int answer = 0; for(int i = 0; i < a.length; i++) answer += (a[i] * b[i]); r..

[프로그래머스] 음양 더하기 for JAVA

https://programmers.co.kr/learn/courses/30/lessons/76501 코딩테스트 연습 - 음양 더하기 어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 re programmers.co.kr 내가 푼 방법 그냥.... i = 0 ~ 배열의 길이 로 for문 돌리고 signs[i] = true면 +absolutes[i], 아니면 -absolutes[i] 코드 class Solution { public int solution(int[] absolutes, boolean[] signs) { int answer = 0; for(int..

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

https://programmers.co.kr/learn/courses/30/lessons/86051?language=java 코딩테스트 연습 - 없는 숫자 더하기 0부터 9까지의 숫자 중 일부가 들어있는 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. 제한 programmers.co.kr 내가 푼 방법 구하는게 없는 숫자의 합이므로 1~9까지 더한 45에서 numbers를 모두 더한 값을 뺐다. class Solution { public int solution(int[] numbers) { int answer = 0; for(int i : numbers) answer += ..

[프로그래머스] 크레인 인형뽑기 게임 for JAVA

https://programmers.co.kr/learn/courses/30/lessons/64061 코딩테스트 연습 - 크레인 인형뽑기 게임 [[0,0,0,0,0],[0,0,1,0,3],[0,2,5,0,1],[4,2,4,4,2],[3,5,1,3,1]] [1,5,3,5,1,2,1,4] 4 programmers.co.kr 내가 푼 코드 결론부터 말하자면 테스트케이스 1,2에서 실패했다. 참내..... 질문하기 들어가서 사람들이 말해준 테스트케이스를 다 해봤는데도 왜 안되는지 모르겠음ㅋ 틀린 코드 import java.util.ArrayList; class Solution { public int solution(int[][] board, int[] moves) { int answer = 0; ArrayLis..

[프로그래머스] 키패드 누르기 for JAVA

https://programmers.co.kr/learn/courses/30/lessons/67256 코딩테스트 연습 - 키패드 누르기 [1, 3, 4, 5, 8, 2, 1, 4, 5, 9, 5] "right" "LRLLLRLLRRL" [7, 0, 8, 2, 8, 3, 1, 5, 7, 6, 2] "left" "LRLLRRLLLRR" [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] "right" "LLRLLRLLRL" programmers.co.kr 내가 푼 방법 우선 1 4 7 나오면 무조건 L, 3 6 9 나오면 무조건 R인건 자명하다. 그리고 2 5 8 0 에서 가까운걸 찾아야하니까 마지막에 누른 L과 R을 따로 저장해놓는다. 2 5 8 0 얘네가 것참 어려웠는데.. 2차원 배열을 써야하나 싶..

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

https://programmers.co.kr/learn/courses/30/lessons/81301 코딩테스트 연습 - 숫자 문자열과 영단어 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자 programmers.co.kr 내가 푼 방법 나는 글자수별로 나눠서 풀었다. 이런식으로 하나씩 읽어가며 3글자가 되었을 때 저중에 있는지 확인, 4글자 되면 저중에 확인, 5글자 확인해서 치환하기! class Solution { public int solution(String s) { int answer = 0; String alpha=""; String sub = s; // s에..