์ฝ”๋”ฉํ…Œ์ŠคํŠธ/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

Day 22. ์ฝ”๋”ฉ ๊ธฐ์ดˆ ํŠธ๋ ˆ์ด๋‹(Java)

KASSIA 2024. 3. 1. 23:21

1. 0 ๋–ผ๊ธฐ

https://school.programmers.co.kr/learn/courses/30/lessons/181847

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

โ–ผ ๋ฐฉ๋ฒ• 1

class Solution {
    public String solution(String n_str) {
        String answer = "";
        
        answer = String.valueOf(Integer.parseInt(n_str));
        
        return answer;
    }
}

 

โ–ผ ๋ฐฉ๋ฒ• 2

class Solution {
    public String solution(String n_str) {
        String answer = "";
        
        answer += Integer.parseInt(n_str);
        
        return answer;
    }
}

 

2. ๋‘ ์ˆ˜์˜ ํ•ฉ

https://school.programmers.co.kr/learn/courses/30/lessons/181846

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

import java.math.BigInteger;

class Solution {
    public String solution(String a, String b) {
        String answer = "";
        BigInteger numA = new BigInteger(a);
        BigInteger numB = new BigInteger(b);
        
        answer = numA.add(numB).toString();
        
        return answer;
    }
}
BigInteger๋Š” ๋ฌธ์ž์—ด ํ˜•ํƒœ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์–ด ์ˆซ์ž์˜ ๋ฒ”์œ„๊ฐ€ ๋ฌดํ•œํ•˜๊ธฐ์— ์–ด๋– ํ•œ ์ˆซ์ž์ด๋“ ์ง€ ๋‹ด์„ ์ˆ˜ ์žˆ๋‹ค. ํŠน์ดํ•œ ์ ์€ BigInteger๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ฌธ์ž์—ด์„ ์ธ์ž ๊ฐ’์œผ๋กœ ๋„˜๊ฒจ์ฃผ์–ด์•ผ ํ•œ๋‹ค. BigInteger๊ฐ€ ๋ฌธ์ž์—ด๋กœ ๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. BigInteger๋Š” ๋ฌธ์ž์—ด์ด๊ธฐ์— ์‚ฌ์น™์—ฐ์‚ฐ์ด ์•ˆ๋œ๋‹ค. ๊ทธ๋ ‡๊ธฐ์— BigIntger ๋‚ด๋ถ€์˜ ์ˆซ์ž๋ฅผ ๊ณ„์‚ฐํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” BigIntger ํด๋ž˜์Šค ๋‚ด๋ถ€์— ์žˆ๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค.

 

3. ๋ฌธ์ž์—ด๋กœ ๋ณ€ํ™˜

https://school.programmers.co.kr/learn/courses/30/lessons/181845

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

โ–ผ ๋ฐฉ๋ฒ• 1

class Solution {
    public String solution(int n) {
        String answer = "";
        
        answer = String.valueOf(n);
        
        return answer;
    }
}

 

โ–ผ ๋ฐฉ๋ฒ• 2

class Solution {
    public String solution(int n) {
        String answer = "";
        
        answer += n;
        
        return answer;
    }
}

 

โ–ผ ๋ฐฉ๋ฒ• 3

class Solution {
    public String solution(int n) {
        String answer = "";
        
        answer = Integer.toString(n);
        
        return answer;
    }
}

 

4. ๋ฐฐ์—ด์˜ ์›์†Œ ์‚ญ์ œํ•˜๊ธฐ

https://school.programmers.co.kr/learn/courses/30/lessons/181844

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

โ–ผ ๋ฐฉ๋ฒ• 1

import java.util.List;
import java.util.ArrayList;

class Solution {
    public int[] solution(int[] arr, int[] delete_list) {
        int[] answer = {};
        List<Integer> answerList = new ArrayList<>();
        
        for(int num : arr) {
            boolean isDeleted = false;
            
            for(int deleteNum : delete_list) {
                if(num == deleteNum) {
                    isDeleted = true;
                    
                    break;
                }
            }
            
            if(!isDeleted) {
                answerList.add(num);
            }
        }
        
        answer = answerList.stream().mapToInt(i -> i).toArray();
        
        return answer;
    }
}

 

โ–ผ ๋ฐฉ๋ฒ• 2

import java.util.List;
import java.util.ArrayList;

class Solution {
    public int[] solution(int[] arr, int[] delete_list) {
        int[] answer = {};
        List<Integer> answerList = new ArrayList<>();
        
        for(int n : arr) {
            answerList.add(n);
        }
        
        for(int n : delete_list) {
            answerList.remove(Integer.valueOf(n));
        }
        
        answer = answerList.stream().mapToInt(i -> i).toArray();
        
        return answer;
    }
}

 

โ–ผ ๋ฐฉ๋ฒ• 3

import java.util.List;
import java.util.ArrayList;

class Solution {
    public int[] solution(int[] arr, int[] delete_list) {
        int[] answer = {};
        List<Integer> answerList = new ArrayList<>();
        
        for(int n : arr) {
            answerList.add(n);
        }
        
        for(int n : delete_list) {
            answerList.remove((Integer) n);
        }
        
        answer = answerList.stream().mapToInt(i -> i).toArray();
        
        return answer;
    }
}
ArrayList.remove(int index) : index ๋ฒˆ์งธ ๊ฐ’์ด ์‚ญ์ œ๋œ๋‹ค.
ArrayList.remove(Object o) : ArrayList์—์„œ ํ•ด๋‹น ๊ฐ์ฒด๋ฅผ ์ฐพ์•„์„œ ์ฒซ๋ฒˆ์งธ๋กœ ๋‚˜์˜ค๋Š” ๊ฐ’๋งŒ ์‚ญ์ œํ•œ๋‹ค.

 

โ–ผ ๋ฐฉ๋ฒ• 4

import java.util.stream.IntStream;

class Solution {
    public int[] solution(int[] arr, int[] delete_list) {
        int[] answer = {};
        
        answer = IntStream.of(arr).filter(i -> !IntStream.of(delete_list).anyMatch(n -> n == i)).toArray();
        
        return answer;
    }
}

 

5. ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์ธ์ง€ ํ™•์ธํ•˜๊ธฐ

https://school.programmers.co.kr/learn/courses/30/lessons/181843

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

class Solution {
    public int solution(String my_string, String target) {
        int answer = 0;
        
        answer = my_string.contains(target) ? 1 : 0;
        
        return answer;
    }
}