profile
안녕하세요.

[백준] 10844번: 쉬운 계단 수 (sol.x)

풀이시간: 20분 (틀림)n = 3 부터 앞이 0이면 1개, 1~8이면 2개씩, 9이면 1개로 끝이 분기된다.f(n) = 2f(n-1) - 2 (n >= 3)f(n, d) 길이 n이고 마지막 숫자가 d인 계단 수 총 개수맨 마지막 숫자(d)가 무엇이냐에 따라 다음 숫자

2024년 9월 1일
·
0개의 댓글
·

[백준] 11726번: 2xn 타일링 (sol.x)

풀이시간: 엇갈려서 두지는 못한다.2개를 묶어서 세운 경우, 눕힌 경우마지막이 세운것으로 끝나는 경우와 눕힌 경우 2가지 상황이 있다.점화식은 f(n) = f(n - 1) + f(n - 2)그려서 풀 때 상황도 나누어 보자한번에 하려고 하지말고, 상황을 나누어 보자처음

2024년 9월 1일
·
0개의 댓글
·
post-thumbnail

[알고리즘] 6. 동적계획법

하나도 다이나믹하지 않다. 그냥 멋있어 보인다고 붙인 이름이다. 1\. 문제를 쪼개서 작은 문제의 답을 구하고, 그걸로 더 큰 문제의 답을 하는 것을 반복 2\. 분할정복과 비슷한 느낌Top-down : 재귀, 메모이제이션 MemoizationBottom-up

2024년 9월 1일
·
0개의 댓글
·

[백준] 10815번: 숫자 카드 (sol.8)

풀이시간: 15분시간 초과bisect를 사용하여 해당 숫자의 갯수를 찾기없으면 0, 있으면 갯수를 반환left만 써서 해당 자리에 숫자와 일치하는 지 비교하는 것으로도 풀 수 있다.기본 방법은 작성자와 일치파이썬은 초당 2000만번 계산 가능: 최대 입력 갯수보고 최대

2024년 9월 1일
·
0개의 댓글
·

[백준] 2512번: 예산 (sol.x)

풀이시간: 1시간정렬을 하고 마지막 값을 상한선으로 설정상한선과 같은 값 카운트예산에서 상한선 미만의 요소들의 합을 뺌남은 예산에서 상한선 이상의 요소들 만큼 나눔상한선의 기준이 된 요소 앞의 값과 비교상한선의 값이 더 낮다면 기준을 앞으로 옮기고 반복47% 틀렸습니다

2024년 9월 1일
·
0개의 댓글
·

[알고리즘] 5. 이진탐색

