java 문자열 9

문자열 계산하기_programmers_lev00

my_string은 "3 + 5"처럼 문자열로 된 수식입니다. 문자열 my_string이 매개변수로 주어질 때, 수식을 계산한 값을 return 하는 solution 함수를 완성해주세요. 이번 풀이는 3가지 다른 방법을 사용해가면서 문제를 풀어봤었습니다. 그중 switch문으로 푼 답은 정답은 맞지만 런타임 오류가 났었습니다. 아직도 여러 예제로 돌려봐도 오류 없이 잘 출력이 되었는데.. 왜 체점할때 실패로 뜨는지는 모르겠으나, 나머지 하나도 마찬가지로 오류로 떴습니다. 결론은 프로그래머스에서 원하는 방식으로 문제를 풀지 않으면 오류가 나는 것 같습니다!! class Solution { public int solution(String my_string) { String[] s = my_string.spl..

7의 개수_programmers_lev00

머쓱이는 행운의 숫자 7을 가장 좋아합니다. 정수 배열 array가 매개변수로 주어질 때, 7이 총 몇 개 있는지 return 하도록 solution 함수를 완성해보세요. 이번 문제는 간단하게 코딩하였습니다. int형의 배열을 하나하나 쪼개어 String 배열로 담은 후, 7의 문자와 같다면 answer++을 해주었습니다. class Solution { public int solution(int[] array) { int answer = 0; String str =""; for (int i = 0; i < array.length; i++) { str+=array[i]; } String[] strArr = str.split(""); for (int i = 0; i < strArr.length; i++) {..

중복된 문자 제거_programmers_lev00

문자열 my_string이 매개변수로 주어집니다. my_string에서 중복된 문자를 제거하고 하나의 문자만 남긴 문자열을 return 하도록 solution 함수를 완성해주세요. *my_string은 대문자, 소문자, 공백으로 구성되어 있습니다. *대문자와 소문자를 구분합니다. *공백(" ")도 하나의 문자로 구분합니다. *중복된 문자 중 가장 앞에 있는 문자를 남깁니다. 처음에는 중복을 허용하지 않는 Set을 쓰려고 하다가 char [] 배열에 담아서 contains 메서드를 활용하였습니다. char 배열에 담을 때 확인해서 정답을 담을 answer가 String이기 때문에 String.valueOf를 활용하여 하나씩 확인해 주었습니다. 동일하게 indexOf도 활용해보면 좋을 것 같아서 아래 다른 ..

암호 해독_programmers_lev00

군 전략가 머쓱이는 전쟁 중 적군이 다음과 같은 암호 체계를 사용한다는 것을 알아냈습니다. 암호화된 문자열 cipher를 주고받습니다. 그 문자열에서 code의 배수 번째 글자만 진짜 암호입니다. 문자열 cipher와 정수 code가 매개변수로 주어질 때 해독된 암호 문자열을 return하도록 solution 함수를 완성해주세요. 처음에 배열을 초기화 할때 String[] arr = new String [ cipher.length ];로 초기화를 하면 에러가 나는 부분을 String[] arr = chipher.split으로 변경하여 코딩하였습니다. 그 후 code를 증감식에서 i와 곱하기 하고 싶었으나, 불가하여, i에 code만큼을 더해주면서 증감식을 진행하였습니다. class Solution { p..

문자열 정렬하기 (1)_programmers_lev00

문자열 my_string이 매개변수로 주어질 때, my_string 안에 있는 숫자만 골라 오름차순 정렬한 리스트를 return 하도록 solution 함수를 작성해보세요. 우선 간단하게 replaceAll 을 통해서 영문을 전부 제거를 하였습니다. String인 문자열을 Int형으로 변경을 해야하기 때문에 for문과 Integer.parseInt를 활용하였습니다. 출력시, Arrays.sort를 통하여 정렬된 숫자가 출력되도록 코딩하였습니다. import java.util.Arrays; class Solution { public int[] solution(String my_string) { String replace = ""; replace = my_string.toLowerCase().replaceA..

숨어있는 숫자의 덧셈 (1)_programmers_lev00

문자열 my_string이 매개변수로 주어집니다. my_string안의 모든 자연수들의 합을 return하도록 solution 함수를 완성해주세요. 처음에는 모든 my_string 값을 String 배열에 담은 후, int 형으로 변환을 할 때에 영문 소문자와 대문자는 숫자 9이상이 넘어가기 때문에 for문으로 1< n (char) i).filter(Character::isDigit).map(String::valueOf).mapToInt(Integer::valueOf).sum(); } } import java.util.regex.Pattern; import java.util.regex.Matcher; class Solution { public int solution(String my_string) { i..

배열의 유사도_programmers_lev00

두 배열이 얼마나 유사한지 확인해보려고 합니다. 문자열 배열 s1과 s2가 주어질 때 같은 원소의 개수를 return 하도록 solution 함수를 완성해주세요. 우선 배열의 비교는 equals를 활용하였으며, for문으로 각 요소를 돌며 비교한 값이 true가 될경우, answer의 값을 증가시켰습니다. class Solution { public int solution(String[] s1, String[] s2) { int answer = 0; for (int i = 0; i < s1.length; i++) { for (int j = 0; j < s2.length; j++) { if(s1[i].equals(s2[j])) { answer++; } } } return answer; } } import j..

편지_programmers_lev00

머쓱이는 할머니께 생신 축하 편지를 쓰려고 합니다. 할머니가 보시기 편하도록 글자 한 자 한 자를 가로 2cm 크기로 적으려고 하며, 편지를 가로로만 적을 때, 축하 문구 message를 적기 위해 필요한 편지지의 최소 가로길이를 return 하도록 solution 함수를 완성해주세요. 해당 코드는 간단학[ 매개변수로 받는 message의 길이를 희망하는 가로 크기로 곱하여 해당 값을 answer에 대입 후 return하였습니다. class Solution { public int solution(String message) { int answer = 0; answer += message.length()*2; return answer; } }

특정 문자 제거하기_programmers_lev00

문자열 my_string과 문자 letter이 매개변수로 주어집니다. my_string에서 letter를 제거한 문자열을 return하도록 solution 함수를 완성해주세요. 우선 제거할 알고리즘을 생각해봤을때 간단히 replace() 메소드를 생각해보았다. 문자를 제거하기 위해서는 "" 를 replace 한다고 작성하면 간단히 받는 매개변수를 제거할 수 있다. class Solution { public String solution(String my_string, String letter) { String answer = ""; answer = my_string.replace(letter,""); return answer; } } class Solution { public String solution(..