soulfever01의 등록된 링크

 soulfever01로 등록된 네이버 블로그 포스트 수는 165건입니다.

땅따먹기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 2. 땅따먹기 #연습문제 문제 땅따먹기 게임을 하려고 합니다. 땅따먹기 게임의 땅(land)은 총 N행 4열로 이루어져 있고, 모든 칸에는 점수가 쓰여 있습니다. 1행부터 땅을 밟으며 한 행씩 내려올 때, 각 행의 4칸 중 한 칸만 밟으면서 내려와야 합니다. 단, 땅따먹기 게임에는 한 행씩 내려올 때, 같은 열을 연속해서 밟을 수 없는 특수 규칙이 있습니다. 예를 들면, | 1 | 2 | 3 | 5 | | 5 | 6 | 7 | 8 | | 4 | 3 | 2 | 1 | 로 땅이 주어졌다면, 1행에서 네번째 칸 (5)를 밟았으면, 2행의 네번째 칸 (8)은 밟을 수 없습니다. 마지막 행까지 모두 내려왔을 때, 얻을 수 있는 점수의 최대값을 return하는 solution 함수를 완성해 주세요. 위.......

다음 큰 숫자 (Python) [프로그래머스 문제풀이] [내부링크]

Level 2. 다음 큰 숫자 #연습문제 문제 자연수 n이 주어졌을 때, n의 다음 큰 숫자는 다음과 같이 정의 합니다. 조건 1. n의 다음 큰 숫자는 n보다 큰 자연수 입니다. 조건 2. n의 다음 큰 숫자와 n은 2진수로 변환했을 때 1의 갯수가 같습니다. 조건 3. n의 다음 큰 숫자는 조건 1, 2를 만족하는 수 중 가장 작은 수 입니다. 예를 들어서 78(1001110)의 다음 큰 숫자는 83(1010011)입니다. 자연수 n이 매개변수로 주어질 때, n의 다음 큰 숫자를 return 하는 solution 함수를 완성해주세요. 제한 사항 n은 1,000,000 이하의 자연수 입니다. 입출력 예 입출력 예 설명 입출력 예 1) 문제 예시와 같습니다. 입출력 예 2) 15(1111)의 다음 큰 숫자.......

n진수 게임 (Python) #KAKAO [프로그래머스 문제풀이] [내부링크]

Level 2. n진수 게임 (2018 KAKAO BLIND RECRUITMENT) 문제 튜브가 활동하는 코딩 동아리에서는 전통적으로 해오는 게임이 있다. 이 게임은 여러 사람이 둥글게 앉아서 숫자를 하나씩 차례대로 말하는 게임인데, 규칙은 다음과 같다. 숫자를 0부터 시작해서 차례대로 말한다. 첫 번째 사람은 0, 두 번째 사람은 1, … 열 번째 사람은 9를 말한다. 10 이상의 숫자부터는 한 자리씩 끊어서 말한다. 즉 열한 번째 사람은 10의 첫 자리인 1, 열두 번째 사람은 둘째 자리인 0을 말한다. 이렇게 게임을 진행할 경우, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 0, 1, 1, 1, 2, 1, 3, 1, 4, … 순으로 숫자를 말하면 된다. 한편 코딩 동아리 일원들은 컴퓨터를 다.......

올바른 괄호 (Python) [프로그래머스 문제풀이] [내부링크]

Level 2. 올바른 괄호 #연습문제 문제 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 "()()" 또는 "(())()" 는 올바른 괄호입니다. ")()(" 또는 "(()(" 는 올바르지 않은 괄호입니다. '(' 또는 ')' 로만 이루어진 문자열 s가 주어졌을 때, 문자열 s가 올바른 괄호이면 true를 return 하고, 올바르지 않은 괄호이면 false를 return 하는 solution 함수를 완성해 주세요. 제한사항 문자열 s의 길이 : 100,000 이하의 자연수 문자열 s는 '(' 또는 ')' 로만 이루어져 있.......

9663_N-Queen (Python) [백준 문제풀이] [내부링크]

9663_N-Queen (Python) 알고리즘 분류 #브루트포스 #백트래킹 문제 N-Queen 문제는 크기가 N × N인 체스판 위에 퀸 N개를 서로 공격할 수 없게 놓는 문제이다. N이 주어졌을 때, 퀸을 놓는 방법의 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N이 주어진다. (1 ≤ N < 15) 출력 첫째 줄에 퀸 N개를 서로 공격할 수 없게 놓는 경우의 수를 출력한다. 예제 입력 1 8 예제 출력 1 92 힌트 ??? 방법 1 (시간초과) DFS 깊이우선탐색을 사용한다고 생각했다 깊이가 1 증가하는 것을 밑으로 체스판에서 밑으로 한 줄씩 내려가는 것으로 생각했다 먼저 li에 좌표들을 넣어보면서 check 리스트로 수직방향으로 만나는지 체크하고, for문으로 대.......

1764_듣보잡 (Python) [백준 문제풀이] [내부링크]

1764_듣보잡 (Python) 알고리즘 분류 #자료 구조 #문자열 #정렬 #해시를사용한집합과맵 #해시 #집합 문제 김진영이 듣도 못한 사람의 명단과, 보도 못한 사람의 명단이 주어질 때, 듣도 보도 못한 사람의 명단을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. 이름은 띄어쓰기 없이 알파벳 소문자로만 이루어지며, 그 길이는 20 이하이다. N, M은 500,000 이하의 자연수이다. 듣도 못한 사람의 명단에는 중복되는 이름이 없으며, 보도 못한 사람의 명단도 마.......

N개의 최소공배수 (Python) [프로그래머스 문제풀이] [내부링크]

Level 2. N개의 최소공배수 #연습문제 문제 두 수의 최소공배수(Least Common Multiple)란 입력된 두 수의 배수 중 공통이 되는 가장 작은 숫자를 의미합니다. 예를 들어 2와 7의 최소공배수는 14가 됩니다. 정의를 확장해서, n개의 수의 최소공배수는 n 개의 수들의 배수 중 공통이 되는 가장 작은 숫자가 됩니다. n개의 숫자를 담은 배열 arr이 입력되었을 때 이 수들의 최소공배수를 반환하는 함수, solution을 완성해 주세요. 제한 사항 arr은 길이 1이상, 15이하인 배열입니다. arr의 원소는 100 이하인 자연수입니다. 입출력 예 방법 요소가 최대 15개 이하인 배열이면서 요소는 100이하 자연수다 1부터 모든 숫자를 다 따져서라도 하든 어.......

JandenCase 문자열 만들기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 2. JadenCase 문자열 만들기 #연습문제 문제 JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요. 제한 조건 s는 길이 1 이상인 문자열입니다. s는 알파벳과 공백문자(" ")로 이루어져 있습니다. 첫 문자가 영문이 아닐때에는 이어지는 영문은 소문자로 씁니다. ( 첫번째 입출력 예 참고 ) 입출력 예 방법 1. 일단 대문자가 있으면 안되기 때문에 s.lower()을 통해서 소문자로 만들었다 2. for 문으로 s의 문자를 하나씩 꺼낸다 3. s의 첫 글자( i == 0 ) 나 앞 글자가 ' &.......

행렬의 곱셈 (Python) [프로그래머스 문제풀이] [내부링크]

Level 2. 행렬의 곱셈 #연습문제 문제 2차원 행렬 arr1과 arr2를 입력받아, arr1에 arr2를 곱한 결과를 반환하는 함수, solution을 완성해주세요. 제한 조건 행렬 arr1, arr2의 행과 열의 길이는 2 이상 100 이하입니다. 행렬 arr1, arr2의 원소는 -10 이상 20 이하인 자연수입니다. 곱할 수 있는 배열만 주어집니다. 입출력 예 방법 1. answer 리스트를 크기에 알맞게 만든다 2. sum 함수를 사용해 더한 값들을 answer[i][k]에 넣는다 출처: 프로그래머스 코딩 테스트 연습 https://programmers.co.kr/learn/challenges #프로그래머스 #Programmers #Python #파이썬 #Python #알고리즘 #Algorithm #코딩테스트 #문제풀이 #Level_2

피보나치 수 (Python) [프로그래머스 문제풀이] [내부링크]

Level 2.피보나치 수 #연습문제 문제 피보나치 수는 F(0) = 0, F(1) = 1일 때, 1 이상의 n에 대하여 F(n) = F(n-1) + F(n-2) 가 적용되는 수 입니다. 예를들어 F(2) = F(0) + F(1) = 0 + 1 = 1 F(3) = F(1) + F(2) = 1 + 1 = 2 F(4) = F(2) + F(3) = 1 + 2 = 3 F(5) = F(3) + F(4) = 2 + 3 = 5 와 같이 이어집니다. 2 이상의 n이 입력되었을 때, n번째 피보나치 수를 1234567으로 나눈 나머지를 리턴하는 함수, solution을 완성해 주세요. 제한 사항 n은 2 이상 100,000 이하인 자연수입니다. 입출력 예 입출력 예 설명 피보나치수는 0번째부터 0, 1, 1, 2, 3, 5, ........

최솟값 만들기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 2. 최솟값 만들기 #연습문제 문제 길이가 같은 배열 A, B 두개가 있습니다. 각 배열은 자연수로 이루어져 있습니다. 배열 A, B에서 각각 한 개의 숫자를 뽑아 두 수를 곱합니다. 이러한 과정을 배열의 길이만큼 반복하며, 두 수를 곱한 값을 누적하여 더합니다. 이때 최종적으로 누적된 값이 최소가 되도록 만드는 것이 목표입니다. (단, 각 배열에서 k번째 숫자를 뽑았다면 다음에 k번째 숫자는 다시 뽑을 수 없습니다.) 예를 들어 A = [1, 4, 2] , B = [5, 4, 4] 라면 A에서 첫번째 숫자인 1, B에서 첫번째 숫자인 5를 뽑아 곱하여 더합니다. (누적된 값 : 0 + 5(1x5) = 5) A에서 두번째 숫자인 4, B에서 세번째 숫자인 4.......

