Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 개발
- JavaScript
- Jenkins
- 오블완
- 코테
- nginx
- AWS
- 광고 id
- Android
- spring boots
- nuxt
- 백준
- python
- css
- it
- 티스토리챌린지
- react-native
- Express
- React
- 코딩테스트
- EC2
- Next
- 오퍼월
- chrome
- kotlin
- docker
- TypeScript
- NanoHttpd
- 파이썬
- toml
Archives
- Today
- Total
내맘대로 개발일지
[Javascript] 백준 1316 - 그룹 단어 체커 본문
1316번: 그룹 단어 체커
그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때
www.acmicpc.net

와 .. 코드작성보다 문제를 이해하는데 시간이 더 많이 소요된것 같다.
연속된 알파벳은 o 연속되지 못하는, 반복되서 나오지 않는 알파벳은 x
| happy new year |
모두 통과 |
| aba abab abcabc a |
a b a a b a b a b c a b c a 결과 : 1 |
| ab aa aca ba bb |
a b a a a c a b a b b 결과 : 4 |
| yzyzy zyzyz |
y z y z y z y z y z 결과 : 0 |
이런식인 내용이였던 것 이였다 .. :(
const fs = require('fs');
const input = fs.readFileSync('/dev/stdin').toString().split('\n');
const c = Number(input[0]);
let sum = 0;
for (var i = 1; i <= c; i++) {
const w = input[i];
const l = [];
let chk = true;
for (var j = 0; j < w.length; j++) {
if (l.indexOf(w[j]) === -1) {
l.push(w[j]);
} else {
if (l.indexOf(w[j]) !== l.length - 1) {
chk = false;
break;
}
}
}
if (chk) {
sum += 1;
}
}
console.log(sum);
- indexOf 를 통해 해당 알파벳이 들어있는지 확인 → 없다면 l 에 push
- 값이 있고 ( 값이 있다면 1 반환 ) 길이가 1이 아니라면 그룹단어가 아닌걸로 판단 → break
'Javascript' 카테고리의 다른 글
| [Javascript] 백준 2675 - 문자열 반복 (0) | 2024.01.30 |
|---|---|
| [Javascript] 백준 2908 - 상수 (2) | 2024.01.30 |
| [Javascript] 백준 1152 - 단어의 개수 (0) | 2024.01.30 |
| [Javascript] 백준 1546 - 평균 (1) | 2024.01.29 |
| [Javascript] 백준 4344 - 평균은 넘겠지 (0) | 2024.01.29 |