
📌 10162. 전자레인지 3개의 시간 조절용 버튼 A B C가 달린 전자레인지가 있다. 각 버튼마다 일정한 시간이 지정되어 있어 해당 버튼을 한번 누를 때마다 그 시간이 동작 시간에 더해진다. 버튼 A, B, C에 지정된 시간은 각각 5분, 1분, 10초이다. 냉동음식마다 전자레인지로 요리해야할 시간 T가 초단위로 표시되어 있다. 우리는 A, B, C 3개의 버튼을 적절히 눌러서 그 시간의 합이 정확히 T초가 되도록 해야 한다. 단 버튼 A, B, C를 누른 횟수의 합은 항상 최소가 되어야 한다. 이것을 최소 버튼 조작이라고 한다. 만일 요리시간이 100초라고 하면(T=100) B를 1번, C는 4번 누르면 된다. 이와 다르게 C를 10번 눌러도 100초가 되지만 이 경우 10번은 최소 횟수가 아니기 ..

📌 2839. 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그램 봉지와 5킬로그램 봉지가 있다. 상근이는 귀찮기 때문에, 최대한 적은 봉지를 들고 가려고 한다. 예를 들어, 18킬로그램 설탕을 배달해야 할 때, 3킬로그램 봉지 6개를 가져가도 되지만, 5킬로그램 3개와 3킬로그램 1개를 배달하면, 더 적은 개수의 봉지를 배달할 수 있다. 상근이가 설탕을 정확하게 N킬로그램 배달해야 할 때, 봉지 몇 개를 가져가면 되는지 그 수를 구하는 프로그램을 작성하시오. ✏️ 입력. 첫째 줄에 N이 주어진다. (3 ≤ N ≤ 5000) 📋 출력. 상근이가 배달하는 봉지의 ..

📌 Math - 수학적인 연산을 위한 속성과 메서드를 제공하는 객체 - Math는 생성자 함수가 아니고 모든 속성과 메서드는 정적이기 때문에, 언제든지 호출할 수 있다 💛 절대값 / 최대값 / 최소값 console.log(Math.abs(-2));// 2 console.log(Math.max(1, -2));// 1 console.log(Math.min(1, -2));// -2 let nums = [1, 2, 3, 4, 5]; console.log(Math.max(nums));// NaN console.log(Math.min(nums));// NaN // apply() console.log(Math.max.apply(null, nums));// 5 console.log(Math.min.apply(null,..

📌 Collection - Collection : 구조 또는 비구조화 형태로 프로그래밍 언어가 제공하는 값을 담을 수 있는 공간을 의미한다 - Collection은 내부적으로 Iterator를 가지고 있다 - 자바 스크립트에서 제공하는 Collection의 종류에는 Indexed Collection와 keyed Collection이 있다 1. Indexed Collection : index를 통해 가 element에 접근할 수 있다 (예) Array, Typed Array 2. keyed Collection : 특정 문자열, 자료형을 통해 접근할 수 있다 (예) Object, Map, Weak Map, Set, Weak Set * Iterator : 객체 지향적 프로그래밍에서 배열이나 그와 유사한 자료 ..

📌 Collection - Collection : 구조 또는 비구조화 형태로 프로그래밍 언어가 제공하는 값을 담을 수 있는 공간을 의미한다 - Collection은 내부적으로 Iterator를 가지고 있다 - 자바 스크립트에서 제공하는 Collection의 종류에는 Indexed Collection와 keyed Collection이 있다 1. Indexed Collection : index를 통해 가 element에 접근할 수 있다 (예) Array, Typed Array 2. keyed Collection : 특정 문자열, 자료형을 통해 접근할 수 있다 (예) Object, Map, Weak Map, Set, Weak Set * Iterator : 객체 지향적 프로그래밍에서 배열이나 그와 유사한 자료 ..

