오늘은 가족들 도와줄 것이 있어서 하루종일 밖에 있었더니
너무 졸려서 집 오자마자 기절해서 잤다(침 흘리면서 잔 건 비밀...).
문제
https://www.acmicpc.net/problem/1427
1427번: 소트인사이드
첫째 줄에 정렬하려고 하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다.
www.acmicpc.net
이 문제는 C++에서도 풀었던 문제이다 ㅎㅎ.
공백 없이 입력이 오면 그 수들을 내림차순으로 정렬하면 되는 문제이다.
그리고 어제는 새벽이라 너무 피곤해 머리가 안 돌아가서 그런지 어떻게 실행하는지 이해가 안 갔는데 엄청 간단했다...ㅎㅎ(역시 잠을 자야...) 그냥 input.txt 파일을 만들어주고 코드에 파일 주소를 '/dev/stdin' 대신 'input.txt'라고 작성하면 된다.
'/dev/stdin'는 백준에 제출할 때 'input.txt' 대신 적어주어야 한다. 그렇게 코드를 작성하고 cmd에서 해당 파일로 이동하여 js 파일을 실행시켜 주면 결과값이 출력된다.
해당 블로그를 참고하여 코드를 공부하고 내가 따로 작성해보았다.
const fs = require('fs');
// 백준에 제출할 때 써야하는 것
//const readFileSyncAdress = '/dev/stdin';
const readFileSyncAdress = 'input.txt';
let input = fs.readFileSync(readFileSyncAdress).toString().trim();
function solution(input){
return String(input).split('').sort((a,b)=>b-a).join('');
}
console.log(solution(input));
[참고] https://junghyeonsu.tistory.com/188
오호 이렇게 하니 cmd에 알맞게 출력된다 ㅎㅎ
코드를 설명해 보자면 input.txt를 한 줄로 입력받고, input을 매개변수로 받는 solution 함수를 만들어 공백 없이 하나씩 잘라 내림차순으로 정렬하고 공백없이 붙인 문자열을 리턴해준다.
이제 'input.txt'를 '/dev/stdin'로 바꾼 코드를 제출해 주면~~~~
성공!!!!
자바스크립트... 좀 재밌는 것 같기도..? ㅎ
뭔가 하다 보니 자바스크립트는 자바랑 비슷한 것 같기도 하고 파이썬이랑 비슷한 것 같기도 하고 GO랑 비슷한 것 같기도 하다(다른 언어지만...ㅎㅎ).
자바스크립트 마스터 가자~~~~
나중에 웹사이트도 하나 만들어봐야겠다.
- join() 함수는 배열의 모든 요소를 연결해 하나의 문자열로 만든다.
[참고] https://yeoncoding.tistory.com/46
- 내가 참고한 분이 작성한 코드에는 Number()가 있는데 이건 문자열을 숫자로 변환하는 함수이다. 반대로 String()은 숫자를 문자열로 변환하는 함수다.
'백준 > JavaScript' 카테고리의 다른 글
[JS] 백준 입출력과 사칙연산 - 두 번째 이야기 (4) | 2024.01.02 |
---|---|
[JS] 백준 입출력과 사칙연산 - 첫 번째 이야기 (2) | 2024.01.01 |
[JS] 백준 1181번 단어 정렬 (2) | 2023.12.31 |
[JS] 백준 2750번 수 정렬하기 (2) | 2023.12.29 |
[JS] 시작 (4) | 2023.12.11 |