전체 글 96

[BOJ]1934 - 최소공배수(JS)

풀이let fs = require("fs");let input = fs.readFileSync('예제.txt').toString().trim().split("\n").map(a=>a.split(" ").map(Number))answer = [];input = input.splice(1,input.length)for(let i = 0; i  유클리드 호제법 : 유클리드 알고리즘은 두 수의 최대공약수(GCD)를 구하는 효율적인 방법입니다.두 수 a와 b가 주어지면, a를 b로 나눈 나머지를 r로 설정하고, a를 b로, b를 r로 교체합니다. 이 과정을 b가 0이 될 때까지 반복하면, 최종적으로 a가 GCD가 됩니다.원래 두 수의 곱을 최대 공약수로 나누면 최소공배수가 나옴.

알고리즘 2024.07.19

[BOJ]10816 - 숫자 카드2 (JS)

문제숫자 카드는 정수 하나가 적혀져 있는 카드이다. 상근이는 숫자 카드 N개를 가지고 있다. 정수 M개가 주어졌을 때, 이 수가 적혀있는 숫자 카드를 상근이가 몇 개 가지고 있는지 구하는 프로그램을 작성하시오.입력첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10,000,000보다 작거나 같다.셋째 줄에는 M(1 ≤ M ≤ 500,000)이 주어진다. 넷째 줄에는 상근이가 몇 개 가지고 있는 숫자 카드인지 구해야 할 M개의 정수가 주어지며, 이 수는 공백으로 구분되어져 있다. 이 수도 -10,000,000보다 크거나 같고, 10,000,0..

알고리즘 2024.07.18

[BOJ] 1764 - 듣보잡(JS)

문제김진영이 듣도 못한 사람의 명단과, 보도 못한 사람의 명단이 주어질 때, 듣도 보도 못한 사람의 명단을 구하는 프로그램을 작성하시오. 입력첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. 이름은 띄어쓰기 없이 알파벳 소문자로만 이루어지며, 그 길이는 20 이하이다. N, M은 500,000 이하의 자연수이다.듣도 못한 사람의 명단에는 중복되는 이름이 없으며, 보도 못한 사람의 명단도 마찬가지이다. 풀이let fs = require("fs");let input = fs.readFileSync('예제.txt').toString().trim().split("..

알고리즘 2024.07.16

[JavaScript]date/math/String/array

date 오늘 날짜 출력하기 오늘 날짜 특정 날짜 출력하기 특정날짜날짜 출력하기 get date는 0 - 6 (0부터 월요일 화요일 ...) math Math 버튼 랜덤배경색   String String 문자열 합치기 클릭 문자열 비교하기 클릭 문자열 검색하기 클릭 문자열 추출하기 클릭    toLowerCase ⇒ 대문자가있다면 소문자로 변환동등연산자 → == 자동으로 형을 맞춰서 값을 true / false 로 변환 ex) 10 == “10” → true ..

JS 2024.07.16

[BOJ]7785 - 회사에있는사람(JS)

문제 상근이는 세계적인 소프트웨어 회사 기글에서 일한다. 이 회사의 가장 큰 특징은 자유로운 출퇴근 시간이다. 따라서, 직원들은 반드시 9시부터 6시까지 회사에 있지 않아도 된다.각 직원은 자기가 원할 때 출근할 수 있고, 아무때나 퇴근할 수 있다.상근이는 모든 사람의 출입카드 시스템의 로그를 가지고 있다. 이 로그는 어떤 사람이 회사에 들어왔는지, 나갔는지가 기록되어져 있다. 로그가 주어졌을 때, 현재 회사에 있는 모든 사람을 구하는 프로그램을 작성하시오. 입력첫째 줄에 로그에 기록된 출입 기록의 수 n이 주어진다. (2 ≤ n ≤ 106) 다음 n개의 줄에는 출입 기록이 순서대로 주어지며, 각 사람의 이름이 주어지고 "enter"나 "leave"가 주어진다. "enter"인 경우는 출근, "leave..

알고리즘 2024.07.12

[BOJ]2839 - 설탕 배달(JS)

문제상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그램 봉지와 5킬로그램 봉지가 있다.상근이는 귀찮기 때문에, 최대한 적은 봉지를 들고 가려고 한다. 예를 들어, 18킬로그램 설탕을 배달해야 할 때, 3킬로그램 봉지 6개를 가져가도 되지만, 5킬로그램 3개와 3킬로그램 1개를 배달하면, 더 적은 개수의 봉지를 배달할 수 있다.상근이가 설탕을 정확하게 N킬로그램 배달해야 할 때, 봉지 몇 개를 가져가면 되는지 그 수를 구하는 프로그램을 작성하시오. 출력상근이가 배달하는 봉지의 최소 개수를 출력한다. 만약, 정확하게 N킬로그램을 만들 수 없다면 -1을 출력한다.  풀이let ..

알고리즘 2024.07.07

[지식]display:inline 과 inline-block 의 차이

display:inline  이라는 태그의 성질로 content/text 크기만큼만 점유 , 동일한 라인에 붙는 성질텍스트 내에 특정 부분에 스타일을 간단히 줄때에 많이 사용한다.ex ) 두꺼운 효과 등높이와 넓이등 효과 적용 불가 , 마진/패딩 적용불가 display:inline-block높이 , 넓이 적용 가능마진/패딩 적용 가능line-height 적용 가능 -> 간단히 텍스트 내에서의 수정이 필요한경우 inline정도만 쓰는게 좋고 , 디테일한 보정이 필요하면 inline-block을 사용하는것이 좋다

