코딩테스트

프로그래머스 코딩테스트(공백으로 구분하기 2, 접미사 배열, 문자열 돌리기)

SOME코딩 2023. 5. 8. 11:55

<공백으로 구분하기 2>

문제 설명
단어가 공백 한 개 이상으로 구분되어 있는 문자열 my_string이 매개변수로 주어질 때, my_string에 나온 단어를 앞에서부터 순서대로 담은 문자열 배열을 return 하는 solution 함수를 작성해 주세요.

풀이

class Solution {
    public String[] solution(String my_string) {
        String[] str = my_string.split(" ");
int n = 0;
for(String i:str) {
if(!(i.equals(""))) {
n++;
}
}
String[] answer = new String[n];
int j=0;
for(String i:str) {
if(!(i.equals(""))) {
answer[j] = i;
j++;
}
}
        return answer;
    }
}

 

다른 사람 풀이

class Solution {
    public String[] solution(String my_string) {
        return my_string.trim().split("[ ]+");
    }
}

 

<접미사 배열>

문제 설명
어떤 문자열에 대해서 접미사는 특정 인덱스부터 시작하는 문자열을 의미합니다. 예를 들어, "banana"의 모든 접미사는 "banana", "anana", "nana", "ana", "na", "a"입니다.
문자열 my_string이 매개변수로 주어질 때, my_string의 모든 접미사를 사전순으로 정렬한 문자열 배열을 return 하는 solution 함수를 작성해 주세요.

 

풀이

import java.util.Arrays;
class Solution {
    public String[] solution(String my_string) {
        String[] answer = new String[my_string.length()];
        for(int i=0;i<answer.length;i++){
            answer[i] = my_string.substring(i);
        }
        Arrays.sort(answer);
        return answer;
    }
}

 

<문자열 돌리기>

문제 설명
문자열 str이 주어집니다.
문자열을 시계방향으로 90도 돌려서 아래 입출력 예와 같이 출력하는 코드를 작성해 보세요.

 

풀이

import java.util.Scanner;

public class Solution {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String a = sc.next();
        for(int i=0;i<a.length();i++){
            System.out.println(a.charAt(i));
        }
    }
}

 

다른 사람 풀이

import java.util.Scanner;

public class Solution {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String a = sc.next();
        for (char ch : a.toCharArray())
            System.out.println(ch);
    }
}