일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Python
- HTTP
- 도커명령어
- HTTP/1.0
- 컴퓨공학과
- CS
- 자바스크립트
- HTTP/0.9
- 프론트엔드
- Jupyter notebook
- Javascript
- 컴퓨터공학과
- 백준
- JavsScript
- 취준생
- 운동
- gunicorn
- 도커 컨테이너
- HTTP/2.0
- Nginx
- IT
- CS기술면접
- Nginx개념
- 헬스
- http 메소드
- HTTP/3.0
- 도커기본개념
- 코딩테스트
- docker
- HTTP버전
- Today
- Total
목록IT (7)
dogo_ day
🔅알고리즘 난이도 Lv. 1 🌈문제풀이 문자열에 대한 기본적인 알고리즘이다. 입력받은 문자열에 대해 하나씩 꺼내어 Number형으로 arr배열에 삽입한다. 이후에 reduce를 사용하여 연산 후 출력한다. let fs = require('fs'); let input = fs.readFileSync('/dev/stdin').toString().split('\n'); let n = input[0]; let arr = input[1].split('').map(Number); let summary = arr.reduce((a,b)=>a+b); console.log(summary); for of을 이용하여 풀이할 수도 있다. for...of 의 공식 정의는 다음과 같다. for...of 명령문은 반복가능한 객체(..
🔅알고리즘 난이도 Lv. 1 🌈문제풀이 너무나도 쉬운 문제였다. 하지만 나는 계속 틀렸다.100번을 쳐다봐도 로직에는 문제가 없었다. 그 이유는 바로 파일을 읽어올 때 trim()을 사용하지 않아서 였다. trim()을 사용하지 않으면 공백, 빈문자열에 대한 오류를 걸러내지 못해서였다. let fs = require('fs'); let input = fs.readFileSync('/dev/stdin').toString().trim().split('\n'); let data = input.map(Number); let mySet = new Set(); for(let d of data){ mySet.add(Number(d) % 42); } console.log(mySet.size);
🔅알고리즘 난이도 Lv. 1 🌈문제풀이 문제해결 아이디어는 간단하다. 하지만 내가 블로그를 쓰는 이유는 배열의 메소드를 무분별하게 사용하면 성능이 안좋다는 것을 알았기 때문이다. 위 문제를 해결하기 위해 배열의 메소드 중 sort를 사용했다. 문제는 해결하였으나 시간측정이 오래걸리는 것 같아 꺼림직해서 sort를 사용하지 않고 했다. (강의 모범답안) 유의미한 시간차이가 있다. 배열의 메소드를 무분별하게 사용하면 안될 것 같다. 참고자료 패스트캠퍼스 - JavaScript 코딩테스트 131개 예재 & CS지식으로 끝내기
🔅알고리즘 난이도 Lv. 1 🌈문제풀이 아이디어는 간단하다. 입력받은 n개의 행 만큼 별을 +1 씩 증가시키면서 출력하는 것 이다. // CASE 01 let fs = require('fs'); let input = fs.readFileSync('/dev/stdin').toString().split('\n'); n = Number(input[0]); let star = ''; for(let i = 1; i
🔅알고리즘 난이도 Lv. 1 🌈문제풀이 아이디어는 입력받는 현재시각을 분으로 만들어서 요리하는 데 필요한 시간을 더하면 된다. 그리고 하루는 1440분 이므로 %을 이용하여 00:00 ~ 23:59 사이의 시간이라는 조건을 만족시킨다. 그리고 시 분 형태로 바꾸어서 출력한다. 다른 방법은 위 아이디어의 정확히 반대이다. 요리하는 데 필요한 시간을 시 분 형태로 바꾼다. 60의 몫과 60의 나머지를 이용하면 시 분을 구할 수 있다. 그리고 현재시각과 요리하는데 필요한 시각을 더하여 출력한다. let fs = require('fs'); let input = fs.readFileSync('/dev/stdin').toString().split('\n'); let [oven_hour, oven_minute] = ..
🔅코딩테스트 JavaScript 기본 문법 🌈Number와 String 형태 변환이 자유로워야 한다. // 숫자를 문자열로 let a = '123' let b = Number(a); console.log(b); // 123 // 문자열을 숫자로 let a = 123; let b = String(a); console.log(b); // "123" 🌈Array.prototype.reduce() 배열의 각 요소에 대해 주어진 리듀서함수를 실행하고, 하나의 결과값을 반환한다. reducer의 형태는 다음과 같다. (accumulator, currentValue) => 반환값 const array1 = [1, 2, 3, 4]; // 0 + 1 + 2 + 3 + 4 const initialValue = 0; con..
🔅코딩테스트 JavaScript 개요 코딩테스트에서는 알고리즘 문제가 나온다. 알고리즘 문제에서는 입출력 양식이 주어진다. 그리고 적절한 알고리즘을 사용하여 문제에서 요구하는 형식으로 출력해야한다. JavaScript 기본 출력은 표준 출력인 console.log()를 사용한다. // 단순 문자열 출력 console.log('Hello World'); let result = 'doyun' // 문자열 내부에 변수를 포함 (백틱 사용) console.log(`이름은 ${result}입니다.`); JavaScript는 기본적인 사칙 연산이 가능하다. + - * / % 등 그리고 몫만 남기기위해서는 parseInt를 사용하면 된다. 여러줄의 출력을 할 때가 있다. console.log('...'); conso..