본문 바로가기

분류 전체보기

(84)
[해커랭크] Time Conversion 문제링크 Time Conversion | HackerRank Convert time from an AM/PM format to a 24 hour format. www.hackerrank.com 12시간제 AM/PM 형식으로 주어진 시간을 24시간제로 변환하는 것이 문제의 목표입니다.주의사항: 12시간제에서 '12:00:00AM'은 24시간제에서 '00:00:00'입니다. 12시간제에서 '12:00:00PM'은 24시간제에서 '12:00:00'입니다. 풀이 : function timeConversion(s: string): string { const isAM = s.includes('AM'); const time = s.substring(0,8).split(':') if(isAM && time[0] ===..
Yarn Berry 란 Yarn Berry는 Yarn 패키지 관리자의 최신 버전입니다. Yarn 2 이상의 버전을 의미하며 Yarn Berry는 여러 개선 사항과 새로운 기능을 도입하여, 자바스크립트 프로젝트의 의존성 관리를 더욱 효율적으로 만들었습니다. 주요 특징 중 하나는 'Plug'n'Play' (PnP) 설치 방식입니다. 이는 node_modules 폴더를 사용하지 않고, 의존성을 관리하는 새로운 방식으로, 디스크 공간을 절약하고 설치 속도를 향상시킵니다. 또한, Yarn Berry는 더욱 엄격한 의존성 해결과 더 나은 성능을 제공합니다. 이 버전은 또한 개선된 캐싱 메커니즘과 함께, 프로젝트의 안정성과 호환성을 높이는 여러 기능을 포함하고 있습니다.
JS 배열에서 Math.max 메서드로 최대값 찾기 기본 사용법 const max = Math.max(4, 1, 8, 7); console.log(max); // 출력: 8 ES6의 스프레드 연산자 활용 const arr = [1, 2, 3]; const max = Math.max(...arr); apply 메서드 활용 function getMaxOfArray(numArray) { return Math.max.apply(null, numArray); } 단, 스프레드 연산자와 apply()는 배열에 요소가 너무 많으면 잘못된 결과를 반환할 수 있습니다. 이는 배열이 함수의 매개변수로 전달되기 때문입니다. reduce()를 사용하는 방법은 이러한 문제가 발생하지 않습니다. reduce 메서드 활용 const arr = [1, 2, 3]; const max ..
[해커랭크] Birthday Cake Candles 문제링크 Birthday Cake Candles | HackerRank Determine the number of candles that are blown out. www.hackerrank.com 어린이의 생일 케이크를 담당하고 있으며, 케이크에는 그들의 나이만큼의 촛불이 있습니다. 가장 높은 촛불만 불어서 끌 수 있습니다. 가장 높은 촛불이 몇 개인지 세는 것이 문제의 목표입니다. 풀이 : function birthdayCakeCandles(candles: number[]): number { const max = Math.max(...candles); return candles.filter(candle => candle === max).length; } Math.max 함수를 사용하여 배열에서 최대값..
JS repeat 메서드 JavaScript의 String.prototype.repeat() 메서드는 주어진 횟수만큼 문자열을 반복하여 새로운 문자열을 생성하는 기능을 제공합니다. 이 메서드는 문자열 조작에서 유용하게 사용될 수 있으며, 특히 패턴이나 특정 문자의 반복이 필요할 때 매우 편리합니다. str.repeat(count); "abc".repeat(-1); // RangeError "abc".repeat(0); // '' (빈 문자열 반환) "abc".repeat(1); // 'abc' "abc".repeat(2); // 'abcabc' "abc".repeat(3.5); // 'abcabcabc' (소수점 이하는 정수로 변환) "abc".repeat(1 / 0); // RangeError str: 반복할 문자열입니다. c..
[해커랭크] Staircase 문제링크 Staircase | HackerRank Print a right-aligned staircase with n steps. www.hackerrank.com 이 문제에서는 크기가 n인 계단을 출력해야 합니다. 계단의 기초와 높이는 모두 n과 같으며, # 기호와 공백을 사용하여 그려집니다. 마지막 줄은 공백 없이 시작합니다. 풀이 : function staircase(n: number): void { const list = new Array(n).fill(' ') for(let i=1; i
문법(Grammar) 이란 '문법(Grammar)'은 언어의 규칙 체계를 의미합니다. 이는 어떤 언어에서 단어, 구, 문장이 어떻게 형성되고 조합되어야 하는지를 규정합니다. 문법은 언어의 구조를 이해하고, 올바르게 사용하는 데 필수적인 요소입니다. 이는 자연 언어(예: 영어, 한국어)뿐만 아니라 프로그래밍 언어에서도 중요합니다. 프로그래밍 언어의 문법은 해당 언어의 변수, 함수, 제어 구조 등이 어떻게 조합되어야 하는지를 정의합니다. 문법 오류는 언어의 규칙을 따르지 않았을 때 발생하며, 이는 의사소통의 혼란이나 프로그램의 오작동으로 이어질 수 있습니다. 쉽게 설명하기 문법을 이해하기 위해, 레고 블록을 조립하는 것을 생각해볼 수 있습니다. 레고 블록을 조립할 때, 특정한 규칙과 지침을 따라야 원하는 모양의 구조물을 만들 수 있습..
구문(Syntax) 란 '구문(Syntax)'은 언어의 구조와 규칙을 의미합니다. 일반적으로, 구문은 언어의 문장이나 표현이 어떻게 구성되어야 하는지를 규정합니다. 프로그래밍 언어에서 구문은 코드가 어떻게 작성되어야 컴퓨터에 의해 올바르게 이해되고 실행될 수 있는지를 정의합니다. 이는 변수, 연산자, 키워드 등의 사용 방법과 문장의 구조를 포함합니다. 구문 오류는 프로그램이 컴파일되거나 실행될 때 발생하는 일반적인 오류 유형 중 하나로, 프로그래머가 언어의 규칙을 정확히 따르지 않았을 때 발생합니다. 쉽게 설명하기 구문을 이해하기 위해, 조리법을 작성하는 것을 생각해볼 수 있습니다. 조리법에는 재료를 준비하고, 요리하는 순서와 방법이 명확하게 기술되어 있어야 합니다. 만약 조리법의 지시사항을 잘못 작성하면, 요리가 제대로 되지..