자바 알고리즘 문제

A로 B만들기

쿠키키키키 2024. 4. 25. 22:54

문자열 before와 after가 매개변수로 주어질 때, before의 순서를 바꾸어 after를 만들 수 있으면 1을, 만들 수 없으면 0을 return 하도록 solution 함수를 완성해보세요.

import java.util.ArrayList;
import java.util.List;
class Solution {
    public int solution(String before, String after) {
        int answer = 0;

        List<Character> b= new ArrayList<>();
        List<Character> a= new ArrayList<>();
        List<Character> c= new ArrayList<>();
        for (int i = 0; i <before.length() ; i++) {
            b.add(before.charAt(i));
            c.add(before.charAt(i));
            a.add(after.charAt(i));
        }
        for (int i = 0; i <b.size() ; i++) {
            if(a.contains(b.get(i))){

                a.remove(b.get(i));
                c.set(i,' ');
            }
        }
        System.out.print(c.size()+"!!!!!!!!");
        for(char c1 :c){
            if(c1==' '){
                answer++;
            }
        }
        if(answer==c.size()){
            answer=1;
        }else {
            answer=0;
        }


        return answer;
    }
}

 

리스트 형태로 이전 과 후를 만들어주고 

하나씩 그 형태가 있는지 비교 해주고 있다면 중복이 안되게 

하나씩 소거해 나가고 

따로 결과만 담을 c 리스트에 결과만 담아주었다.

결과의 증표로 빈값이 다 맞다면 answer 가 1이되고 

그렇지 않다면 0이된다.!!!

 

 

 

'자바 알고리즘 문제' 카테고리의 다른 글

리스트 자르기  (0) 2024.04.30
가까운 수  (0) 2024.04.28
모스부호 (1)  (0) 2024.04.25
수열과 구간 쿼리 1  (0) 2024.04.24
글자 지우기  (0) 2024.04.24