최댓값과 최솟값 (Python) [프로그래머스 문제풀이] [내부링크]

Level 2. 최댓값과 최솟값 #연습문제 문제 문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 반환하는 함수, solution을 완성하세요. 예를들어 s가 "1 2 3 4"라면 "1 4"를 리턴하고, "-1 -2 -3 -4"라면 "-4 -1"을 리턴하면 됩니다. 제한 조건 s에는 둘 이상의 정수가 공백으로 구분되어 있습니다. 입출력 예 방법 1 (max_size 사용) 파이썬에서 가장 값을 사용할 때는 어떤 방식으로 해야하는지 알아보고 싶어서 찾아보다가 sys.maxsize를 알게 됐다 이 수를 기준으로 가장 큰 수, 가장 작.......

43_문자열 가운데, 오른쪽, 왼쪽 정렬하기 (+ zfill) [Python_코딩도장] [내부링크]

1. 문자열 가운데 정렬 (center) 2. 문자열 오른쪽 정렬 (rjust) 3. 문자열 왼쪽 정렬 (ljust) 4. 문자열 왼쪽에 0 채우기 (zfill) 1. 문자열 가운데 정렬 (center) 문자열의 양쪽을 ' '(스페이스바)를 넣어서 가운데 정렬을 하고 싶을 때 사용한다 문자열 가운데 정렬을 했을 때, 좌우의 길이가 1씩 차이가 나야하는 상황에서는 - 문자열 문자 개수가 짝수, 원하는 문자열 길이가 홀수 라면 앞쪽이 1칸 더 길다 - 문자열 문자 개수가 홀수, 원하는 문자열 길이가 짝수 라면 뒤쪽에 1칸 더 길다 소울치킨 4글자로 된 문자열을 center(10)으로 10글자 내에 가운데 정렬을 하면 (스페이스바 3번+소울치킨+스페이스바 3번) center(9)으로.......

5430_AC (Python) [백준 문제풀이] [내부링크]

5430_AC (Python) 알고리즘 분류 #구현 #자료구조 #문자열 #파싱 #덱 문제 선영이는 주말에 할 일이 없어서 새로운 언어 AC를 만들었다. AC는 정수 배열에 연산을 하기 위해 만든 언어이다. 이 언어에는 두 가지 함수 R(뒤집기)과 D(버리기)가 있다. 함수 R은 배열에 있는 숫자의 순서를 뒤집는 함수이고, D는 첫 번째 숫자를 버리는 함수이다. 배열이 비어있는데 D를 사용한 경우에는 에러가 발생한다. 함수는 조합해서 한 번에 사용할 수 있다. 예를 들어, "AB"는 A를 수행한 다음에 바로 이어서 B를 수행하는 함수이다. 예를 들어, "RDD"는 배열을 뒤집은 다음 처음 두 숫자를 버리는 함수이다. 배열의 초기값과 수행할 함.......

숫자의 표현 (Python) [프로그래머스 문제풀이] [내부링크]

Level 2. 숫자의 표현 #연습문제 문제 Finn은 요즘 수학공부에 빠져 있습니다. 수학 공부를 하던 Finn은 자연수 n을 연속한 자연수들로 표현 하는 방법이 여러개라는 사실을 알게 되었습니다. 예를들어 15는 다음과 같이 4가지로 표현 할 수 있습니다. 1 + 2 + 3 + 4 + 5 = 15 4 + 5 + 6 = 15 7 + 8 = 15 15 = 15 자연수 n이 매개변수로 주어질 때, 연속된 자연수들로 n을 표현하는 방법의 수를 return하는 solution를 완성해주세요. 제한사항 n은 10,000 이하의 자연수 입니다. 입출력 예 방법 1. i가 1부터 n까지 나오는 for 문을 만든다 2. 그 안에 또 j가 i+1부터 n까지 나오는 for문을 만든다 3. 나오는 수 들을 모두 더.......

1074_Z (Python) [백준 문제풀이] [내부링크]

2581_소수 (Python) 알고리즘 분류 #분할정복 #재귀 문제 한수는 크기가 2N × 2N인 2차원 배열을 Z모양으로 탐색하려고 한다. 예를 들어, 2×2배열을 왼쪽 위칸, 오른쪽 위칸, 왼쪽 아래칸, 오른쪽 아래칸 순서대로 방문하면 Z모양이다. N > 1인 경우, 배열을 크기가 2N-1 × 2N-1로 4등분 한 후에 재귀적으로 순서대로 방문한다. 다음 예는 22 × 22 크기의 배열을 방문한 순서이다. N이 주어졌을 때, r행 c열을 몇 번째로 방문하는지 출력하는 프로그램을 작성하시오. 다음은 N=3일 때의 예이다. 입력 첫째 줄에 정수 N, r, c가 주어진다. 출력 r행 c열을 몇 번째로 방문했는지 출력한다. 제한 1 ≤ N ≤ 15 0 ≤ r, c < 2N 예제 입출.......

12_블록 요소와 인라인 요소 (block,inline) [HTML] [내부링크]

블록(block) 요소와 인라인(inline) 요소 블록요소의 예 : div, h1, p - 사용 가능한 최대 가로 너비를 사용한다 - 크기를 지정할 수 있다 인라인 요소의 예 : span, img - 필요한 만큼의 가로 너비를 사용한다 - 크기를 지정할 수 없다 아래처럼 HTML 파일에 DIV, SPAN TAG를 넣는다 그리고 CSS 파일에서 두 TAG를 조정 해준다. CSS에서 DIV, SPAN에 아래의 코드를 추가해보면 인라인 요소는 크기가 변하지 않음을 알 수 있다 블록 요소의 특징 - width:100%; height:0; 으로 시작한다 높이는 포함하고 있는 요소의 높이만큼 만들어지게 된다 - 수직으로 쌓인다 - margin, padding 위 아래 좌 우 여백을 온전히 사용할 수 있다 인라인 요소의 특.......

13_display : 블록을 인라인으로, 인라인을 블록으로 [HTML] [내부링크]

display : 블록을 인라인으로, 인라인을 블록으로 CSS에서 display를 사용하면 블록 태그를 인라인으로, 인라인 태그를 블록으로 바꿀 수 있다 HTML에서 아래와 같이 div(블록), span(인라인)이 있다고 생각해보자 CSS에서 display 속성을 바꾸느냐 안바꾸느냐에 따라의 변화를 아래 캡처에 남긴다 아래 코드는 속성을 바꾼 모습인데, display 속성을 지우면 왼쪽, 있으면 오른쪽 캡처본이 된다 #HTML #Hyper #Text #Markup #Language #Web #FrontEnd

41_리스트 안에 for, if 문 넣기 (리스트 표현식 list comprehension) [Python_코딩도장] [내부링크]

리스트 안에 for, if 문 넣기 (리스트 표현식 list comprehension) - 1부터 10까지 숫자를 리스트로 한 번에 묶고 싶다 - 20보다 작거나 같은 짝수만 리스트로 묶고 싶다 - 리스트 만들 때 if 문으로 제어하고 싶다 - 여러 줄 들어온 인풋을 한 번에 리스트로 묶고 싶다 - for 문 2개가 들어간 리스트? 같은 상황일 때, 리스트 표현식을 사용한다 1부터 10까지 숫자를 리스트로 한 번에 묶기, 20보다 작은 짝수만 리스트로 묶기 처음 볼 리스트 표현식은 리스트 안에 for 문을 넣는 방식이다 예시를 통해 확인하자 리스트 표현식을 만들 때 if 문으로 제어하기 if 문을 통해서 식을 제어할 수 있다 더 디테일하게 리스트 표현식을 만들 때 필요하.......

42_문자열 분리하기, 연결하기 (split, join) [Python_코딩도장] [내부링크]

- 문자열 분리해서 리스트 만들기 (split) - 분리된 문자열 리스트 연결하기 (join) 문자열 분리해서 리스트 만들기 (split) input 함수를 받을 때 split 을 사용할 때가 있다 이 split 매소드는 문자열을 괄호 안에 들어간 문자를 기준으로 문자열을 분리해 리스트로 만들어준다 예를 들어 알아보자. song_cry 문자열은 가수가 노래를 부를 때와 숨을 쉴 때를 띄어쓰기로 구분했다. 리스트로 바꿔본다 문자열을 나누는 기준이 문자열인 경우도 있다 아래는 '.' (점)을 통해서 문자열을 나눈 리스트다 분리된 문자열 리스트 연결하기 (join) 방금까지 split으로 나눈 문자열로 된 리스트를 다시 문자열로 돌려놓고 싶어졌다 str 함수를.......

map 함수 정복하기 [Python] [내부링크]

map 함수 사용법 나는 list함수, input 을 받을 때 map 함수를 사용한다고 배웠다 input을 받을 때 사용하는 경우 list 내용을 바꾸고 싶을 때 (list 안에 모두 int 형태인데, str로 바꾸고 싶다거나) map 함수 안에 있는 두 변수는 어떤 것을 의미하는 것일까 1. input().splt(), list가 아니더라도 반복가능한객체(iterable)라면 모두 사용 가능하다 2. int, str 같은 변수 형태가 아니더라도 함수면 모두 가능하다 야식 리스트의 문자열들을 모두 앞 뒤에 11을 붙히고 싶다고 생각했다 이런 함수에 리스트의 모든 요소를 적용한다면 가능하다 이런 맵핑(map)의 기능을 map 함수가 도와준다 3. 함수를 넣을 수 있다면 람다(lambda)를 사용할 수.......