지식 2024.07.04

[JS]rolling / dom / Object / numberObject / transObject

rolling  ◀️ ▶️  dom DOM(Document Object medel) 탐색 메소드 1. 엘리먼트의 id로 탐색 : document의 엘리먼트 중 하나를 선택 - 반환 : 값 하나 2. 엘리먼트의 name으로 탐색 : 엘리먼트 여러개를 선택 - 반환 : 배열 3. 엘리먼트 태그이름으로 탐색 : 엘리먼트 여러개를 선택 = 반환 : 배열  Object 객체 : 관련된 데이터와 함수의 집합이다. 구성 -함수: 기능 정의 -속성: 객체 내부 데이터 -this..

JS 2024.07.03

[알고리즘]프로그래머스 LV.1 - 바탕화면 정리

문제 풀이function solution(wallpaper) { var answer = []; var minX = Infinity, minY = Infinity, maxX = -Infinity, maxY = -Infinity; for (let i = 0; i 먼저 가장 #이나오는 가장 윗쪽 행을 추적함.minX = Math.min(minX, i);: 현재 행 i와 기존의 minX 중 더 작은 값을 minX로 업데이트합니다. 이는 #이 처음 등장하는 가장 윗쪽 행을 추적합니다.그리고 #이나오는 가장 왼쪽행을 추적함minY = Math.min(minY, firstIndex);: 현재 행의 firstIndex와 기존의 minY 중 더 작은 값을 minY로 업데이트합니다. 이는 #이 등장하는 가..

알고리즘 2024.07.02

[JavaScript]스크립트언어란?

스크립트언어란?기본프로그램의 동작을 사용자의 요구에 맞게 수행되도록 해주는 용도로 사용 .빠르게 학습가능 , 짧은 소스코드로 상호작용하도록 고안됨 자바스크립트웹 브라우저에서 사용하는 인터프리터 방식의 객체지향 프로그래밍언어이며 표준을 따르는 웹기술이다. 변수의 사용 변수의 선언 규칙 1. 대소문자 구분한다. 2. 영문,$,_로 시작한다. 3. 영문,$,_를 포함할 수 있다. 4. 키워드나 예약어 사용할 수 없다. 변수의 범위 1.전역변수 : window 객체에 포함되는 변수로 다른 함수들에서 공용으로 사용할 수 있다.( 값 유지 ) ..

JS 2024.07.01