코린이의 소소한 공부노트

[LeetCode/Easy] 383. Ransom Note 본문

코딩테스트 풀이/JAVA

[LeetCode/Easy] 383. Ransom Note

무지맘 2023. 2. 14. 19:30

1. Input

1) String ransomNote

2) String magazine

 

2. Output

1) magazine에 있는 알파벳들로 ransomNote를 만들 수 있다면 true, 만들 수 없다면 false를 반환

 

3. Constraint

1) 1 <= ransomNote.length, magazine.length <= 10^5

2) ransomNotemagazine은 영어 소문자로만 이루어져 있다.

 

4. Example

Input: ransomNote = "aa", magazine = "ab" -> Output: false

Input: ransomNote = "aa", magazine = "aab" -> Output: true

 

5. Code

1) 첫 코드(2023/02/14)

boolean answer = true;
int[] alphabets = new int[26];

for(int i=0 ; i<magazine.length() ; i++)
    alphabets[magazine.charAt(i)-97]++;
    
for(int i=0 ; i<ransomNote.length() ; i++)
    alphabets[ransomNote.charAt(i)-97]--;
    
for(int i=0 ; i<26 ; i++){
    if(alphabets[i]<0){
        answer = false; break;
    }
}

return answer;