[바미] 알바벳 찾기
·
하루 알고리즘(JS)
문제https://www.acmicpc.net/status?user_id=ckdqja135&problem_id=10809&from_mine=1코드const fs = require('fs');const input = fs.readFileSync('/dev/stdin').toString().trim();// 알파벳 위치 배열을 -1로 초기화 (알파벳 개수 26개)const alphabetPositions = Array(26).fill(-1);// 문자열 순회하며 각 문자의 첫 등장 위치 기록for (let i = 0; i 문제 해설이 문제는 주어진 문자열 S에 대해 알파벳 소문자 각각이 처음으로 등장하는 위치를 찾는 문제입니다. 시간 복잡도시간 복잡도는 알고리즘이 입력의 크기에 따라 얼마나 빠르게 실행되는지..
[바미] 통계학
·
하루 알고리즘(JS)
문제 https://www.acmicpc.net/problem/2108https://www.acmicpc.net/problem/26069코드const fs = require('fs');const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');const N = parseInt(input[0], 10);const connections = input.slice(1);const danceSet = newSet(); // Set을 생성할 때 new Set()으로 생성합니다.danceSet.add('ChongChong');// 각 사람의 연결 관계를 탐색for (let i = 0; i 문제 해설이 문제는 기본적인 통계값을 계산하는 문제로 다..
붙임성 좋은 총총이
·
하루 알고리즘(JS)
문제 https://www.acmicpc.net/problem/26069코드const fs = require('fs');const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');const N = parseInt(input[0], 10);const connections = input.slice(1);const danceSet = newSet(); // Set을 생성할 때 new Set()으로 생성합니다.danceSet.add('ChongChong');// 각 사람의 연결 관계를 탐색for (let i = 0; i 문제 해설 이 문제는 총총이(ChongChong)를 만난 모든 사람들이 무지개 댄스를 추게 되는 상황을 시뮬레이션하는 문..
[바미] 회의실 배정
·
하루 알고리즘(JS)
문제https://www.acmicpc.net/problem/1931 코드const fs = require('fs');const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');const N = parseInt(input[0], 10);const meetings = input.slice(1).map(line => line.split(' ').map(Number));// 종료 시간 기준으로 정렬, 종료 시간이 같다면 시작 시간 기준으로 정렬meetings.sort((a, b) => { if (a[1] === b[1]) { return a[0] - b[0]; } return a[1] - b[1];});let..
[바미] 동전 0
·
하루 알고리즘(JS)
문제https://www.acmicpc.net/problem/11047  코드const fs = require('fs');const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');const [N, K] = input[0].split(' ').map(Number);const coinValues = input.slice(1).map(Number).reverse(); // 역순으로 배열을 한 번에 뒤집음function minCoins(N, K, coinValues) { let remainingAmount = K; let coinCount = 0; // 동전을 큰 값부터 사용하면서, 나눗셈과 나머지 연산으로 동전 개수와 ..
[바미] 가장 긴 증가하는 부분 수열 2
·
하루 알고리즘(JS)
문제https://www.acmicpc.net/problem/12015 코드const fs = require('fs');const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');const N = parseInt(input[0]);const A = input[1].split(' ').map(Number);function lengthOfLIS(A) { const lis = []; for (let num of A) { if (lis.length === 0 || lis[lis.length - 1] 문제 해설이 문제는 주어진 수열에서 가장 긴 증가하는 부분 수열(LIS: Longest Increasing Subseq..
[바미] K번째 수
·
하루 알고리즘(JS)
문제https://www.acmicpc.net/problem/1300코드const fs = require('fs');const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');const N = parseInt(input[0]);const k = parseInt(input[1]);function countLessOrEqual(x) { let count = 0; for (let i = 1; i = k) { result = mid; high = mid - 1; } else { low = mid + 1; } } return result..
[바미] 공유기 설치
·
하루 알고리즘(JS)
문제https://www.acmicpc.net/status?user_id=ckdqja135&problem_id=2110&from_mine=1코드const fs = require('fs');const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');const [N, C] = input[0].split(' ').map(Number);const houses = input.slice(1).map(Number);houses.sort((a, b) => a - b);function canPlaceRouters(distance) { let count = 1; let lastPlaced = houses[0]; for (let..
[바미] 나무 자르기
·
하루 알고리즘(JS)
문제 https://www.acmicpc.net/problem/2805코드const fs = require('fs');const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');const [N, M] = input[0].split(' ').map(Number);const trees = input[1].split(' ').map(Number);function getMaxSawHeight(N, M, trees) { let low = 0; let high = Math.max(...trees); let result = 0; while (low { if (height > mid) { ..
Bami
'하루 알고리즘(JS)' 카테고리의 글 목록