전체 글 152

[jungol] Beginner_Coder / 자료처리 / 1158 / 삽입정렬 / python

1158 : 삽입정렬 제한시간1000 ms 메모리제한32 MB 해결횟수692 회 시도횟수1120 회 문제 삽입정렬(Insertion sort)은 자료 배열의 모든 요소를 앞에서부터 차례대로 이미 정렬된 배열 부분과 비교하여, 자신의 위치를 찾아 삽입하는 방법이다. 수열이 {5 4 3 7 6}이 있을 경우의 삽입정렬 과정은 다음과 같다. 처음상태에서 처음 값 5 앞에 아무것도 없으므로 5는 이미 정렬된 상태가 되므로, 이후 4부터 정렬과정을 살펴보자. ※ 3단계의 경우 7은 앞의 "3 4 5"보다 크므로 제자리에 삽입된다. n개의 수열이 주어지면 위와 같은 방법으로 정렬하는 과정 각 단계를 출력하는 프로그램을 작성하시오. 입력형식 첫줄에 수열의 길이 N(4≤N≤100)이 주어진다. 두 번째 줄에 N개의 0..

[jungol] Beginner_Coder / 자료처리 / 1146 / 선택정렬 / python

1146 : 선택정렬 제한시간1000 ms 메모리제한32 MB 해결횟수694 회 시도횟수1414 회 문제 선택 정렬(selection sort)이란 내부정렬 알고리즘의 하나로 다음 순서대로 실행하여 정렬을 한다. 1. 주어진 수열 중에 최소값(같은 값이 여러 개 있는 경우 처음 값)을 찾는다. 2. 찾은 최소값을 맨 앞의 값과 자리를 바꾼다. 3. 맨 앞의 값을 뺀 나머지 수열을 같은 방법으로 전체 개수-1번 반복 실행한다. n개의 주어진 수열을 위와 같은 방법으로 정렬한다. 수열이 주어지면 선택정렬의 과정을 한 단계씩 출력한다.​ 입력형식 첫줄에 수열의 길이 N(4≤N≤100)이 주어진다. 두 번째 줄에 N개의 0이상 100이하의 정수가 주어진다. 출력형식 처음 상태를 제외하고 정렬과정의 각 단계별 결..

[jungol] Beginner_Coder / 자료처리 / 1697 / 큐(queue) / python

1697 : 큐(queue) 제한시간1000 ms 메모리제한32 MB 해결횟수1750 회 시도횟수3419 회 문제 큐는 먼저 들어온 데이터가 먼저 출력된다. 이러한 구조를 선입선출(FIFO - First In First Out)이라고 한다. 이러한 큐 자료구조는 보통 우리의 생활에서는 매우 일상적인 자료구조이다. 큐 자료구조의 형태를 가장 흔히 볼 수 있는 게 “줄서기”가 될 것이다. 은행 창구에서 줄을 서거나, 버스를 기다리기 위해서 줄을 설 경우 가장 먼저 줄을 선 사람이 가장 먼저 은행 업무를 처리하거나, 버스를 타게 된다.(새치기 하는 경우는 생각하지 말자) 그림과 같은 큐 자료구조를 설계하고, 처리조건에 맞는 출력을 하시오. ≪처리조건≫ 1. 주어지는 명령은 다음의 3가지이다. 2. "i a"는..

[jungol] Beginner_Coder / 자료처리 / 1102 / 스택(stack) / python

1102 : 스택 (stack) 제한시간1000 ms 메모리제한32 MB 해결횟수2801 회 시도횟수4816 회 문제 Stack은 "더미"란 뜻을 가진다. 책 더미, 신문 더미 등에 사용하는 단어이다. 책 더미를 예로 들어 보자. 책 더미를 쌓았다고 했을 때, 이 책 더미에서 책을 가져오는 가장 정상적인 방법은 제일 위에 있는 책을 가져오는 방식이다. 다시 말하면 가장 먼저 들어간 책은 가장 나중에 꺼낼 수 있을 것이다. 이런식으로 자료가 가장 밑에 쌓이고(입력). 자료를 가져올 때(출력)는 가장 위(최근)의 자료를 가져오는 자료구조를 Stack하고 한다. 이러한 Stack의 특징 때문에 흔히 "FILO(First-In-Last-Out : 선입후출)" 혹은 "LIFO(Last-In-First-Out : ..

프로젝트에 Airbnb스타일 eslint + prettier 적용하기!

eslint란? ESLint는 ES 와 Lint를 합친 것입니다. ES는 Ecma Script로서, Ecma라는 기구에서 만든 Script, 즉, 표준 Javascript를 의미합니다. Lint는 에러가 있는 코드에 표시를 달아놓는 것을 의미합니다. 따라서, ESLint는 자바스크립트 문법에서 에러를 표시해주는 도구입니다! 특히 많은 사람들과 파일을 공유하면서 협업을 할 때 ESLint를 통해 코딩스타일을 정해두면 좋습니다! 저는 그 중에서도 airbnb의 코딩스타일을 적용한 airbnb eslint를 적용해보려고 합니다. Prettier란? Prettier는 정해진 스타일에 따라 코드를 자동적으로 설정해주는 도구입니다! 예를 들어 들여 쓰기를 2칸으로 설정했는데 특정 부분에서 들여쓰기가 4칸으로 되어있..

