작성
·
167
0
function solution(need, plan) {
let answer = 'YES';
const queue = [];
for (s of plan) {
if (need.includes(s)) queue.push(s);
}
if (!queue.join('').includes(need)) answer = 'NO';
return answer;
}
const need = 'CBA';
const plan = 'CBDAGE';
console.log(solution(need, plan));
이런식으로 풀이해 보았는데 혹시 예외에 걸릴만한 사항이 있을까요...?
답변 1
0
안녕하세요^^
잘 하신 코드입니다.
다만 제가 문제를 만들 때 의도는 아래 입력설명 처럼
▣ 입력설명
첫 줄에 한 줄에 필수과목의 순서가 주어집니다. 모든 과목은 영문 대문자입니다.
두 번 째 줄부터 현수가 짠 수업설계가 주어집니다.(수업설계의 길이는 30이하이다)
수업설계이 길이를 30이하라고 한 것은 대문자는 26개 이니까 같은 문자가 수업설계에서 존재할 수 있다라는 의미를 전달하기 위해서였습니다. 즉 아래와 같은 입력도 존재할 수 있습니다.
이런 경우도 YES가 나와야 합니다. 필수과목을 순서대로 이수했고, 빼먹은 것도 없으니까요.
좀 억지스러울수도 있지만 제가 문제를 만들때의 의도는 그랬습니다. 이런 입력예를 문제에서 보여줬다면 더 좋았을 걸 그랬습니다.