2446_별 찍기 - 9 [백준 문제풀이] [내부링크]

2446_별 찍기 - 9 (Python) 알고리즘 분류 #구현 문제 예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요. 입력 첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다. 출력 첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다. 예제 입력 1 예제 출력 1 방법 1 x 라는 변수를 미리 정해놓고, for 문으로 i가 진행될 때마다 1을 더하거나 뺏다 (i < n일 떄는 더하고, 반대는 뺀다) 문자열 곱하기 방법을 사용했다 방법 2 백준의 별찍기 - 5,6 (2442,2443번 문제)를 합치면 모래시계 모양이 나온다 별찍기 - 5, 6 문제 풀이 게시글엔 몇 가지 풀이를 적어놨다 링크는 아래에 있다 https://blog.naver.com/soulfever01/222563820072 https://blog.naver.co.......

별 찍기 문제 해설 (2) [별 찍기 컬렉션_Python] [내부링크]

별 찍기 문제 요즘 블로그에 별찍기 문제에 관한 검색 유입이 많다 복수전공으로 C 언어를 처음 배웠을 때 실습이 아닌 과제의 명목으로 나왔던 첫 문제가 별 찍기였다 학교 과제로 풀었던 문제의 수준은 백준의 별찍기 - 1 부터 별찍기 - 9 를 풀 줄 안다면 충분히 풀 수 있는 문제였다 별찍기 - 10 문제부터는 조금 다른 문제라서 백준에서 딱 이 9문제를 위주로 다루려고 한다 학교 과제 때문에 이 게시글을 들어온 사람이 있다면 충분히 고민해보고 정말정말 안되겠다 싶을 때 힌트를 얻고자 읽었으면 한다 ( + 생각보다 글이 길어져서 파트를 2개로 나눴다 앞선 파트에서 목차의 00 ~ 05까지 다루고 이 글에선 06 ~ 10을 다룬다) (파트 1 링.......

크래인 인형뽑기 게임 (Python) #KAKAO [프로그래머스 문제풀이] [내부링크]

Level 1. 크레인 인형뽑기 게임 (2019 카카오 개발자 겨울 인턴십) 문제 게임개발자인 "죠르디"는 크레인 인형뽑기 기계를 모바일 게임으로 만들려고 합니다. "죠르디"는 게임의 재미를 높이기 위해 화면 구성과 규칙을 다음과 같이 게임 로직에 반영하려고 합니다. 게임 화면은 "1 x 1" 크기의 칸들로 이루어진 "N x N" 크기의 정사각 격자이며 위쪽에는 크레인이 있고 오른쪽에는 바구니가 있습니다. (위 그림은 "5 x 5" 크기의 예시입니다). 각 격자 칸에는 다양한 인형이 들어 있으며 인형이 없는 칸은 빈칸입니다. 모든 인형은 "1 x 1" 크기의 격자 한 칸을 차지하며 격자의 가.......

키패드 누르기 (Python) #KAKAO [프로그래머스 문제풀이] [내부링크]

Level 1. x만큼 간격이 있는 n개의 숫자 #2020카카오인턴십 문제 스마트폰 전화 키패드의 각 칸에 다음과 같이 숫자들이 적혀 있습니다. 이 전화 키패드에서 왼손과 오른손의 엄지손가락만을 이용해서 숫자만을 입력하려고 합니다. 맨 처음 왼손 엄지손가락은 * 키패드에 오른손 엄지손가락은 # 키패드 위치에서 시작하며, 엄지손가락을 사용하는 규칙은 다음과 같습니다. 엄지손가락은 상하좌우 4가지 방향으로만 이동할 수 있으며 키패드 이동 한 칸은 거리로 1에 해당합니다. 왼쪽 열의 3개의 숫자 1, 4, 7을 입력할 때는 왼손 엄지손가락을 사용합니다. 오른쪽 열의 3개의 숫자 3, 6, 9를 입력할 때는 오른손 엄지손가락을 사용합니다. 가운.......

숫자 문자열과 영단어 (Python) #KAKAO [프로그래머스 문제풀이] [내부링크]

Level 1. x만큼 간격이 있는 n개의 숫자 #2021카카오채용연계형인턴십 문제 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자릿수를 영단어로 바꾸는 예시입니다. 1478 → "one4seveneight" 234567 → "23four5six7" 10203 → "1zerotwozero3" 이렇게 숫자의 일부 자릿수가 영단어로 바뀌어졌거나, 혹은 바뀌지 않고 그대로인 문자열 s가 매개변수로 주어집니다. s가 의미하는 원래 숫자를 return 하도록 solution 함수를 완성해주세요. 참고로 각 숫자에 대응되는 영단어.......

신규 아이디 추천 (Python) #KAKAO [프로그래머스 문제풀이] [내부링크]

Level 1. x만큼 간격이 있는 n개의 숫자 (2021 KAKAO BLIND RECRUITMENT) 카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로 가입하는 유저들이 카카오 아이디 규칙에 맞지 않는 아이디를 입력했을 때, 입력된 아이디와 유사하면서 규칙에 맞는 아이디를 추천해주는 프로그램을 개발하는 것입니다. 다음은 카카오 아이디의 규칙입니다. 아이디의 길이는 3자 이상 15자 이하여야 합니다. 아이디는 알파벳 소문자, 숫자, 빼기(-), 밑줄(_), 마침표(.) 문자만 사용할 수 있습니다. 단, 마.......

로또의 최고 순위와 최저 순위 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 로또의 최고 순위와 최저 순위 (2021 Dev-Matching: 웹 백엔드 개발자) 문제 로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 로또를 구매한 민우는 당첨 번호 발표일을 학수고대하고 있었습니다. 하지만, 민우의 동생이 로또에 낙서를 하여, 일부 번호를 알아볼 수 없게 되었습니다. 당첨 번호 발표 후, 민우는 자신이 구매했던 로또로 당첨이 가능했던 최고 순위와 최저 순위를 알아보고 싶어 졌습니다. 알아볼 수 없는 번호를 0으로 표기하기로 하고, 민우가 구매한 로또 번호 6개가 44, 1, 0, 0, 31 25라고 가정해보겠습니.......

2438_별 찍기 - 1 [백준 문제풀이] [내부링크]

2438_별 찍기 - 1 (Python) 알고리즘 분류 #구현 문제 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 입력 첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다. 출력 첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다. 예제 입력 1 5 예제 출력 1 * ** *** **** ***** 방법 1 중복 for 반복문을 통해 계단식으로 출력한다 방법 2 중복 반복문이 아니라 0번째 줄이면 1개, 1번째 줄이면 2개... 이런 식이기 때문에 '*' * (i + 1)으로 해결한다 출처: Baekjoon Online Judge https://www.acmicpc.net/ #백준 #BAEKJOON #Python #파이썬 #Python #알고리즘 #Algorithm #코딩테스트 #문제풀이

2439_별 찍기 - 2 [백준 문제풀이] [내부링크]

2439_별 찍기 - 2 (Python) 알고리즘 분류 #구현 문제 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오. 입력 첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다. 출력 첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다. 예제 입력 1 5 예제 출력 1 방법 1 중복 for 반복문을 통해 계단식으로 출력한다 공백이 들어가는 왼쪽 부분과 별이 찍히는 부분을 if 문으로 구분했다 방법 2 중복 반복문이 아니라 0번째 줄이면 1개, 1번째 줄이면 2개... 이런 식이다 공백의 경우 i 번째 줄에선 (a - i - 1)개가 들어가고 별은 (i + 1)개가 찍힌다 방법 3 방법 2에서 공백.......

2440_별 찍기 - 3 [백준 문제풀이] [내부링크]

2440_별 찍기 - 3 (Python) 알고리즘 분류 #구현 문제 첫째 줄에는 별 N개, 둘째 줄에는 별 N-1개, ..., N번째 줄에는 별 1개를 찍는 문제 입력 첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다. 출력 첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다. 예제 입력 1 예제 출력 1 방법 1 중복 for 반복문을 통해 출력했다 j 가 i 보다 클 때만 '*'을 출력하도록 했다 방법 2 중복 반복문이 아니라 0번째 줄이면 n개, 1번째 줄이면 (n-1)개... i 번째 줄이면 (n - i)개의 별을 찍도록 했다 출처: Baekjoon Online Judge https://www.acmicpc.net/ #백준 #BAEKJOON #Python #파이썬 #Python #알고리즘 #Algorithm #코딩테스트 #문제풀이

2441_별 찍기 - 4 [백준 문제풀이] [내부링크]

2441_별 찍기 - 4 (Python) 알고리즘 분류 #구현 문제 첫째 줄에는 별 N개, 둘째 줄에는 별 N-1개, ..., N번째 줄에는 별 1개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오. 입력 첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다. 출력 첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다. 예제 입력 1 예제 출력 1 방법 1 중복 for 반복문을 통해 계단식으로 출력한다 i 번째 줄에서 i보다 j가 작거나 같을 때만 별을 찍는 방식이다 방법 2 첫 줄에선 0개의 공백, n개의 별 찍기 다음 줄에선 1개의 공백, (n-1) 개의 별 찍기가 들어간다 반복문을 중복해서 쓰지 않고 풀이한 방법이다 방법 3 방법 2에서 스페이스바(공백) 찍.......

2442_별 찍기 - 5 [백준 문제풀이] [내부링크]

2442_별 찍기 - 5 (Python) 알고리즘 분류 #구현 문제 첫째 줄에는 별 1개, 둘째 줄에는 별 3개, ..., N번째 줄에는 별 2×N-1개를 찍는 문제 별은 가운데를 기준으로 대칭이어야 한다. 입력 첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다. 출력 첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다. 예제 입력 1 예제 출력 1 방법 1 문자열 곱하기 방법을 사용했다 각 줄마다 공백의 개수는 하나씩 줄고, 찍히는 별은 2개씩 늘어난다 방법 2 2중 for문을 사용한다면 아래처럼 사용해야할 것 같다 방법 3 문자열 오른쪽 정렬 방법을 사용한다 (rjust) 별을 찍고 오른쪽으로 정렬하기 때문에 자동으로 공백(스페이스바)가 찍힌다 방법 4 (정답 처리는 안됨.......

2443_별 찍기 - 6 [백준 문제풀이] [내부링크]

2443_별 찍기 - 6 (Python) 알고리즘 분류 #구현 문제 첫째 줄에는 별 2×N-1개, 둘째 줄에는 별 2×N-3개, ..., N번째 줄에는 별 1개를 찍는 문제 별은 가운데를 기준으로 대칭이어야 한다. 입력 첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다. 출력 첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다. 예제 입력 1 예제 출력 1 방법 1 문자열 곱하기 방법을 사용했다 각 줄마다 공백의 개수는 하나씩 늘고, 찍히는 별은 2개씩 줄어든다 방법 2 2중 for문을 사용한다면 아래처럼 사용해야할 것 같다 방법 3 문자열 오른쪽 정렬 방법을 사용한다 (rjust) 방법 1을 더 편하게 사용한 방법이다 별을 찍고 오른쪽으로 정렬하기 때문에 자동으로 공백(스페이.......

별 찍기 문제 해설 (1) [별 찍기 컬렉션_Python] [내부링크]

별 찍기 문제 요즘 블로그에 별찍기 문제에 관한 검색 유입이 많다 복수전공으로 C 언어를 처음 배웠을 때 실습이 아닌 과제의 명목으로 나왔던 첫 문제가 별 찍기였다 학교 과제로 풀었던 문제의 수준은 백준의 별찍기 - 1 부터 별찍기 - 9 를 풀 줄 안다면 충분히 풀 수 있는 문제였다 별찍기 - 10 문제부터는 조금 다른 문제라서 백준에서 딱 이 9문제를 위주로 다루려고 한다 학교 과제 때문에 이 게시글을 들어온 사람이 있다면 충분히 고민해보고 정말정말 안되겠다 싶을 때 힌트를 얻고자 읽었으면 한다 ( + 생각보다 글이 길어져서 파트를 2개로 나눴다 이 글에선 목차의 00 ~ 05까지 다루고 다음 파트에서 나머지를 다룬다) (파트 2 링.......

2444_별 찍기 - 7 [백준 문제풀이] [내부링크]

2444_별 찍기 - 7 (Python) 알고리즘 분류 #구현 문제 예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요. 입력 첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다. 출력 첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다. 예제 입력 1 예제 출력 1 방법 1 x 라는 변수를 미리 정해놓고, for 문으로 i가 진행될 때마다 1을 더하거나 뺏다 (i < n일 떄는 더하고, 반대는 뺀다) 문자열 곱하기 방법을 사용했다 방법 2 백준의 별찍기 - 5,6 (2442,2443번 문제)를 합치면 마름모 모양이 나온다 별찍기 - 5, 6 문제 풀이 게시글엔 몇 가지 풀이를 적어놨다 링크는 아래에 있다 https://blog.naver.com/soulfever01/222563820072 https://blog.naver.com/.......

2444_별 찍기 - 8 [백준 문제풀이] [내부링크]

2445_별 찍기 - 8 (Python) 알고리즘 분류 #구현 문제 예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요. 입력 첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다. 출력 첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다. 예제 입력 1 예제 출력 1 방법 1 x 라는 변수를 미리 정해놓고, for 문으로 i가 진행될 때마다 1을 더하거나 뺏다 (i < n일 떄는 더하고, 반대는 뺀다) 문자열 곱하기 방법을 사용했다 방법 2 백준의 별찍기 - 5,6 (2442,2443번 문제)를 합치면 모래시계 모양 (별찍기 - 9, 2446번 문제)을 만들 수 있다 모래시계 모양에서 '*'를 ' '로, ' '를 '*'로 바꾼다는 발상으로 시작했다 공.......

우아한 테크코스 온라인 코딩테스트 후기 [내부링크]

우아한 테크코스 어제 우아한 테크코스 온라인 코딩테스트를 봤다 (21.11.07 12시부터 16시까지 진행됐다) 코딩 공부를 하면서 처음하는 도전이었다 문제에 대해 유출 금지라 말할 수 없지만 그렇게 어려운 문제는 없었다 (백준 실버 수준, 프로그래머스 level 2 중간 수준정도로 할 줄 알면 충분할 듯 하다) 그래서 자소서와 프리코스 이후 2차 테스트가 더 중요하지 않을까 생각한다 테스트에서 변별력을 느끼지 못해 자소서를 만족스럽게 쓰지 못한 점이 아쉬웠다 (2021.11.19. 1차 합격했습니다!) 온라인 코딩테스트 4시간 7문항이 출제됐다 어려운 문제는 사실 없었다 어떻게보면 당연했다 다른 사람이랑 같이 풀어도 확인할 방법이 없는데.......

내적 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 내적 #월간코드챌린지시즌1 문제 길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요. 이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 길이) 제한사항 a, b의 길이는 1 이상 1,000 이하입니다. a, b의 모든 수는 -1,000 이상 1,000 이하입니다. 입출력 예 입출력 예 설명 입출력 예 1) a와 b의 내적은 1*(-3) + 2*(-1) + 3*0 + 4*2 = 3 입니다. 입출력 예 2) a와 b의 내적은 (-1)*1 + 0*0 + 1*(-1) = -2 입니다. 방법 간단했다. 하나 씩 곱해서 더하면 되기 때문에 sum 함수를 사용했다 sum 함수는 굳이 리.......

음양더하기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 음양 더하기 #월간코드챌린지시즌2 문제 어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 return 하도록 solution 함수를 완성해주세요. 제한사항 absolutes의 길이는 1 이상 1,000 이하입니다. absolutes의 모든 수는 각각 1 이상 1,000 이하입니다. signs의 길이는 absolutes의 길이와 같습니다. signs[i] 가 참이면 absolutes[i] 의 실제 정수가 양수임을, 그렇지 않으면 음수임을 의미합니다. 입출력 예 입출력 예 설명 입출력 예 1) signs가 [true,false,true] 이므로, 실제 수들의 값.......

없는 숫자 더하기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 없는 숫자 더하기 #월간코드챌린지시즌3 문제 0부터 9까지의 숫자 중 일부가 들어있는 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ numbers의 길이 ≤ 9 0 ≤ numbers의 모든 수 ≤ 9 numbers의 모든 수는 서로 다릅니다. 입출력 예 입출력 예 설명 입출력 예 1) 5, 9가 numbers에 없으므로, 5 + 9 = 14를 return 해야 합니다. 입출력 예 2) 1, 2, 3이 numbers에 없으므로, 1 + 2 + 3 = 6을 return 해야 합니다. 방법 간단한 문제였다. 0부터 9까지 더하면 45다. numbers의 요소들의 합을 sum으로.......

38_리스트 복사하기 (copy, deepcopy) [Python_코딩도장] [내부링크]

- 리스트를 왜 복사할까? - 리스트를 복사하는 방법 - 2차원 리스트는 안되는데요? - copy 모듈 사용하기 리스트를 왜 복사할까? a = [1, 2, 3, 4] 리스트가 이미 있는 상태에서, b 리스트를 a와 똑같이 만들고 싶다면 당연하게 b = a 를 사용할 것이다 근데 이 방법엔 하나의 맹점이 있다 이어서 아래와 같이 작성하면 요오상스러운 상황이 나타난다 a 의 인덱스를 바꿨더니 b의 인덱스도 바뀐 요상스러운 상황이 나타났다 이 상황을 해결하고자 한다면 copy 매소드를 사용해야한다 리스트를 복사하는 방법 - list.copy( ) : 리스트 뒤에 copy() 매소드를 사용한다 a == b지만 a는 b는 아니다 a와 b는 다르지만 값은 같다 라.......

39_리스트에서 하나씩 출력하기 (+ enurmerate 사용하기) [Python_코딩도장] [내부링크]

- for문을 사용해 알고 있는 방법으로 출력하기 - for 문을 더 간단하게 사용하는 방법 - 인덱스 번호도 출력하기 (enurmerate 사용하기) - enurmerate 응용하기 for문을 사용해 알고 있는 방법으로 출력하기 for 문을 이미 알고 있다면 리스트를 출력할 수 있다 인덱스 번호 순서대로(0부터 len(a) - 1까지) 출력하는 방법이다 그렇지만 더 직관적으로 하나씩 꺼내서 출력하는 방법이 있다 for 문을 더 간단하게 사용하는 방법 - for 요소 in 리스트 : 아래의 예시에서 i를 요소로, a를 리스트로 했다 리스트 a의 요소(i)를 하나씩 꺼내 사용할 수 있다 인덱스 번호도 출력하기 (enurmerate 사용하기) - for index, value in enurmerate(리스트.......

계란라면 + 참치김밥 (상수 봉봉) [홍대학식투어] [내부링크]

홍대학식투어 다른 학교의 학식이 부러웠던 적이 있다 다양한 메뉴. 싼 가격. 부러웠다 급식처럼 나오는 홍대의 4200원짜리 학식은 그것만의 매력이 있을 것이다 그러나 나는 학식을 대체할 식당들을 찾아 투어를 떠난다 홍대 근처의 식당 물가는 가성비를 찾기 쉽지 않았고 그마저도 코로나 시국을 거치며 사라져가고 있다 나는 홍대 가성비 식사 문화를 기록하고자 한다 " ㄷㄷ 야무지네 " 국민음식하면 떠오르는 메뉴가 있다 그 중에서 라면, 김밥은 빠진 적이 없다 김밥 천국, 김밥 나라. 에스파처럼 하나의 세계관을 진작 구축한 '김밥'의 힘은 '국민'이 붙기에 부족함이 없다 그리고 한국인이 가장 사랑하는.......

1912_연속합 [백준 문제풀이] [내부링크]

1912_연속합 (Python) 알고리즘 분류 #다이나믹프로그래밍 문제 n개의 정수로 이루어진 임의의 수열이 주어진다. 우리는 이 중 연속된 몇 개의 수를 선택해서 구할 수 있는 합 중 가장 큰 합을 구하려고 한다. 단, 수는 한 개 이상 선택해야 한다. 예를 들어서 10, -4, 3, 1, 5, 6, -35, 12, 21, -1 이라는 수열이 주어졌다고 하자. 여기서 정답은 12+21인 33이 정답이 된다. 입력 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다. 출력 첫째 줄에 답을 출력한다. 예제 입력 1 10 10 -4 3 1 5 6 -35 12 21 -1 예제 출력 1 33 .......

40_리스트 (튜플) 전체 합 구하기(sum), 최대값, 최소값(max,min) 구하기 [Python_코딩도장] [내부링크]

목차 - 리스트 전체 합 구하기 (sum 함수 사용하기) - 최대값, 최소값 구하기 (max, min 함수 사용하기) 리스트 전체 합 구하기 (sum 함수 사용하기) 리스트나 튜플 등등에서 모든 수의 합을 구해야할 때 가장 먼저 떠오르는 방식은 for 문이다 a = [1, 2, 3, 4, 5] 라는 리스트가 있다고 하자, 모든 요소의 합을 구한다면 15가 될 것이다 이 과정은 번거롭다. for 문도 써야하고 count 라는 변수도 선언해야하는 등 번거롭다 이때 사용하는 함수가 sum이다 - sum(리스트 or 튜플 or 무언가) 이 sum 함수는 굳이 리스트, 튜플이 아니더라도 반복가능한 객체(iterable)라면 모두 가능하다 반복 가능한 객체가 모두 가능하다는 말은 아래와 같.......

파이썬에서 스택, 큐 구현하기 [Python] [내부링크]

목차 - 스택(stack)과 큐(queue) - 스택(stack) 구현하기 - 큐(queue) 구현하기 - deque 사용하기 스택(stack)과 큐(queue) 스택은 통 안에 물건들을 차례대로 넣고 차례대로 꺼내는 방식이다 끝이 막혀있고 입구와 출구가 같은 프링글스 통 느낌의 자료구조다 가장 먼저 통에서 뺄 수 있는 요소는 가장 마지막에 넣은 요소가 된다 큐는 입구와 출구가 따로 있는 파이프와 같은 형태를 생각하면 된다 가장 먼저 파이프에 넣은 물건이 가장 먼저 나오고, 가장 늦게 넣은 물건이 가장 늦게 나온다 스택(stack) 구현하기 파이썬에선 리스트가 스택을 구현하기 아주 편하게 되있다 원통에 과자를 담는다고 생각해보면서 append(push를 할 때 사용), p.......

9935_문자열 폭발 (Python) [백준 문제풀이] (수정예정) [내부링크]

2581_소수 (Python) 알고리즘 분류 #자료 구조 #문자열 #스택 문제 상근이는 문자열에 폭발 문자열을 심어 놓았다. 폭발 문자열이 폭발하면 그 문자는 문자열에서 사라지며, 남은 문자열은 합쳐지게 된다. 폭발은 다음과 같은 과정으로 진행된다. 문자열이 폭발 문자열을 포함하고 있는 경우에, 모든 폭발 문자열이 폭발하게 된다. 남은 문자열을 순서대로 이어 붙여 새로운 문자열을 만든다. 새로 생긴 문자열에 폭발 문자열이 포함되어 있을 수도 있다. 폭발은 폭발 문자열이 문자열에 없을 때까지 계속된다. 상근이는 모든 폭발이 끝난 후에 어떤 문자열이 남는지 구해보려고 한다. 남아있는 문자가 없는 경우가 있다. 이때는 "FRULA&quo.......

완주하지 못한 선수 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 완주하지 못한 선수 #해시 문제 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. 참가자 중에는 동명이인이 있을 수 있습니다. 입출력 예 입출력 예.......

소수 만들기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. x만큼 간격이 있는 n개의 숫자 (Summer / Winter Coding(~2018)) 문제 주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 합니다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 소수가 되는 경우의 개수를 return 하도록 solution 함수를 완성해주세요. 제한사항 nums에 들어있는 숫자의 개수는 3개 이상 50개 이하입니다. nums의 각 원소는 1 이상 1,000 이하의 자연수이며, 중복된 숫자가 들어있지 않습니다. 입출력 예 입출력 예 설명 입출력 예 1) [1,2,4]를 이용해서 7을 만들 수 있습니다. 입출력 예 2) [1,2,4]를 이용해서 7을 만들 수 있.......

2021. 10월 결산 [월간소울치킨] [내부링크]

9월 26일부터 블로그를 시작해 10월까지 100개가 조금 넘는 게시글을 올렸다 이번 1달 동안의 일들을 기록하려고한다 9월 21일정도에 휴학을 하고 명절을 지나 9월 24일정도에 코딩공부를 시작했다 휴학이후의 삶과 코딩공부는 블로그 운영과 같이 이뤄졌다고 볼 수 있다 공부를 한 내용을 정리하면서 복습하는 취지로 블로그를 시작했다 그리고 지금은 그저 정리가 아니라 나처럼 처음 공부했을 때, 나중에 내가 까먹었을 때 궁금할 수 있는 내용을 바로 찾을 수 있도록 짧은 호흡으로 간단하게 정리되게 적고있다 다른 사람들이 나와 비슷한 고민을 하며 검색을 하고 이 블로그를 찾는 경우가 생기고 있다 블로그에 진심이되고 동기부여가 되는.......

2016년 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 2016년 (연습문제) 문제 2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까지 각각 SUN,MON,TUE,WED,THU,FRI,SAT 입니다. 예를 들어 a=5, b=24라면 5월 24일은 화요일이므로 문자열 "TUE"를 반환하세요. 제한 조건 2016년은 윤년입니다. 2016년 a월 b일은 실제로 있는 날입니다. (13월 26일이나 2월 45일같은 날짜는 주어지지 않습니다) 입출력 예 방법 직관적으로 생각하려고 했다 1. 각 월의 일 수는 31,29,31, ... , 31 이므로 month 리스트로 정리했다. 1월.......

K번째 수 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. x만큼 간격이 있는 n개의 숫자 #정렬 문제 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 2에서 나온 배열의 3번째 숫자는 5입니다. 배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 solution 함수를 작성해주세요. 제한사항 array의 길이는.......

체육복 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. x만큼 간격이 있는 n개의 숫자 #탐욕법 #Greedy 문제 함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. 제한 조건 입력된 수, num은 1 이상 8000000 미만인 정수입니다. 입출력 예시 방법 1. set 연산을 사용해 잃어버린 사람 중, 예비용이 있는 사람을 제외했다. 그리고 리스트화 했다 (lost_man) 2. 안 잃어버린 사람 중 예비용이 있는 사람의 리스트를 만들고 정렬했다 (reserve_man) 3. reserve_man에서 하나씩 꺼내서 번호보다 1 작거나 1 큰 수가 lost_man에 있다면 빌려주는 것.......

모의고사 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 모의고사 #완전탐색 문제 함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. 제한 조건 입력된 수, num은 1 이상 8000000 미만인 정수입니다. 입출력 예시 방법 1. 최대 10000개의 문제가 출제될 수 있으므로 아예 세 사람의 답안지를 10000자리까지 만들어놨다 2. 각 사람의 점수를 score 리스트에 담으려고 한다 3. for문을 통해 answers의 답들을 하나씩 꺼내 답안지와 비교하고 답이면 score의 각 사람의 점수를 1 올린다 4. score에서 가장 큰 수 (x)를 찾고, x 점수를 가진 사람을.......

14719_빗물 (Python) [백준 문제풀이] [내부링크]

14719_빗물 (Python) 알고리즘 분류 #구현 #시뮬레이션 문제 2차원 세계에 블록이 쌓여있다. 비가 오면 블록 사이에 빗물이 고인다. 비는 충분히 많이 온다. 고이는 빗물의 총량은 얼마일까? 입력 첫 번째 줄에는 2차원 세계의 세로 길이 H과 2차원 세계의 가로 길이 W가 주어진다. (1 ≤ H, W ≤ 500) 두 번째 줄에는 블록이 쌓인 높이를 의미하는 0이상 H이하의 정수가 2차원 세계의 맨 왼쪽 위치부터 차례대로 W개 주어진다. 따라서 블록 내부의 빈 공간이 생길 수 없다. 또 2차원 세계의 바닥은 항상 막혀있다고 가정하여도 좋다. 출력 2차원 세계에서는 한 칸의 용량은 1이다. 고이는 빗물의 총량을 출력하여라. 빗물이 전혀 고이지 않을 경.......

실패율 (Python) #KAKAO [프로그래머스 문제풀이] (수정예정) [내부링크]

Level 1. 실패율 #2019KAKAOBLINDRECRUITMENT 문제 슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스테이지 차이가 너무 큰 것이 문제였다. 이 문제를 어떻게 할까 고민 한 그녀는 동적으로 게임 시간을 늘려서 난이도를 조절하기로 했다. 역시 슈퍼 개발자라 대부분의 로직은 쉽게 구현했지만, 실패율을 구하는 부분에서 위기에 빠지고 말았다. 오렐리를 위해 실패율을 구하는 코드를 완성하라. 실패율은 다음과 같이 정의한다. 스테이지에 도달했으나 아직 클리어하지 못한 플레이어의 수 / 스테이지에 도달.......

폰켓몬 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1.폰켓몬 #찾아라프로그래밍마에스터 문제 당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다. 홍 박사님 연구실의 폰켓몬은 종류에 따라 번호를 붙여 구분합니다. 따라서 같은 종류의 폰켓몬은 같은 번호를 가지고 있습니다. 예를 들어 연구실에 총 4마리의 폰켓몬이 있고, 각 폰켓몬의 종류 번호가 [3번, 1번, 2번, 3번]이라면 이는 3번 폰켓몬 두 마리, 1번 폰켓몬 한 마리, 2번 폰켓몬 한 마리가 있음을 나타냅니다. 이때, 4마리의 폰켓몬 중 2마리를 고르는 방법은 다음과 같이 6가지가 있습.......

3진법 뒤집기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 3진법 뒤집기 (월간 코드 챌린지 시즌 1) 문제 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. 제한사항 n은 1 이상 100,000,000 이하인 자연수입니다. 입출력 예 입출력 예 설명 입출력 예 1) 답을 도출하는 과정은 다음과 같습니다. 따라서 7을 return 해야 합니다. 입출력 예 2) 답을 도출하는 과정은 다음과 같습니다. 따라서 229를 return 해야 합니다. 방법 3진법은 3으로 계속 나누면서 나오는 나머지를 마지막 것부터 나열하는 것이다 그렇기 때문에 가장 먼저 나눈 나머지가 맨 마지막에 오게 된다 그 점을 사용해 가.......

