- 입출력 예
spell | dic | result |
["p", "o", "s"] | ["sod", "eocd", "qixm", "adio", "soo"] | 2 |
["z", "d", "x"] | ["def", "dww", "dzx", "loveaw"] | 1 |
["s", "o", "m", "d"] | ["moos", "dzx", "smm", "sunmmo", "som"] | 2 |
- 입출력 예 설명
1. 입출력 예 #1
"p", "o", "s" 를 조합해 만들 수 있는 단어가 dic에 존재하지 않습니다. 따라서 2를 return합니다.
2. 입출력 예 #2
"z", "d", "x" 를 조합해 만들 수 있는 단어 "dzx"가 dic에 존재합니다. 따라서 1을 return합니다.
3. 입출력 예 #3
"s", "o", "m", "d" 를 조합해 만들 수 있는 단어가 dic에 존재하지 않습니다. 따라서 2을 return합니다.
- 유의사항
입출력 예 #3 에서 "moos", "smm", "som"도 "s", "o", "m", "d" 를 조합해 만들 수 있지만 spell의 원소를 모두 사용해야 하기 때문에 정답이 아닙니다.
- 내 풀이
class Solution {
public int solution(String[] spell, String[] dic) {
int answer = 2;
// spell로 이루어진 글자가 있는지 확인하기 위한 변수
int count = 0;
// dic의 매개변수 만큼 반복을 시키면서 첫번째 배열 안에 spell이 포함되어 있는지 확인
for (int i = 0; i < dic.length; i++) {
for (int j = 0; j < spell.length; j++) {
// 일치하는 spell 이 있을때 마다 증가
if (dic[i].contains(spell[j])) {
count++;
}
// dic[i] 한 배열에 spell 개수와 count 값이 같으면 있는것으로 break로 나감
if(count == spell.length){
answer = 1;
break;
}
}
count = 0;
}
return answer;
}
}
코드가 깔끔하진 않지만 간단하게 끝났다.
- 다른 사람 풀이
class Solution {
public int solution(String[] spell, String[] dic) {
for(int i=0;i<dic.length;i++){
int answer = 0;
for(int j=0;j<spell.length;j++){
if(dic[i].contains(spell[j])) answer ++;
}
if(answer==spell.length) return 1;
}
return 2;
}
}
'프로그래머스 > [프로그래머스 - JAVA] Lv.0' 카테고리의 다른 글
[프로그래머스 - JAVA] 종이 자르기 (0) | 2023.03.15 |
---|---|
[프로그래머스 - JAVA] 캐릭터의 좌표 (0) | 2023.03.15 |
[프로그래머스 - JAVA] 삼각형의 완성조건 (2) (0) | 2023.03.15 |
[프로그래머스 - JAVA] 구술을 나누는 경우의 수 (0) | 2023.03.14 |
[프로그래머스 - JAVA] 문자열 계산하기 (0) | 2023.03.14 |
댓글