> 기초/코테 연습
TIL-2024.04.05 - 코테연습 - 햄버거 만들기(1) & 문자열 나누기(1).programmers
Janku
2024. 4. 5. 06:30

URL:
https://school.programmers.co.kr/learn/courses/30/lessons/133502
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
내가 푼 코딩(0):
// URL > https://school.programmers.co.kr/learn/courses/30/lessons/133502
const solution = (ingredient) => {
let temp = [];
let count = 0;
for (let i = 0; i < ingredient.length; i++) {
temp.push(ingredient[i]);
if(temp.slice(-4).join('') === '1231'){
count += 1;
temp.splice(-4);
}
}
return count;
};
console.log("result:: ", solution([ 2, 1, 1, 2, 3, 1, 2, 3, 1 ])); //2
// console.log("result:: ", solution([ 1, 3, 2, 1, 2, 1, 3, 1, 2 ])); //0
// console.log("result:: ", solution([ 1, 2, 3, 1 ])); // 1
// console.log("result:: ", solution([ 1, 1, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1 ])); // 3
URL:
https://school.programmers.co.kr/learn/courses/30/lessons/140108
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
내가 푼 코드:
// URL > https://school.programmers.co.kr/learn/courses/30/lessons/140108
const solution = (s) => {
let count = 0;
let first = s[0];
let skipCount = 0;
for (let i = 1; i <= s.length; ++i) {
if (s[i] === undefined) {
count += 1;
break;
}
if (first === s[i]) {
skipCount += 1;
} else {
if (skipCount === 0) {
count += 1;
first = s[i + 1];
skipCount = 0;
i++;
} else {
skipCount -= 1;
}
}
}
return count;
};
console.log("result:: ", solution("baaa")); // 2
// console.log("result:: ", solution("banana")); // 3
// console.log("result:: ", solution("abracadabra")); // 6
// console.log("result:: ", solution("aaabbaccccabba")); //3
//