코딩테스트 63

[JAVA] 프로그래머스 알고리즘 문제풀이 - Level 1 (1~6번 문제풀이) / Level 0 (224/224)

1. 폰켓몬 import java.util.*; class Solution { public int solution(int[] nums) { int answer = 0; Map map = new HashMap(); int max = nums.length/2; for(int num : nums){ map.put(num, map.getOrDefault(num, 0) + 1); } int result = map.size(); answer = Math.min(max, result); return answer; } } HashMap형식의 map을 만든 뒤 대입해 줬다. 최대수는 nums길이의 절반이니 nums.length/2를 해줬고 foreach문을 사용해서 nums에서 나온 값에 1씩 증가해 줬다. 그 뒤 re..

[JAVA] 프로그래머스 알고리즘 문제풀이 - Level 0 (178~187번 문제풀이)

178. 접두사인지 확인하기 class Solution { public int solution(String my_string, String is_prefix) { if(my_string.startsWith(is_prefix)){ return 1; } else{ return 0; } } } startsWith() 함수를 사용했다. startsWith() 함수는 문자열이 특정 문자열이나 접두사로 시작하는지 체크해 주는 함수이다. if에 넣어서 참이면 1을 반환하고 참이 아니라면 0을 반환해 줬다. 179. 문자열의 앞의 n글자 class Solution { public String solution(String my_string, int n) { String answer = ""; for(int i=0; i

[JAVA] 프로그래머스 알고리즘 문제풀이 - Level 0 (170~177번 문제풀이)

170. 가까운 1 찾기 class Solution { public int solution(int[] arr, int idx) { int answer = -1; for(int i=idx; i=end_num; i--){ answer[idx++] = start--; } return answer; } } 간단한 문제다. answer의 0번째부터 start값부터 1씩 뺀 값을 차례로 넣어주고 반환하면 된다. 172. 글자 지우기 class Solution { public String solution(String my_string, int[] indices) { String answer = ""; StringBuilder my_string2 = new StringBuilder(my_string); for (int..

[JAVA] 프로그래머스 알고리즘 문제풀이 - Level 0 (150~161번 문제풀이)

150. 원하는 문자열 찾기 class Solution { public int solution(String myString, String pat) { int answer = 0; if(myString.toLowerCase().contains(pat.toLowerCase())){ answer = 1; } return answer; } } myString과 pat을 모두 toLowerCase()를 사용해서 소문자로 변경했다. 그 뒤에 contains을 사용해서 포함되는지 체크하고 포함된다면 answer에 1을 대입했다. 만약 포함되지 않는다면 0이 담긴 상태에서 반환될 것이다. 151. 길이에 따른 연산 class Solution { public int solution(int[] num_list) { int..

프로필사진

남건욱's 공부기록

반응형