2023_신기한 소수 (Python) [백준 문제풀이] [내부링크]

2023_신기한 소수 (Python) 알고리즘 분류 #수학 #정수론 #백트래킹 #소수판정 문제 수빈이가 세상에서 가장 좋아하는 것은 소수이고, 취미는 소수를 가지고 노는 것이다. 요즘 수빈이가 가장 관심있어 하는 소수는 7331이다. 7331은 소수인데, 신기하게도 733도 소수이고, 73도 소수이고, 7도 소수이다. 즉, 왼쪽부터 1자리, 2자리, 3자리, 4자리 수 모두 소수이다! 수빈이는 이런 숫자를 신기한 소수라고 이름 붙였다. 수빈이는 N자리의 숫자 중에서 어떤 수들이 신기한 소수인지 궁금해졌다. N이 주어졌을 때, 수빈이를 위해 N자리 신기한 소수를 모두 찾아보자. 입력 첫째 줄에 N(1 ≤ N ≤ 8)이 주어진다. 출력 N자리 수 중에서 신기한 소수.......

백준 골드 달성 후기 [내부링크]

레벨별로 풀기로 문제들을 쭉 풀었더니 실버 2까진 어떻게든 됐다 2주일정도 꾸준히 하니 처음부터 실버 1까지 갈 수 있었다 실버 1까지 꾸역꾸역 올라온 후엔 프로그래머스나 프로젝트 경험을 쌓기 위해 잠시 멈춰두고 하루에 한 두 문제만 풀면서 '잔디심기'를 했다 중간중간 골드 문제도 몇 문제 풀고 그러다보니 경험치를 꽤나 채웠고 간만에 생긴 여유 시간을 활용해 실버문제를 빠르게 여러 문제 풀어 실버를 탈출 했다 사실 골드라고 어렵고 실버라고 쉬운 문제는 아닌 것 같다 파이썬으로 풀어서 그런건지 생각보다 많이 쉽게 풀리는 골드 문제도 있었고 아직도 실패한 채로 남겨놓은 실버 문제가 너무 많다 자료구조에 대한 이.......

