ALGORITHM/BOJ

[백준_javascript] 문자와 문자열(27866, 2743, 9086, 11654, 11720)

오늘도 코딩하나 2024. 8. 6. 16:18

#27866 (문자와 문자열)

const fs = require('fs');
const file = process.platform === 'linux' ? '/dev/stdin' : __dirname+'/input.txt';

const [S,i] = fs.readFileSync(file).toString().trim().split('\n');
console.log(S.slice(i-1,i));

 

#2743 (단어 길이 재기)

const fs = require('fs');
const file = process.platform === 'linux' ? '/dev/stdin' : __dirname+'/input.txt';

const word = fs.readFileSync(file).toString().trim();
console.log(word.length);

 

#9086 (문자열)

solution1_for().

const fs = require('fs');
const file = process.platform === 'linux' ? '/dev/stdin' : __dirname+'/input.txt';

const input = fs.readFileSync(file).toString().trim().split('\n');
const T = parseInt(input[0]);

let word = '';
let st, ed = '';
for(let i=1; i<=T; i++) {
    word = input[i].trim();
    st = word.charAt(0);
    ed = word.charAt(word.length-1);
    console.log(st+ed);
}

 

solution2_shift().

const fs = require('fs');
const file = process.platform === 'linux' ? '/dev/stdin' : __dirname+'/input.txt';

let input = fs.readFileSync(file).toString().trim().split("\n");

// 배열의 맨 앞 요소를 제거
input.shift();
// length를 이용해 맨 뒤 값을 출력
input.map(x => console.log(x.substring(0, 1) + x.substring(x.length - 1, x.length)));

 

#11654 (아스키 코드)

const fs = require('fs');
const file = process.platform === 'linux' ? '/dev/stdin' : __dirname+'/input.txt';

const input = fs.readFileSync(file).toString().trim();
console.log(input.charCodeAt());

 

#11720 (숫자의 합)

solution1 _for() .

const fs = require('fs');
const file = process.platform === 'linux' ? '/dev/stdin' : __dirname+'/input.txt';

const [N, num] = fs.readFileSync(file).toString().trim().split('\n');

let sum = 0;
for(let i=0; i<N; i++) {
    sum += parseInt(num[i]);
}
console.log(sum);

 

solution2_reduce().

const fs = require('fs');
const file = process.platform === 'linux' ? '/dev/stdin' : __dirname+'/input.txt';

const [N, num] = fs.readFileSync(file).toString().trim().split('\n');
const number = num.split('') ;
const sum = number.reduce((x,y) => parseInt(x) + parseInt(y));

console.log(sum);

 

 

### 참고한 블로그

https://velog.io/@mandu5/yaq4ad0n

 

[백준/node.js] 9086 문자열

shift() 메서드 = 배열 맨 앞 요소 제거

velog.io

https://velog.io/@ovzip/%EC%95%84%EC%8A%A4%ED%82%A4%EC%BD%94%EB%93%9C-%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EC%97%90%EC%84%9C-%EC%95%84%EC%8A%A4%ED%82%A4%EC%BD%94%EB%93%9C-%ED%99%9C%EC%9A%A9%ED%95%98%EA%B8%B0

 

[아스키코드] 자바스크립트에서 아스키코드 활용하기

♣️아스키 코드 > 컴퓨터는 문자를 숫자로 표현하고 있다. 그 순서를 표준 구격으로 나타낸 것이 1976년에 만들어진 아스키 (ASCII: American Standard Code for Information Interchange)이다.아스키 코드는 0번

velog.io

 

https://mywebproject.tistory.com/465

 

[백준] 11720번 - 숫자의 합 (node.js)

JavaScript 문자열 (2) 문제 N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개

mywebproject.tistory.com