profile
재미따 히히
post-thumbnail

[프로그래머스 LV3] 가장 긴 팰린드롬

문제설명 S의 길이가 n이라고 할 때, 0부터 N - 1 까지 의 문자열 이 가장 긴 문자열이다. 즉, 0부터 N-1, N-2, N-3, ... , 0 까지, 1부터 N-1, N-2, ... , 1 까지 ⋯⋯ N부터 N까지 이런 식으로 반복하며, 각각의 문자열이 펠린

2021년 3월 25일
·
0개의 댓글
post-thumbnail

[프로그래머스 LV3] 가장 먼 노드[프로그래머스 LV3] 가장 먼 노드

문제설명가장 먼 노드란, 자신밑에 하위노드가 없는 노드가 아니라 1 에서 가장 먼 노드 를 의미한다.각 노드가 1로부터 얼마나 떨어져 있는지 알면 쉬움.BFS 를 사용해서 각 노드가 얼마나 떨어져 있는지 확인하자. (현재 노드까지의 거리 = 이전 노드의 거리 + 1)

2021년 3월 25일
·
0개의 댓글

[알고리즘 Python]- Dijkstra, 다익스트라 알고리즘, 우선순위 큐 사용

Graph에서 원하는 노드 start node 에서, 특정 노드 target node 까지 가는 최소비용 찾는 알고리즘우선순위 큐우선순위 큐를 이용하면 가장 작은 비용의 값만 pop() 할 수 있다.이를 이용해서 작은 비용의 값만을 비교해서 traget node 까지

2021년 3월 18일
·
0개의 댓글
post-thumbnail

[프로그래머스 LV3] 순위

return 해야하는 수: 정확하게 순위를 매길 수 있는 선수의 수\-> 정확하게 순위를 매길 수 있을 경우를 알아 내야 한다.입출력 예 에서 알 수 있는 것 2가지어떤 선수 A가 B를 이겼으면 B가 이긴 선수들은 A가 이긴다.어떤 선수 A가 C한테 졌으면 C를 이긴

2021년 3월 16일
·
0개의 댓글

N-queens[Python]

N개의 여왕을 N X N 체스판에 잡아 먹히지 않도록 놓는 방법 의 수를 찾기. (여왕은 대각선, 같은행, 같은열에 있는 것들을 먹어 치운다)N개의 여왕을 각각 N개의 행에 자리를 준다.2번째 열부터 대각선에 여왕이 있는지, 같은열에 여왕이 있는지 검사한다.재귀호출을

2021년 3월 15일
·
0개의 댓글

하노이의 탑[Python]

가운데 기둥을 이용해서 왼쪽 기둥에 놓인 크기가 다른 원판을 오른쪽 기둥으로 옮기는 문제,이 때 원판은 한번에 한 개씩만 옮길 수 있으며, 작은 원판 위에 큰 원판이 놓일 수 없다.재귀 풀이를 이용하여 푸는 문제중에서 가장 유명한 문제.그러면 어떻게?일반화를 하기 위해

2021년 3월 15일
·
0개의 댓글

[Gatsby JS - Typescript] StyledComponent 로 Dark Theme 구현하기.

Gatsby JS를 간단히 말하자면 정적페이지이다.그래서 동적으로 Javascript 코드로 CSS를 바꾸는 방법은 정적페이지인 Gatsby JS에는 CRA로 만드는 웹페이지와 다르게 해줘야한다.작성중Styled Component에서 제공하는 Theme(직접 커스텀)

2021년 3월 12일
·
1개의 댓글

[알고리즘- 파이썬] 최대공약수(유클리드 호제법), 최소공배수

최대 공약수란, 숫자 a, b가 주어졌을 떄, 공통되는 약수 중에서 최대 값을 의미한다.찾지 않아도 되는 약수들 까지 구해야하기 때문에 효율적이지 않다.유클리드 호제법이란, 숫자 a, b가 있을 때, a를 b로 나눈 나머지와 b 의최대 공약수 는 a 와 b 의 최대 공

2021년 2월 12일
·
0개의 댓글
post-thumbnail

[코딩테스트] 소수찾기 알고리즘, 에라토스네스의 체(python)

소수찾기 알고리즘 소수란, 1과 자기 자신을 제외한 숫자로 나누어 떨어지지 않는 숫자를 의미한다. (즉, 약수가 1, 자기자신 을 제외하고는 없음을 의미) 소수는 어떻게 찾을까? 효율적이지 못한 방법 1. 2부터 값의 이전 값 까지 숫자를 1 씩 올려가며 나눠 떨

2021년 2월 12일
·
0개의 댓글
post-thumbnail

[프로그래머스 LV2] 행렬의 곱셈

앞부분의 행렬의 열과 뒷부분 행렬의 행의 갯수가 같을 때, 앞부분 행렬의 행과 뒷부분의 행렬의 열을 각각 행, 열로 갖는 새로운 행렬을 갖는 것이다.(A x M) X (M x B) 는 A x B 의 행렬이 만들어진다. A x B 의 각각의 요소는, A x M 행렬의 행