📌 생성자 - 생성자 함수 : 유사한 객체를 다중으로 만들 때 사용되는 함수를 말한다 - 일반적으로 생성자 함수의 이름 첫 글자는 대문자로 시작한다 - 생성자 함수로 객체를 생성할 때에는 new 연산자를 사용한다 - 생성자는 붕어빵 틀이고, 유사한 객체는 앙금이나 가격이 다른 붕어빵이라고 생각하자 - 생성자 내부에서 사용하게 되는 메서드를 정의할 때에는 prototype을 사용한다 (예) 생성자함수명.prototype.메서드명 = function(){ 실행문 }; 💛 생성자 function FishBread(flavor, price){ this.flavor = flavor; this.price = price; this.base = "flour"; } let test = FishBread("test", 1..

📌 1065. 한수 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력하는 프로그램을 작성하시오. ✏️ 입력. 첫째 줄에 1,000보다 작거나 같은 자연수 N이 주어진다. 📋 출력. 첫째 줄에 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력한다. ✍️ 방법. 100보다 작은 수는 모두 한수. 100보다 큰 경우는 숫자를 문자열로 바꾸어 index를 활용해 자릿수마다의 차이를 구하여 등차수열인지 확인한다 def check(num) : cnt = 0 for i in range(1,int(num)+1): if i < 100 : c..

📌 배열 (Array) - 여러 개체값을 순차적으로 나열한 선형 자료 구조를 말한다 - 배열은 가장 간단한 자료 구조 중 하나로, 동일한 이름 아래 같은 속성의 값을 저장해 관리를 편리하게 하기 위해 사용한다 💛 배열 선언 및 접근 // 배열 선언 let arr_1 = [ 1, 2, 3, 4, 5 ]; let arr_2 = new Array(3); // 배열 접근 console.log(arr_1);// [ 1, 2, 3, 4, 5 ] console.log(arr_2);// [ ] console.log(arr_1[0]);// 1 console.log(arr_1[1]);// 2 console.log(arr_1[2]);// 3 arr_1[2] = 999; console.log(arr_1[2]);// 999 💛..

✅ 21. 레이블 제공 - 사용자 입력에는 이와 대응하는 레이블을 제공해야 한다 - 레이블은 모든 사용자의 입력 용도 또는 역할에 대한 설명을 위해 사용한다 (1) 레이블이 시각적으로 노출되어 있는 경우 - 청각으로 웹을 인식하는 사용자는 입력 서식에 초점이 갔을 때 스크린 리더가 “편집창” 이라고만 읽어준다 - 입력창의 용도가 달라도 “편집창”이라고만 읽어주기 때문에 무엇을 입력해야 하는지 알 수 없다 - 따라서 이에 대한 설명을 제공해야 한다 아이디 비밀번호 - 레이블과 입력 서식이 1:1 매칭인 경우 레이블을 제공하고 태그의 for값과 의 id값을 동일하게 제공한다 - 이렇게 제공하면 입력 서식 선택 시 초점이 가는 것은 물론이고 레이블을 선택해도 입력 서식에 초점이 가게 된다 성별 성별 남자 여자..

✅ 17. 기본 언어 표시 - 웹 브라우저는 텍스트 콘텐츠의 언어 정보를 바탕으로 화면에 표시하고 전달한다 - 언어를 명시하면 자동언어 전환을 지원하는 스크린 리더는 선언된 언어로 전환하여 읽어준다 - 그렇기 때문에 웹페이지에 기본 언어, 주로 사용하는 언어를 명시해야만 한다 (1) 기본 언어 표시 - 기본 언어 표시는 HTML 태그에 lang 속성을 사용해 "ISO639-1"에서 지정한 두 글자로 된 언어 코드로 제공한다 - 기본 언어 설정을 해둔 상태에서 중간에 다른 언어를 사용한다면, 해당 영역은 langt속성을 사용해 적절하게 대응한다 ✅ 18. 사용자 요구에 따른 실행 - 사용자가 의도하지 않은 기능 (새 창, 초점에 의한 맥락 변화 등)은 실행되면 안 된다 - 사용자가 원하고 의도한 상황에서만..