✏️ 문자열 반복 https://www.acmicpc.net/problem/2675
반복함수 repeat(횟수)를 기억하자!
2675번: 문자열 반복
문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다
www.acmicpc.net
let fs = require('fs');
let input = fs.readFileSync('/dev/stdin').toString().split('\n');
let testCase = Number(input[0]);
for(let i=1; i<=testCase; i++){
let [r, s] = input[i].split(" ");
let result = '';
for (let j=0; j<s.length; j++){
result += s[j].repeat(r);
}
console.log(result);
}
✏️ 그룹 단어 체커 https://www.acmicpc.net/problem/1316
1316번: 그룹 단어 체커
그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때
www.acmicpc.net
/*
1. 요소를 set에 가지고 있는지 확인한다.
2. 요소가 이미 있는 경우 바로 앞 요소랑 일치하는지 확인, 아니면 더이상 확인할 필요 x
3. 없는 경우 set에 담는다.
4. 확인이 정상적으로 끝나면 cnt 해준다.
*/
let fs = require('fs');
let input = fs.readFileSync('/dev/stdin').toString().split('\n');
let testCase = Number(input[0]);
let cnt = 0;
function chk(data) {
let set = new Set();
for(let j=0; j<data.length; j++){
if(set.has(data[j])){ // 1번
if(data[j] != data[j-1]){ // 2번
return false;
}
} else {
set.add(data[j]); // 3번
}
}
return true;
}
for(let i=1; i<=testCase; i++){
if(chk(input[i])) cnt++ // 4번
}
console.log(cnt);
'코딩테스트' 카테고리의 다른 글
코딩테스트를 위한 정렬 (0) | 2023.05.25 |
---|---|
코딩테스트를 위한 자료구조 (0) | 2023.05.24 |
JS 배열 문제 (0) | 2023.05.23 |
JS 반복문 문제 (0) | 2023.05.23 |
JS 조건문 문제 (0) | 2023.05.23 |