<제출 답>
function solution(s, t){
let count = 0;
for(let x of s){
if(x === t){
count++;
}
}
return count;
}
let str="COMPUTERPROGRAMMING";
console.log(solution(str, 'R'));
아래처럼 R을 기준으로 분리해서 그 구분된 배열 길이 -1 을 통해 값을 구해도 된다.
function solution(s, t){
let answer=s.split(t).length;
return answer-1;
}
let str="COMPUTERPROGRAMMING";
console.log(solution(str, 'R'));
특이한 사실!!
split('구분자') 구분자를 마지막에 놓고해도 뒤에 빈 배열 추가로 생성
-> 뒤에 R을 추가로 넣고 배열을 출력시켜봄
갯수도 4개가 맞다. 배열 갯수도 5개니까 5 - 1해야 갈라놓은 곳을 기준으로 R의 갯수를 정확히 출력하니 맞는 내용.
function solution(s, t){
let answer=s.split(t);
return answer;
}
let str="COMPUTERPROGRAMMINGR";
console.log(solution(str, 'R'));
출력결과
24.4.10 업데이트.
코드가 s로 매개변수로 받았는데 str로 사용해버려서 수정필요.
function solution(s, t) {
let answer = 0;
[...str].map((x) => (x === t ? answer++ : undefined));
return answer;
}
let str = "COMPUTERPROGRAMMING";
console.log(solution(str, "R"));
<수정 코드>
1, 반복문은 if조건은 {}로 감싸면 충분히 조건문을 잘 사용할 수 있다.(여태껏 이게 잘 안되서 삼항연산자 사용해옴)
2. 반복문 사용 후, 수정된 기본 배열 리턴은 map, 기존 배열이 아닌 전혀 다른 것 리턴시에는 forEach 사용
function solution(s, t) {
let answer = 0;
[...s].forEach((x) => {
if (x === t) answer++;
});
return answer;
}
let str = "COMPUTERPROGRAMMING";
console.log(solution(str, "R"));
'🗃️javascript > 코테 프레임 문제' 카테고리의 다른 글
1-12 대문자로 통일[아스키 코드 활용] (0) | 2023.09.21 |
---|---|
1-11 대문자 찾기[문자열 != 배열 || 아스키 코드 출력 : charCodeAt()] (0) | 2023.09.20 |
1-9 A를 # 으로(24년)[배열은 참조타입, 문자열은 원시타입] (0) | 2023.09.19 |
1-8 일곱난쟁이(틀림)(24년 업데이트: 맞춤) (0) | 2023.09.18 |
1-7 10부제(24년 업데이트) (0) | 2023.09.18 |