완전탐색인 선형탐색보다 효율적이다.이미 정렬이 되어있다는 가정하에 탐색이 필요없는 절반범위를 제외 및 탐색을 하는 것을 반복한다.→ 탐색 전에 반드시 정렬되어 있어야 함!→ 살펴보는 범위를 절반씩 줄여가며 탐색※ 시간복잡도→ 정렬 O(NlogN) + 이진탐색 O(log

2024년 9월 1일
·
0개의 댓글
·

[잡지식] 내부아이피 접근

공인IP vs 사설IP 공인IP ISP에서 제공하는 주소로 외부에서 접근이 가능하다. 사설IP 일반 가정이나 회사내 할당된 네트워크의 주소로 공유기에 의해 분배된다. 외부에서는 해당 주소로 접근이 안된다. (공인IP와 포트포워딩과 같은 작업을 해주어야 한다.

2024년 8월 12일
·
0개의 댓글
·

[백준] 2178번: 미로탐색 (sol.X)

풀이시간: X최소의 칸수를 구하는 것이므로 BFS 사용미로를 좌표로 옮긴다.큐에 넣고 빼고를 반복을 하며 한 작업이 끝나면 이동한 칸 수 +1 칸을 한다.마지막 칸이 True가 되면 모든 작업을 끝내고 ans 값을 출력한다.자꾸 None값이 반환된다.. while문 중

2024년 8월 11일
·
0개의 댓글
·

[백준] 11724번: 연결 요소의 개수 (sol.X)

풀이시간: X인접행렬로 그래프 상황을 그린다.그래프 탐색을 하면서 서로 연결 여부를 판단한다.bfs로 탐색을 하면서 큐가 비었지만 탐색할 곳이 남았다면 +1 하고 남은 곳 방문 및 탐색 반복chk 배열을 False로 초기화반복문을 돌면서 False를 만나면 +1 하고

2024년 8월 11일
·
0개의 댓글
·

[알고리즘] 4. DFS, BFS, 백트래킹

지도, 내비게이션SNS, 메신져 → 계정 간 관계도VCS (Version Control System)Vertex(=node): 정점, Edge: 간선무방향 그래프(=양방향 그래프): 방향이 없다, 방향 그래프: 방향이 있다순환그래프(Cyclic), 비순환그래프(Acyc

2024년 8월 11일
·
0개의 댓글
·

[백준] 1449번: 수리공 항승 (sol.7)

풀이시간: 1시간 1. 나의 풀이 구멍은 순서대로 있고 어떠한 구간 내에서 최소 갯수로 묶어서 구멍을 막을 수 있는 경우는 여러가지이나, 경우의 수는 동일함으로 greedy로 접근 배열로 구멍리스트를 받을 경우 정렬을 고려했을 때 시간초과가 날 것 같아 힙으로

2024년 8월 8일
·
0개의 댓글
·

[백준] 11047번: 동전 0 (sol.6)

풀이시간: 32분입력을 받고 int형변환큰 단위부터 접근하기 위해 동전리스트를 내림차순 정렬입력받은 금액이 0이 될때까지 큰 단위 코인부터 금액 차감 및 사용 갯수 +1시간초과for문 없이 리스트 인덱스에 직접 접근하여 계산리스트 뒤집기 연산 제거 및 -1 부터 접근시

2024년 8월 7일
·
0개의 댓글
·

[알고리즘] 3. 탐욕법

매 순간마다 최선의 경우만을 골라간다다른 경우는 고려 X, 나중은 생각 X (이것때문에 답이 아닐 수도 있다.)모든 경우를 다 보지 않으니 완전탐색보다 빠르다.어떤 경우가 최선인지 찾는 게 포인트규칙성을 찾아야하는 상황도 있다.greedy로 문제인지 판별하기 정말 어렵

2024년 8월 7일
·
0개의 댓글
·

[백준] 2309번: 일곱 난쟁이 (sol.5)

풀이시간: 16분9명 중에 7명을 뽑는 데, 키의 합을 구하므로 조합을 사용 (순서상관X)tuple은 정렬이 안되므로 list로 형변환하였다. (sorted() 함수로 정렬가능)답이 여러개일 경우에도 한 변수로 담고 출력하기 때문에 하나만 출력이 된다.(답이 여러개인

2024년 8월 6일
·
0개의 댓글
·

[알고리즘] 2. 완전탐색

1. 완전탐색 특징 장점: 반드시 답을 찾아낸다. 단점: 오래 걸린다. ※ trade-off 관계: 자원 ↔ 시간 2. 브루트 포스 Brute-force (무차별 대입) ex) 비밀번호 숫자 4자리: 모든 경우의 수를 다 넣는다. 가장 확실한 방법으로 많이 쓰임 암호

2024년 8월 6일
·
0개의 댓글
·

[백준] 1302번: 베스트셀러 (sol.4)

풀이시간: 15분판매된 책 목록을 입력받고 가장 많이 팔린 책을 찾아야함으로 맵 사용딕셔너리를 활용하여 책을 입력받을 때마다 팔린 갯수 증가새로 입력이 될 때와 입력이 되어 있던 상태를 나누어서 구현판매된 권수가 같을 경우 사전순으로 먼저오는 것을 출력해야 함으로 문자

2024년 8월 4일
·
0개의 댓글
·

[백준] 11286번: 절댓값 힙 (sol.3)

풀이시간: 40분 (런타임 오류)입력값들에서 최솟값을 출력해야함으로 힙(우선순위 큐)을 사용절댓값에 대한 정보를 저장하는 방법이 떠오르지 않아 숫자별로 음수 갯수를 맵을 사용하여 저장하기로 함최솟값 출력시 음수 갯수에 대한 정보가 0이 아니면 -을 붙여 출력하도록 구현

2024년 8월 4일
·
0개의 댓글
·

[백준] 2164번: 카드2 (sol.2)

풀이시간: 14분카드 덱의 맨 앞과 맨 뒤에서 작업이 일어나므로 큐로 풀이먼저 카드덱을 만들고 문제의 상황 순서대로 작성맨 앞 카드 제거, 그 뒤 카드 pop 이후 반환값 받아 카드 덱 맨 뒤에 추가일반 배열(리스트)로 풀면 안되는 이유하나 남을 때까지 반복해야 함:

2024년 8월 4일
·
0개의 댓글
·

[백준] 9012번: 괄호 (sol.1)

짝이 맞아야 되니 스택으로 풀이예제 입력 횟수와 문자열 길이만큼 계산을 해야하기 때문에 while문으로 작성문자열을 리스트와 비슷하게 접근할 수 있다는 것을 활용replace로 문자열을 줄여가며 계산계산이후 스택의 길이를 토대로 YES or NO 출력한번에 모든 조건을

2024년 8월 4일
·
0개의 댓글
·

[알고리즘] 1. 자료구조

삽입/삭제: O(N)탐색: O(1)→ 삽입/삭제: 삽입이나 삭제시 나머지 배열 요소의 위치를 바꾸어주어야 한다.→ 탐색: 임의 접근방식으로 한번에 원하는 위치에 접근할 수 있다.※ 시간 복잡도는 최악의 경우를 기준으로 계산한다.※ 임의 접근 방식은 배열의 시작 주소에서

2024년 8월 4일
·
0개의 댓글
·