로스카츠 + 쌀국수 세트 (PhoBo 홍대점) [홍대학식투어] [내부링크]

홍대학식투어 다른 학교의 학식이 부러웠던 적이 있다 다양한 메뉴. 싼 가격. 부러웠다 급식처럼 나오는 홍대의 4200원짜리 학식은 그것만의 매력이 있을 것이다 그러나 나는 학식을 대체할 식당들을 찾아 투어를 떠난다 홍대 근처의 식당 물가는 가성비를 찾기 쉽지 않았고 그마저도 코로나 시국을 거치며 사라져가고 있다 나는 홍대 가성비 식사 문화를 기록하고자 한다 돈까스 먹으러 가자 돈까스를 먹으러 가자는 말은 실패 할 수 없기에 과거엔 아이를 병원에 데려가는 주문으로 쓰곤 했다 대한민국 남성의 3대 소울푸드라고 한다면 국밥, 돈까스,제육이라 할 수 있는데, 그 중 오늘은 돈까스를 먹어볼까 한다 학식을 대체하기 위해 찾은만.......

철판제육덮밥 (국시와가래떡) [홍대학식투어] [내부링크]

홍대학식투어 다른 학교의 학식이 부러웠던 적이 있다 다양한 메뉴. 싼 가격. 부러웠다 급식처럼 나오는 홍대의 4200원짜리 학식은 그것만의 매력이 있을 것이다 그러나 나는 학식을 대체할 식당들을 찾아 투어를 떠난다 홍대 근처의 식당 물가는 가성비를 찾기 쉽지 않았고 그마저도 코로나 시국을 거치며 사라져가고 있다 나는 홍대 가성비 식사 문화를 기록하고자 한다 남자는 무조건 '제육' 아니면 '돈까스' 학식을 자주 먹을 시절, 제육과 돈까스가 나오는 날은 무조건이었다 대한민국 남성의 3대 소울푸드 제육, 돈까스, 국밥 중에서 한 축을 자랑하는 제육, 오늘은 한 번 남자들이 빠질 수 밖에 없는 마성의 제육에 한.......