[jungol] Beginner_Coder / 여러가지 / 3427 / 볼모으기 / python

3427 : 볼 모으기(balls) 제한시간1000 ms 메모리제한1024 MB 해결횟수453 회 시도횟수1536 회 문제 빨간색 볼과 파란색 볼이 에서 보인 것처럼 일직선상에 섞여 놓여 있을때, 볼을 옮겨서 같은 색 볼끼리 인접하게 놓이도록 하려고 한다. 볼을 옮기는 규칙은 다음과 같다. 1. 바로 옆에 다른 색깔의 볼이 있으면 그 볼을 모두 뛰어 넘어 옮길 수 있다. 즉, 빨간색 볼은 옆에 있는 파란색 볼 무더기를 한 번에 뛰어 넘어 옮길 수 있다. 유사하게, 파란색 볼은 옆에 있는 빨간색 볼 무더기를 한 번에 뛰어 넘어 옮길 수 있다. 2. 옮길 수 있는 볼의 색깔은 한 가지이다. 즉, 빨간색 볼을 처음에 옮겼으면 다음에도 빨간색 볼만 옮길 수 있다. 유사하게, 파란색 볼을 처음에 옮겼으면 다음에도..

[Git] gitlab merge conflict 해결방법

0. 아래처럼 Resolve conflicts가 있다면 그냥 저기 들어가서 해결해버리면 됨! 근데 이유는 모르겠지만 Merge locally만 활성화 되어 있었음.. 그래서 로컬에서 직접 해결을 해줘야함 1. 방법은 2가지임 1. 내 로컬 저장소에 merge하고 싶은 gitlab을 **rebase** 해오고 로컬에서 충돌 해결하는 법 - 내가 원하는 commit을 base로 해서 내 브랜치가 마치 그 커밋에서 딴 것처럼 기록을 조작하고 .. 블라블라 장점은 merge를 위한 commit기록이 안남아서 깔끔한 commit관리 가능! but 머리 아픔 2. 내 로컬 저장소에 merge하고 싶은 gitlab을 **pull** 해오고 로컬에서 충돌 해결하는 법 - merge만을 위한 commit이 생겨서 깔끔하..

[jungol] Beginner_Coder / 여러가지 / 1761 / 숫자 야구

1761 : 숫자 야구 제한시간1000 ms 메모리제한7 MB 해결횟수430 회 시도횟수940 회 문제 정보문화진흥원 정보 영재 동아리에서 동아리 활동을 하던 영수와 민혁이는 쉬는 시간을 틈타 숫자야구 게임을 하기로 했다. * 영수는 1에서 9까지의 서로 다른 숫자 세 개로 구성된 세 자리 수를 마음속으로 생각한다. (예: 324) * 민혁이는 1에서 9까지의 서로 다른 숫자 세 개로 구성된 세 자리 수를 영수에게 묻는다. (예: 123) * 민혁이가 말한 세 자리 수에 있는 숫자들 중 하나가 영수의 세 자리 수의 동일한 자리에 위치하면 스트라이크 한 번으로 센다. 숫자가 영수의 세 자리 수에 있긴 하나 다른 자리에 위치하면 볼 한 번으로 센다. 예) 영수가 324를 갖고 있으면 429는 1 스트라이크 ..

카테고리 없음 2021.07.22

[jungol] Beginner_Coder / 여러가지 / 1031 / 빙고 / python

1031 : 빙고 제한시간1000 ms 메모리제한32 MB 해결횟수633 회 시도횟수1467 회 문제 빙고 게임은 다음과 같은 방식으로 이루어진다. 먼저 아래와 같이 25개의 칸으로 이루어진 빙고판에 1부터 25까지 자연수를 한 칸에 하나씩 쓴다. 다음은 사회자가 부르는 수를 차례로 지워나간다. 예를 들어 5 10 7이 불렸다면 이 세 수를 지운 뒤 빙고판의 모습은 다음과 같다. 차례로 수를 지워가다가 같은 가로줄 세로줄 또는 대각선 위에 있는 5개의 모든 수가 지워지는 경우 그 줄에 선을 긋는다. 이러한 선이 세 개 이상 그어지는 순간 "빙고"라고 외치는데 가장 먼저 외치는 사람이 게임의 승자가 된다. 철수는 친구들과 빙고 게임을 하고 있다. 철수가 빙고판에 쓴 수들과 사회자가 부르는 수의 순서가 주어..

[JavaScript] 모던 자바스크립트 Deep Dive / 연산자

1. 산술 연산자 2. 할당 연산자 할당 연산자는 우항에 있는 피연산자의 평가 결과를 좌항에 있는 변수에 할당한다. 3. 삼항 조건 연산자 삼항 조건 연산자는 첫 번째 피연산자가 true로 평가되면 두 번째 피연산자를 반환하고, 첫 번째 피연산자가 false로 평가되면 세 번째 피연산자를 반환한다. 이 밖에도 비교, 논리, 타입, 지수 연산 등 다양한 연산자들이 있지만 직관적으로 이해가 가능한 부분이다.

WEB🛫/JavaScript 2021.07.21