목록My footPrints 🔥🔥🔥 (311)
Daehyunii's Dev-blog
문제(출처 : 인프런 자바스크립트 알고리즘 문제풀이 강의, 정보올림피아드) Anagram이란 두 문자열이 알파벳의 나열 순서를 다르지만 그 구성이 일치하면 두 단어는 아 나그램이라고 합니다. 예를 들면 AbaAeCe 와 baeeACA 는 알파벳을 나열 순서는 다르지만 그 구성을 살펴보면 A(2), a(1), b(1), C(1), e(2)로 알파벳과 그 개수가 모두 일치합니다. 즉 어느 한 단어를 재 배열하면 상대편 단어가 될 수 있는 것을 아나그램이라 합니다. 길이가 같은 두 개의 단어가 주어지면 두 단어가 아나그램인지 판별하는 프로그램을 작성하세 요. 아나그램 판별시 대소문자가 구분됩니다. ▣ 입력설명 첫 줄에 첫 번째 단어가 입력되고, 두 번째 줄에 두 번째 단어가 입력됩니다. 단어의 길이는 100을..
문제(출처 : 인프런 자바스크립트 알고리즘 문제풀이 강의, 정보올림피아드) 학급 회장을 뽑는데 후보로 기호 A, B, C, D, E 후보가 등록을 했습니다. 투표용지에는 반 학생들이 자기가 선택한 후보의 기호(알파벳)가 쓰여져 있으며 선생님은 그 기호를 발표하고 있습니다. 선생님의 발표가 끝난 후 어떤 기호의 후보가 학급 회장이 되었는지 출력하는 프로그램을 작 성하세요. 반드시 한 명의 학급회장이 선출되도록 투표결과가 나왔다고 가정합니다. ▣ 입력설명 첫 줄에는 반 학생수 N(5
문제(출처 : 인프런 자바스크립트 알고리즘 문제풀이 강의, 정보올림피아드) 현수의 아빠는 제과점을 운영합니다. 현수 아빠는 현수에게 N일 동안의 매출기록을 주고 연속 된 K일 동안의 최대 매출액이 얼마인지 구하라고 했습니다. 만약 N=10이고 10일 간의 매출기록이 아래와 같습니다. 이때 K=3이면 12 15 11 20 25 10 20 19 13 15 연속된 3일간의 최대 매출액은 11+20+25=56만원입니다. 여러분이 현수를 도와주세요. ▣ 입력설명 첫 줄에 N(5
문제(출처 : 인프런 자바스크립트 알고리즘 문제풀이 강의, 정보올림피아드) N개의 수로 이루어진 수열이 주어집니다.이 수열에서 연속부분수열의 합이 특정숫자 M이하가 되는 경우가 몇 번 있는지 구하는 프로그 램을 작성하세요. 만약 N=5, M=5이고 수열이 다음과 같다면 13123 합이 5이하가 되는 연속부분수열은 {1}, {3}, {1}, {2}, {3}, {1, 3}, {3, 1}, {1, 2}, {2, 3}, {1, 3, 1}로 총 10가지입니다. ▣ 입력설명 첫째 줄에 N(1≤N≤100,000), M(1≤M≤100,000,000)이 주어진다. 수열의 원소값은 1,000을 넘지 않는 자연수이다. ▣ 출력설명 첫째 줄에 경우의 수를 출력한다. ▣ 입력예제 1 5 5 1 3 1 2 3 ▣ 출력예제 1 1..
문제(출처 : 인프런 자바스크립트 알고리즘 문제풀이 강의, 정보올림피아드) N개의 수로 이루어진 수열이 주어집니다.이 수열에서 연속부분수열의 합이 특정숫자 M이 되는 경우가 몇 번 있는지 구하는 프로그램을 작성하세요.만약 N=8, M=6이고 수열이 다음과 같다면 12131112 합이 6이 되는 연속부분수열은 {2, 1, 3}, {1, 3, 1, 1}, {3, 1, 1, 1}로 총 3가지입니다. ▣ 입력설명 첫째 줄에 N(1≤N≤100,000), M(1≤M≤100,000,000)이 주어진다. 수열의 원소값은 1,000을 넘지 않는 자연수이다. ▣ 출력설명 첫째 줄에 경우의 수를 출력한다. ▣ 입력예제 1 8 6 12131112 ▣ 출력예제 1 3 Tip 문제풀이 //강의 듣고 내가 다시 작성한 답 func..
문제(출처 : 인프런 자바스크립트 알고리즘 문제풀이 강의, 정보올림피아드) A, B 두 개의 집합이 주어지면 두 집합의 공통 원소를 추출하여 오름차순으로 출력하는 프로 그램을 작성하세요. ▣ 입력설명 첫 번째 줄에 집합 A의 크기 N(1
문제(출처 : 인프런 자바스크립트 알고리즘 문제풀이 강의, 정보올림피아드) 오름차순으로 정렬이 된 두 배열이 주어지면 두 배열을 오름차순으로 합쳐 출력하는 프로그램 을 작성하세요. ▣ 입력설명 첫 번째 줄에 첫 번째 배열의 크기 N(1
오늘은 슬라이딩 윈도우와 해쉬 자료 구조에 대해서 공부했다. 슬라이딩 윈도우와 해쉬 자료 구조는 이전의 강의를 통해 개념적으로는 익히 알고 있었다. 슬라이딩 윈도우는 말 그대로 창문을 하나 만들어 그 창문을 밀고 나가면서 검색하는 방법을 말하는 추상적인 개념이다. 이를 구현하는 방법은 여러 방법을 활용할 수 있다. 또 해쉬 자료 구조는 키와 값을 쌍으로 갖는 자료구조를 말하고 이전까지는 객체를 활용해서 많이 구현하였다면 오늘은 map 객체를 활용해서 코드를 구현하였다. 맵과 일반 객체와의 차이점은 일반 객체는 문자열과 심벌 값만 객체의 키로 갖을 수 있지만 맵의 경우에는 프로퍼티 키로 모든 값을 사용할 수 있다는 차이점이 있다. 또 맵 객체는 일반 객체와 메서드들 명칭이 약간씩 차이가 있었다. 오늘 ..