본문 바로가기

코딩테스트10

크기가 작은 부분 문자열 class Solution { public int solution(String t, String p) { int answer = 0; if(p.length() >= 1 && p.length() = num[i]){ answer = answer + 1; } } } return answer; } } 또 다시 답이 나왔어도 찜찜한 문제였다. 배열을 무조건 사용해야 하는가이다. 배열을 사용한다면 이러한 문제에서는 배열의 크기가 동적으로 변해야 하는데 없어도 되는 코드가 생김으로 코드가 복잡해지는 결과를 초래할 수 있다. class Solution { public int solution(String t, String p) { int pLength = p.length(); long pValue = Long.parse.. 2024. 4. 3.
행렬의 덧셈 class Solution { public int[][] solution(int[][] arr1, int[][] arr2) { int[][] answer = new int[arr1.length][arr1[0].length]; for(int i = 0; i < arr1.length; i++){ for(int j = 0; j < arr1[0].length; j++){ answer[i][j] = arr1[i][j] + arr2[i][j]; } } return answer; } } 이번엔 조금은 쉽게 풀렸다. answer 배열의 크기를 arr1과 동일하게 설정한다. 이중 for문을 사용하여 arr1과 arr2의 각 요소들을 같은 위치끼리 더한 결과를 answer 배열에 저장한다. 출처: 프로그래머스 코딩 테스트.. 2024. 4. 3.
문자열 내림차순으로 배치하기 class Solution { public String solution(String s) { String answer = ""; char[] ch = s.toCharArray(); char temp = 0; for(int i = 0; i < ch.length - 1; i++){ for(int j = i + 1; j < ch.length; j++){ if(ch[i] < ch[j]){ temp = ch[i]; ch[i] = ch[j]; ch[j] = temp; } } } for(int i = 0; i < ch.length; i++){ answer = answer + ch[i]; } return answer; } } 항상 풀린 문제여도 개운하지가 않다. 정말 간단한 문제인 것 같은데 어렵게만 푸는 것 같은 느.. 2024. 4. 3.
수박수박수박수박수 ~~~ 문제 이름이 좀 킹받는다. class Solution { public String solution(int n) { String answer = ""; String s = ""; for(int i = 0; i 2024. 4. 3.
나누어 떨어지는 숫자 배열 class Solution { public int[] solution(int[] arr, int divisor) { int[] answer = {}; int count = 0; for(int i = 0; i < arr.length; i++){ if(arr[i] % divisor == 0){ count++; answer = new int[count]; } } if(count == 0){ answer = new int[1]; answer[0] = -1; } count = 0; for(int i = 0; i < arr.length; i++){ if(arr[i] % divisor == 0){ answer[count] = arr[i]; count++; } } int temp = 0; for(int i = 0; i.. 2024. 4. 3.
두 정수 사이의 합 class Solution { public long solution(int a, int b) { long answer = 0; if(b >= a){ for(int i = a; i b){ for(int i = b; i 2024. 4. 3.