약수의 개수와 덧셈 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. x만큼 간격이 있는 n개의 숫자 #월간코드챌린지시즌3 문제 두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ left ≤ right ≤ 1,000 입출력 예 입출력 예 설명 입출력 예 1) 다음 표는 13부터 17까지의 수들의 약수를 모두 나타낸 것입니다. 따라서, 13 + 14 + 15 - 16 + 17 = 43을 return 해야 합니다. 입출력 예 2) 다음 표는 24부터 27까지의 수들의 약수를 모두 나타낸 것입니다. 따라서, 24 - 25 + 26 + 27 = 52를 return 해야 합니다. 약수의.......

두 개 뽑아서 더하기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 두 개 뽑아서 더하기 (월간 코드 챌린지 시즌 1) 문제 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한사항 numbers의 길이는 2 이상 100 이하입니다. numbers의 모든 수는 0 이상 100 이하입니다. 입출력 예 입출력 예 설명 입출력 예 1) 2 = 1 + 1 입니다. (1이 numbers에 두 개 있습니다.) 3 = 2 + 1 입니다. 4 = 1 + 3 입니다. 5 = 1 + 4 = 2 + 3 입니다. 6 = 2 + 4 입니다. 7 = 3 + 4 입니다. 따라서 [2,3,4,5,6,7] 을 return 해야 합니다.......

예산 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 예산 (Summer / Winter Coding(~2018)) 문제 S사에서는 각 부서에 필요한 물품을 지원해 주기 위해 부서별로 물품을 구매하는데 필요한 금액을 조사했습니다. 그러나, 전체 예산이 정해져 있기 때문에 모든 부서의 물품을 구매해 줄 수는 없습니다. 그래서 최대한 많은 부서의 물품을 구매해 줄 수 있도록 하려고 합니다. 물품을 구매해 줄 때는 각 부서가 신청한 금액만큼을 모두 지원해 줘야 합니다. 예를 들어 1,000원을 신청한 부서에는 정확히 1,000원을 지원해야 하며, 1,000원보다 적은 금액을 지원해 줄 수는 없습니다. 부서별로 신청한 금액이 들어있는 배열 d와 예산 budget이 매개변수로 주어질 때, 최대 몇 개의 부서에 물.......

03_숫자 연산 / 자료형 [Python_코딩도장] [내부링크]

숫자 자료형(Type) - 정수 (int), 실수 (float), 복소수 (complex) int() 함수 괄호 안에 있는 숫자를 정...

09_print 로 여러 값 출력하기 [Python_코딩도장] [내부링크]

print 함수로 여러 값 출력하기 print 함수 안에 ,(콤마)를 넣어 나누면 한번에 여러 값을 출력할 수 있다 ...

14_문자열 만들기 [Python_코딩도장] [내부링크]