2021년 2월 11일
·
0개의 댓글
post-thumbnail

[프로그래머스 LV2] 숫자의 표현

이 문제는 아무리 풀어도 효율성이 떨어졌다. 그 이유를 알기 전에 내가 접근했던 방법에 대해서 말하자면,숫자를 표현하는 방법이 숫자 1개로 표현하는 방법,숫자를 2개로 표현하는 방법 ⋯ 숫자 N개로 표현 하는 방법이 있다고 생각했다.숫자 N개를 1부터 계속해서 증가

2021년 2월 9일
·
0개의 댓글

[프로그래머스 LV2] 땅따먹기

문제 접근법 잘못된 접근법 각 행에서 가장 큰 수를 찾는다. (이전 열과 동일한 열 제외하고) 가장 큰 수들을 더한다 잘못된 이유: [[2, 3, 4, 5], [1, 1, 1, 1000]] 일때, 첫번 째 행부터 각 행을 검사해서 가장 큰 수를 더할 때,

2021년 2월 9일
·
0개의 댓글

[코딩테스트 준비] 동적 프로그래밍 - 거스름돈 주기

위의 예시에서 14원을 거슬러줄 수 있는 방법은 아래와 같다.이를 봤을떄, 현재 change 에서 각각의 동전의 값을 뺀 값의 갯수 + 1 중에서 가장 작은 값을 return 해주면 된다.이렇게, 큰 값(14원) 의 갯수 를 작은 값(13원 일때, 12원 일때, 7원

2021년 2월 7일
·
0개의 댓글
post-thumbnail

[프로그래머스 LV2] 가장 큰 정사각형 찾기

먼저 이 문제를 효율성에 맞춰서 풀기 위해서는 Dynamic Promgamming(동적 프로그래밍) 알고리즘을 사용해야한다동적 프로그래밍 알고리즘 이란, 큰 케이스를 작은 케이스로 나눠서 작은 케이스들을 계속해서 검사하는 Top - Down 방법과작은 케이스 부터 검사

2021년 2월 7일
·
0개의 댓글
post-thumbnail

[프로그래머스 LV2] 구명보트

가장 작은 몸무게와 가장 큰 몸무게를 같이 함께 보트에 태워야지 가장 적은 수의 보트를 사용 할 수 있다.먼저 people 의 몸무게가 들어있는 배열을 먼저 오름차순으로 정렬을 해준다. 가장 몸무게가 적은 사람과, 가장 몸무게가 큰사람과의 몸무게의 합이 limit 보다

2021년 2월 6일
·
0개의 댓글
post-thumbnail

[프로그래머스 LV2] 괄호변환

이 문제는, 접근법이라고 할게 없다. 문제에 나와 있는 방법대로 구현을 하면 되기 때문이다. 하지만, 말이 너무 복잡하고 구현 해야 하는 것도 복잡하기 때문에... 시간이 좀 걸렸다 ㅠㅠ 물론 내 능력이 아직 부족 해서 그런 것 같지만 ㅠ3\. 문자열 U가 "올바른 괄

2021년 2월 6일
·
0개의 댓글
post-thumbnail

[프로그래머스 LV2] 큰 수 만들기

내 풀이는 현재 가장 큰 수의 위치에서 없애야 하는 것의 남은 수 를 더한 위치 까지 가장 큰수를 찾아서 그 큰 수를 다시 가장 큰수로 만드는 것이다.그리고 각각의 가장 큰 수 들을 문자열로 더해서 반환을 하는 방법으로 하였다.하지만, 이렇게 하는 과정에서 빼야 되는

2021년 2월 6일
·
0개의 댓글
post-thumbnail

[프로그래머스 LV2] 조이스틱

직접 문제를 풀다가도 최적의 해가 맞는지 아닌지 계속해서 햇갈리는데, 테스트 케이스가 통과되서 놀랐다.다른사람들 풀이도 보았는데, 실제로 못 써먹을 것 같아서 일단 내풀이로 작성!누가 볼진 모르겠지만, 완벽한 풀이가 아니기 때문에 그냥 가볍게 보고 가시면 좋겠다!먼저

2021년 2월 5일
·
0개의 댓글
post-thumbnail

[프로그래머스 LV2] 메뉴 리뉴얼

orders 에 있는 메뉴들 중에서 course개 만큼 뽑아서, 뽑은 것들 중 가장 많은 것 들을 모아서 return 하면 된다.조합 을 이용하여 course 배열 안에 있는 원소들의 값 만큼 orders 에서 뽑는다.course 배열 안에 있는 원소들을 조합을 이용하

2021년 2월 5일
·
2개의 댓글
post-thumbnail

[프로그래머스 LV.2] 문자열 압축 (Python)

맨처음 글자 부터 맨처음 글자 ~ 글자의 반을 모두 찾으면서, 그 것들을 반복되는 문자열(길이) 로 보고, 그 길이에 맞춰서 문자열을 모두 확인 하며,동일하면, count 를 증가 시킨다.만약 동일하지 않고, 전에 동일한 것의 갯수(count)가 1보다 크다면, 현재

2021년 2월 4일
·
0개의 댓글