일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 백준
- boj
- 자격증
- 노개북
- 최원영 저자
- 개발자북클럽
- 제로베이스
- SQL 개발자
- 알고리즘
- 구름edu
- 톺아보기
- 자바스크립트
- Do it! 시리즈
- 비전공자를 위한
- IT 지식
- K-Digital Credit
- 노마드코더
- 오블완
- CodeStates
- 프로그래머스
- 공부를 가장한 일기일지도
- 모던 자바스크립트 deep dive
- javascript
- nomadcoders
- 노마드 코더
- 티스토리챌린지
- 이해할 수 있는
- SQLD
- 엘리스코딩
- js
- Today
- Total
목록자료구조&알고리즘 (23)
개발자를 희망하는 초보의 자기개발 이야기
문제 원문 링크문제N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성하시오.입력첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다.출력첫째 줄에 주어진 정수 N개의 최솟값과 최댓값을 공백으로 구분해 출력한다.예제 입력 1520 10 35 30 7예제 출력 17 35풀이1const fs = require("fs");const input = fs.readFileSync("/dev/stdin").toString().trim().split("\n");const maxLength = Number(input[0]);const..
문제 원문 링크문제첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오.입력첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.출력첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다.예제 입력 15예제 출력 1 * ** *** *********풀이1const fs = require("fs");const input = fs.readFileSync("/dev/stdin").toString().trim();let A = Number(input);let count= 0let space;let str = "*";for (let i = 1; i 0) { space += " "; count--; } con..
문제 원문 링크문제본격적으로 for문 문제를 풀기 전에 주의해야 할 점이 있다. 입출력 방식이 느리면 여러 줄을 입력받거나 출력할 때 시간초과가 날 수 있다는 점이다. C++을 사용하고 있고 cin/cout을 사용하고자 한다면, cin.tie(NULL)과 sync_with_stdio(false)를 둘 다 적용해 주고, endl 대신 개행문자(\n)를 쓰자. 단, 이렇게 하면 더 이상 scanf/printf/puts/getchar/putchar 등 C의 입출력 방식을 사용하면 안 된다. Java를 사용하고 있다면, Scanner와 System.out.println 대신 BufferedReader와 BufferedWriter를 사용할 수 있다. BufferedWriter.flush는 맨 마지막에 한 번만 하..
문제 원문 링크문제상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해 보았지만, 조금만 더 자려는 마음은 그 어떤 것도 없앨 수가 없었다. 이런 상근이를 불쌍하게 보던 창영이는 자신이 사용하는 방법을 추천해 주었다. 바로 "45분 일찍 알람 설정하기"이다. 이 방법은 단순하다. 원래 설정되어 있는 알람을 45분 앞서는 시간으로 바꾸는 것이다. 어차피 알람 소리를 들으면, 알람을 끄고 조금 더 잘 것이기 때문이다. 이 방법을 사용하면, 매일 아침 더 잤다는 기분을 느낄 수 있고, 학교도 지각하지 않게 된다. 현재 상근이가 설정한 알람 시각이 주어졌을 때, 창영이의 방법을 사용한다면,..

문제 원문 링크문제연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오. 윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다. 예를 들어, 2012년은 4의 배수이면서 100의 배수가 아니라서 윤년이다. 1900년은 100의 배수이고 400의 배수는 아니기 때문에 윤년이 아니다. 하지만, 2000년은 400의 배수이기 때문에 윤년이다.입력첫째 줄에 연도가 주어진다. 연도는 1보다 크거나 같고, 4000보다 작거나 같은 자연수이다.출력첫째 줄에 윤년이면 1, 아니면 0을 출력한다.예제 입력 12000예제 출력 11 예제 입력 21999예제 출력 20풀이1const fs = require("fs");const input = fs.readFileSyn..

문제 원문 링크문제아래 예제와 같이 개를 출력하시오.입력없음.출력개를 출력한다.예제 출력 1|\_/||q p| /}( 0 )"""\|"^"` |||_/=\\__| 풀이console.log("|\\_/|")console.log("|q p| /}")console.log('( 0 )"""\\')console.log('|"^"` |')console.log("||_/=\\\\__|")이스케이프 문자 + "와 '를 적절히 섞어서 입력하면 풀 수 있다.고양이 문제와 마찬가지로 어려운 문제가 아니라 귀찮은 문제다.

문제 원문 링크문제아래 예제와 같이 고양이를 출력하시오.입력없음.출력고양이를 출력한다.예제 출력 1\ /\ ) ( ')( / ) \(__)| 풀이console.log("\\ /\\")console.log(" ) ( ')")console.log("( / )")console.log(" \\(__)|")이스케이프 문자를 알면 풀 수 있다. 어려운 문제가 아니라 귀찮은 문제다.

문제 원문 링크문제(세 자릿수) × (세 자릿수)는 다음과 같은 과정을 통하여 이루어진다.(1)과 (2)위치에 들어갈 세 자리 자연수가 주어질 때 (3), (4), (5), (6) 위치에 들어갈 값을 구하는 프로그램을 작성하시오.입력첫째 줄에 (1)의 위치에 들어갈 세 자리 자연수가, 둘째 줄에 (2)의 위치에 들어갈 세자리 자연수가 주어진다.출력첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다.예제 입력 1472385예제 출력 1236037761416181720풀이1const input = fs.readFileSync("/dev/stdin").toString().trim().split("\n");const A = parseInt(input[0]);const B ..

문제 원문 링크문제꼬마 정민이는 이제 A + B 정도는 쉽게 계산할 수 있다. 이제 A + B + C를 계산할 차례이다!입력첫 번째 줄에 A, B, C (1 ≤ A, B, C ≤ 1012)이 공백을 사이에 두고 주어진다.출력A+B+C의 값을 출력한다.예제 입력 177 77 7777예제 출력 17931 풀이1const fs = require("fs");const input = fs.readFileSync("/dev/stdin").toString().trim().split(" ");const a = parseInt(input[0]);const b = Number(input[1]);const c = Number(input[2]);console.log(a + b + c);입력값을 (" ") 공백으로 split ..

문제 원문 링크문제두 자연수 A와 B가 주어진다. 이때, A+B, A-B, A*B, A/B(몫), A%B(나머지)를 출력하는 프로그램을 작성하시오. 입력두 자연수 A와 B가 주어진다. (1 ≤ A, B ≤ 10,000)출력첫째 줄에 A+B, 둘째 줄에 A-B, 셋째 줄에 A*B, 넷째 줄에 A/B, 다섯째 줄에 A%B를 출력한다.예제 입력 17 3예제 출력 11042121 풀이const fs = require("fs");const input = fs.readFileSync("/dev/stdin").toString().trim().split(" ");const A = Number(input[0]);const B = Number(input[1]);console.log(A + B);console.log(A -..