문자열 문자열을 가장 편하게 만드는 방법은 ' '(따옴표)로 묶는 것이다 (작은 따옴표, 큰 따옴...

17_리스트를 튜플로, 튜플을 리스트로 (+ 문자열을 리스트, 튜플로) [Python_코딩도장] [내부링크]

리스트를 튜플로, 튜플을 리스트로 list(튜플), tuple(리스트) 튜플을 list()에 넣으면 리스트로, 리스트를...

04_속성(Attributes)과 값(Value) [HTML] [내부링크]

속성(Attributes) 속성은 태그(요소)의 기능을 확장하기 위해 사용한다 열리는 태그 안에 속성 = &q...

24_슬라이스로 리스트의 요소 할당, 삭제하기 [Python_코딩도장] [내부링크]

슬라이스로 리스트의 요소 할당하기 - 시퀀스객체[시작:끝] = 들어갈 시퀀스객체 기본적으론 위의 형...

05_부모 요소(parent element) & 자식 요소(child element) [HTML] [내부링크]

부모 요소(parent element)와 자식 요소(child element) 부모 요소와 자식 요소는 상대적인 관계다 부모 요...

06_빈 태그 (empty tag) [HTML] [내부링크]

빈 태그 (empty tag) 보통 태그를 사용할때에는 열리는 태그, 닫히는 태그 2개를 한 쌍으로 사용한다 <...

25_딕셔너리 (dictionary) [Python_코딩도장] [내부링크]

딕셔너리 (dictionary) 리스트나 튜플은 인덱스를 사용해 일렬로 저장한다 각 요소별로 특징을 적어주고 싶...

07_DOCTYPE(DTD),HTML 태그 [HTML] [내부링크]

DOCTYPE (Document Type Definition) HTML 버전에 따라 브라우저가 해석하는 방식이 다르게 ...

08_head 태그에 들어가는 태그 (title, meta, link) [HTML] [내부링크]

title 태그 HTML 문서, 웹페이지의 제목이 들어간다 웹브라우저 창의 이름으로 노출된다 meta 태그 H...

09_HTML 문서에서 CSS,JS 작성하기(style, script 태그) (+ JS 불러오기) [HTML] [내부링크]

CSS 작성하기 - style 태그 HTML로 만들어진 구조를 꾸며주는 CSS를 HTML 문서 내에서 작성...

26_딕셔너리 키(key)로 접근해서 값 할당하기 (+키 개수 구하기) [Python_코딩도장] [내부링크]

딕셔너리의 키(key) 접근하여 값 확인, 값 할당하기 - 딕셔너리[key] 형식으로 접근한다 [ ](대괄호) 안에 ...

10_body 태그에 들어가는 태그(div, img 태그) [HTML] [내부링크]

BODY 태그는 HTML 문서에서 주요 내용이 들어가는 몸통이다 div 태그 division, 분할을 뜻한다 문...

11_웹 표준 검사 [HTML] [내부링크]

웹 표준 검사 W3C에서 표준 여부 판단을 할 수 있다 (아래 링크) http://validator.kldp.org/ (URL, ...

27_if 조건문 (+ if 중첩문) [Python_코딩도장] [내부링크]

if 조건문 if문을 사용할 때 Python에서는 들여쓰기를 사용한다 기본적인 형태는 아래와 같다 조건식만 작...

x만큼 간격이 있는 n개의 숫자 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. x만큼 간격이 있는 n개의 숫자 문제 함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시...

28_if else 조건문으로 분기하기 [Python_코딩도장] [내부링크]

if else 조건문 if 조건이 충족되지 않으면 else의 코드를 실행한다 만약 ~ 하면 A 하고, 아니면 B 한다 ...

행렬의 덧셈 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 행렬의 덧셈 문제 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서...

핸드폰 번호 가리기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 핸드폰 번호 가리기 문제 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들...

하샤드 수 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 하샤드 수 문제 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예...

평균 구하기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 평균 구하기 문제 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보...

콜라츠 추측 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 콜라츠 추측 문제 1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될때까지 ...

짝수와 홀수 (Python) #비트연산자 [프로그래머스 문제풀이] [내부링크]

Level 1. 짝수와 홀수 문제 정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Od...

제일 작은 수 제거하기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 제일 작은 수 제거하기 문제 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴...

30_for 반복문 [Python_코딩도장] [내부링크]

for 반복문 (range 사용) 위 양식으로 사용한다 0부터 range 안에 적힌 수까지 생성해 변수에 하나씩 꺼내 ...

06_태그 선택자, 클래스 선택자 [CSS] [내부링크]

선택자는 HTML의 요소를 선택하는 사인(sign)이다 대표적으로는 태그 선택자, 클래스 선택자 2가지가 ...

정수 제곱근 판별 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 정수 제곱근 판별 문제 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판...

정수 내림차순으로 배치 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 정수 내림차순으로 정리 문제 함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿...

자연수 뒤집어 배열로 만들기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 자연수 뒤집어 배열로 만들기 (연습문제) 문제 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는...

자릿수 더하기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 자릿수 더하기 (연습문제) 문제 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하...

31_시퀀스 객체(list,tuple,string)와 for 반복문 [Python_코딩도장] [내부링크]

시퀀스 객체를 for 반복문으로 반복하기 리스트, 튜플, 문자열과 같은 시퀀스 객체에서 인덱스별로 하나하...

07_요소의 크기를 정하는 속성 (width, height) [CSS] [내부링크]

width (가로 너비) 요소의 가로 너비, 단위는 픽셀(px)이다 div 선택자는 가로 너비를 100px로 하겠다면 아...

08_요소의 글자의 크기를 정하는 속성 (font-size) [CSS] [내부링크]

font-size (글자 크기) 요소에 들어가는 글자 크기를 지정한다 크기는 px 단위를 사용한다 (예시) (CSS)...

32_while 반복문 (+ idle에서무한루프 강제종료 단축키)[Python_코딩도장] [내부링크]

while 반복문 양식은 아래와 같다 while이 시작되면 조건문의 조건이 False 일 때까지 반복한다 순서는 아...

09_여백의 크기를 정하는 속성(margin, padding) [CSS] [내부링크]

여백 관련 속성은 대표적으로 margin, padding이 있다 (예시는 맨 아래에 같이 넣었다) margin (요소의 바...

33_반복문 중단하기, 건너뛰기 (break,continue) [Python_코딩도장] [내부링크]

for, while 문에서 중간에 루프를 중단하고 싶을 때 break 루프는 이어가지만 코드의 실행만 건너 뛸 때 co...

10_글자, 요소의 색상을 지정하는 속성(color, background-color) [CSS] [내부링크]

color (글자 색) 요소의 text, 글자 색을 지정하는 속성이다 (font-color, text-color는 없는 속성) backgr...

이상한 문자 만들기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 이상한 문자 만들기 (연습문제) 문제 문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단...

약수의 합 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 약수의 합 (연습문제) 문제 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solut...

시저 암호 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 시저 암호 (연습문제) 문제 어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 ...

1929_소수 구하기 (Python) #에라토스테네스의 체 [백준 문제풀이] [내부링크]

1929_소수 구하기 (Python) 알고리즘 분류 #수학 #정수론 #소수판정 #에라토스테네스의체 문제 M이상 N...

문자열을 정수로 바꾸기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 문자열을 정수로 바꾸기 (연습문제) 문제 문자열 s를 숫자로 변환한 결과를 반환하는 함수, solu...

수박수박수박수박수박수? (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 수박수박수박수박수박수? (연습문제) 문제 이가 n이고, "수박수박수박수...."와 같은 ...

1026_보물 (Python) [백준 문제풀이] [내부링크]

1026_보물 (Python) 알고리즘 분류 #수학, #그리디알고리즘, #정렬 문제 옛날 옛적에 수학이 항상 큰 골칫...

34_중첩 for 반복문 [Python_코딩도장] [내부링크]

반복문 안에 반복문 안에 반복문 안에 반복문... 중첩 루프 반복문 안에 반복문이 들어가는 형태를 중첩 루...

Jupyter Notebook이 켜지긴 하는데 실행이 안될 때 [Anaconda] [내부링크]

Jupyter notebook이 켜졌는데 실행이 안될 때 요즘 블로그 검색 유입에 주피터 노트북이 실행 안될 때 라...

소수 찾기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 소수 찾기 (연습문제) 문제 1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, s...

서울에서 김서방 찾기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 서울에서 김서방 찾기 (연습문제) 문제 String형 배열 seoul의 element중 "Kim"의 ...

문자열 다루기 기본 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 문자열 다루기 기본 (연습문제) 문제 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 ...

14659_한조서열정리하고옴ㅋㅋ (Python) [백준 문제풀이] [내부링크]

14659_한조서열정리하고옴ㅋㅋ (Python) 알고리즘 분류 #그리디알고리즘 문제 “반갑다. 내 이름은 반고흐...

문자열 내림차순으로 배치하기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. x만큼 간격이 있는 n개의 숫자 (연습문제) 문제 문자열 s에 나타나는 문자를 큰것부터 작은 순으...

문자열 내 p와 y의 개수 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 문자열 내 p와 y의 개수 (연습문제) 문제 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s...

문자열 내 마음대로 정렬하기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 문자열 내 마음대로 정렬하기 (연습문제) 문제 문자열로 구성된 리스트 strings와, 정수 n이 주...

두 정수 사이의 합 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 두 정수 사이의 합 (연습문제) 문제 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의...

나누어 떨어지는 숫자 배열 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 나누어 떨어지는 숫자 배열 (연습문제) 문제 array의 각 element 중 divisor로 나누어 떨어지는 ...

같은 숫자는 싫어 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 같은 숫자는 싫어 (연습문제) 문제 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9...

다트게임 (Python) #KAKAO [프로그래머스 문제풀이] [내부링크]

Level 1. 다트 게임 (2018 KAKAO BLIND RECRUITMENT) 문제 카카오톡에 뜬 네 번째 ...

가운데 글자 가져오기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 가운데 글자 가져오기 (연습문제) 문제 단어 s의 가운데 글자를 반환하는 함수, solution을 만들...

35_list에 요소 추가하기, 삭제하기 [Python_코딩도장] [내부링크]

- list에 요소 추가하기 (append, insert, extend) - list에 요소 삭제하기 (pop, del, remove, clear) - ...

36_리스트 특정 값 위치, 개수 구하기 [Python_코딩도장] [내부링크]

- 리스트에서 특정 값 인덱스 구하기 - 리스트에서 특정 값의 개수 구하기 리스트에서 특정 값 인덱스 구하...

37_리스트 순서 뒤집기, 정렬하기 (+반대로 정렬하기) [Python_코딩도장] [내부링크]

- 리스트 순서 뒤집기 - 리스트 정렬하기 - ( + 리스트 반대로 정렬하기) 리스트 순서 뒤집기 (reverse) - ...

비밀지도 (Python) #KAKAO [프로그래머스 문제풀이] [내부링크]

Level 1. 비밀지도 (2018 KAKAO BLIND RECRUITMENT) 문제 네오는 평소 프로도가 비...

부족한 금액 계산하기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. x만큼 간격이 있는 n개의 숫자 (위클리챌린지_1주차) 문제 새로 생긴 놀이기구는 인기가 매우 많...

나머지가 1이 되는 수 찾기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. x만큼 간격이 있는 n개의 숫자 (월간 코드 챌린지 시즌 3) 문제 자연수 n이 매개변수로 주어집니...

파이썬 주석 단축키(idle, 파이참, VS Code) [내필기] [내부링크]

파이썬 idle 에서 주석 단축키 주석처리 하기 : Alt + 3 주석처리 풀기 : Alt + 4 파이참, VS Code 에...

Jupyter Notebook 기본 단축키, 명령어 [Anaconda] [내부링크]

Jupyter Notebook mode - 명령모드(esc) : 셀을 수정할 때 (파란색 불 들어옴) - 편집모드(enter) ; 셀 ...

최대공약수와 최소공배수 (Python) #유클리드호제법 [프로그래머스 문제풀이] [내부링크]

Level 1. 최대공약수와 최소공배수 문제 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 ...

01_CSS (Cascading Style Sheets) [CSS] [내부링크]

CSS (Cascading Style Sheets) HTML이라는 마크업 언어가 실제로 표현하는 방법 (색, 크기, 폰트...

02_CSS 기본 문법 [CSS] [내부링크]

CSS 기본 문법 선택자, 속성, 값으로 구성된다 (예시) div 선택자(Selector)에 글자 크기는 20px, 글자...

03_속성(Properties)과 값(Value) [CSS] [내부링크]

CSS에서 속성(Properties)과 값(Value) 글자 크기, 글자 색, 여백 등의 속성을 값으로 조절한다 HT...

직사각형 별찍기 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 직사각형 별찍기 (Python) 문제 이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다. ...

04_CSS를 HTML 내에서 선언하는 방법 [CSS] [내부링크]

인라인 선언 태그에 직접 선언하는 방식으로, HTML에 CSS를 직접 작성하기 때문에 따로 선택자가 필...

05_CSS를 HTML에 연결하는 방법 (LINK 태그) [CSS] [내부링크]

link 태그 HTML에서 head 태그 내에 link 태그를 넣는다 위 소스 코드처럼 사용한다 rel은 HTML과 ...

29_if elif else 조건문으로 분기하기 [Python_코딩도장] [내부링크]

if elif else 조건문 if , else 만으로 나누면 2방향으로만 나눌 수 있다 여러 방향으로 조건을 나누고 싶...

23_시퀀스 슬라이스(slice) [Python_코딩도장] [내부링크]

시퀀스 슬라이스(slice) 시퀀스 객체의 일부를 잘라내는 방법 리스트, 튜플같은 시퀀스 자료형은 슬라이스 ...

03_HTML의 기본 문법 형태 (Tag) [HTML] [내부링크]

HTML tag <tag> 와 </tag> 사이에 넣고 싶은 컨텐츠를 넣게 된다 이런 태그를 요소라고 한...

02_웹 표준(Web Standard), 웹 접근성 [HTML] [내부링크]

웹 표준(Web Standard) 웹에서 사용되는 표준 기술, 규칙 (W3C의 권고안 REC에서 나온 기술) (W3C...

01_HTML (Hyper Text Markup Language) [HTML] [내부링크]

HTML (Hyper Text Markup Language) 웹의 구조. 튼튼하게 만들어야 한다 (semantic) 페이지의 제목...

22_리스트에서 요소 지우기 (del) [Python_코딩도장] [내부링크]

리스트에서 요소 지우기 (del) - del 시퀀스 객체[인덱스 번호] 형태로 사용한다 요소를 지우면 리스트의 ...

21_리스트 요소에 값 할당하기 [Python_코딩도장] [내부링크]

시퀀스 요소에 값 할당 객체의 인덱스 번호를 사용해 값을 할당할 수 있다 - 시퀀스 객체[인덱스 번호] &#x...

20_시퀀스 객체(list, tuple 등)의 인덱스(index) (+ 마지막 요소 접근 방법) [Python_코딩도장] [내부링크]

인덱스 (index) 시퀀스 객체에 들어있는 요소로 접근하는 방법이다 [ ] 괄호 안에 객체의 인덱스 번호(순서...

19_시퀀스 객체(list, tuple, range 등) 요소 개수(길이) 구하기 [Python_코딩도장] [내부링크]

요소 개수 구하기 시퀀스 객체의 길이 (length) 리스트나 튜플같은 시퀀스 객체의 요소 개수는 시퀀스 객체...

18_시퀀스(sequence) 자료형 (시퀀스 객체 연결, 반복) [Python_코딩도장] [내부링크]

시퀀스(sequence) 자료형 list, tuple, range, 문자열처럼 연속적으로 이어진 자료형 (bytes, bytearray라...

16_튜플 만들기 [Python_코딩도장] [내부링크]

튜플 (tuple) 리스트처러 변수를 일렬로 저장하는 방법이다 저장된 요소는 리스트랑 다르게 바꾸거나 추가,...

15_리스트 만들기 [Python_코딩도장] [내부링크]

리스트 변수 여러 개를 한 번에 다루기 위해서 리스트, 튜플 등을 사용한다 리스트의 경우엔 값들을 변경할...

13_논리 연산자 [Python_코딩도장] [내부링크]

and 연산자 and는 양쪽 모두 True 일 때에만 True 가 나온다 or 연산자 or 연산자는 양쪽 중 하나라도 T...

12_불(boolean)과 비교 연산자 [Python_코딩도장] [내부링크]

불(boolean) 연산자 참(True), 거짓(False)을 나타낸다 bool('값') 값이나 문자열을 bool에 넣...

11_print ()에서 end 사용하기 [Python_코딩도장] [내부링크]

print( 변수, end='문자') 형태 print ()함수는 기본적으로 출력이 끝나면 개행이 된다 1,...

10_print 줄바꿈 [Python_코딩도장] [내부링크]

print로 출력할 때 줄바꾸는 방법_1 print ()함수는 기본적으로 출력이 끝나면 개행이 된다 print로 출력할...

08_입력 값을 변수 여러 개에 저장하기 [Python_코딩도장] [내부링크]

.split() 인풋 함수 뒤에 .split()을 넣으면 여러 개 변수에 저장할 수 있다 스플릿 함수 괄호 안에 아무것...

07_입력 (input) [Python_코딩도장] [내부링크]

input 함수 input () 인풋 함수를 입력하면 그 다음 줄에 문자열을 입력할 수 있다 변수로 지정하여 사용도...

06_변수 계산 [Python_코딩도장] [내부링크]

변수를 사용한 변수 만들기 연산 20을 더한 값이 출력됐지만 a에 더한 값을 저장하지 않았기 때문에 a는 여...

05_변수 [Python_코딩도장] [내부링크]

변수(variable) 할당 (변수 이름) = (값) x라는 변수는 10이라는 값으로 할당(저장)된다 변수는 숫자...

04_숫자 연산 / 자료형_2 [Python_코딩도장] [내부링크]

정수와 실수 연산 정수와 실수가 연산을 하면 더 범위가 큰 실수형으로 표시된다. float () 함수 int () 함...

02_기본 문법 [Python_코딩도장] [내부링크]

세미콜론(;) 다른 언어는 세미콜론을 해야하지만 파이썬은 문법적으로 필요하지 않다. 한 줄 내에서 여러 ...

01_Hello World! [Python_코딩도장] [내부링크]

print('출력할 문장') = f(x) 수학과 거동이 같다. print는 출력을 요구하는 함수(functio...

최소직사각형 (Python) [프로그래머스 문제풀이] [내부링크]

Level 1. 최소직사각형 (위클리 챌린지_8주차) 문제 명함 지갑을 만드는 회사에서 지갑의 크기를 정하려고 합니다. 다양한 모양과 크기의 명함들을 모두 수납할 수 있으면서, 작아서 들고 다니기 편한 지갑을 만들어야 합니다. 이러한 요건을 만족하는 지갑을 만들기 위해 디자인팀은 모든 명함의 가로 길이와 세로 길이를 조사했습니다. 아래 표는 4가지 명함의 가로 길이와 세로 길이를 나타냅니다. 가장 긴 가로 길이와 세로 길이가 각각 80, 70이기 때문에 80(가로) x 70(세로) 크기의 지갑을 만들면 모든 명함들을 수납할 수 있습니다. 하지만 2번 명함을 가로로 눕혀 수납한다면 80(가로) x 50(세로) 크기의 지갑으로 모든 명함들을 수납할.......

2493_탑 (Python) [백준 문제풀이] [내부링크]

2493_탑 (Python) 알고리즘 분류 #자료구조 #스택 문제 KOI 통신연구소는 레이저를 이용한 새로운 비밀 통신 시스템 개발을 위한 실험을 하고 있다. 실험을 위하여 일직선 위에 N개의 높이가 서로 다른 탑을 수평 직선의 왼쪽부터 오른쪽 방향으로 차례로 세우고, 각 탑의 꼭대기에 레이저 송신기를 설치하였다. 모든 탑의 레이저 송신기는 레이저 신호를 지표면과 평행하게 수평 직선의 왼쪽 방향으로 발사하고, 탑의 기둥 모두에는 레이저 신호를 수신하는 장치가 설치되어 있다. 하나의 탑에서 발사된 레이저 신호는 가장 먼저 만나는 단 하나의 탑에서만 수신이 가능하다. 예를 들어 높이가 6, 9, 5, 7, 4인 다섯 개의 탑이 수평 직선에 일렬.......