일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- DP
- RGB거리2
- 큐
- 자물쇠와열쇠
- 거리두기확인하기
- javascript
- 최소스패닝트리
- 파괴되지않은건물
- 섬연결하기
- 이모티콘할인행사
- 벽부수고이동하기
- 알고리즘
- 도넛과막대그래프
- DFS
- 두큐합같게만들기
- 사이클게임
- BFS
- 파이썬
- 다익스트라
- 위상정렬
- [1차]캐시
- 구현
- 프림알고리즘
- 그래프탐색
- 징검다리건너기
- 백준
- 17404
- 최단경로
- 트리의지름
- 프로그래머스
- Today
- Total
목록분류 전체보기 (50)
블로그 이름 뭐로 하지
문제 https://school.programmers.co.kr/learn/courses/30/lessons/64062 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 처음 시도 그냥 while문 안에서 for문 돌면서 -1씩 해주고 연속된 0이 k만큼 되면 못 건너는걸로 판단하고 break. ㅋㅋ ㅠㅠ 당연히 시간 초과. 징검다리 최고 숫자가 무려 200,000,000이고 징검다리도 200,000개이므로... 만약 죄다 200,000,000이 써져 있는 200,000개의 징검다리가 있다고 치면 내 코드는 그냥 쓰레기 코드가 된다 :) def solu..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/17679 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 2018 카카오 문제...! 확실히 이 때는 시뮬이나 그래프 문제들이 많이 나왔던 것 같다. 지금은... 더보기 삼성 기출 풀어본 사람 특: 이런 구현 문제 되게 좋아함 하라는대로 하면 된다. 2*2 같은 거 있으면 체크해주고 한 번에 0으로 바꿔준다. down 함수를 통해서 빈 공간을 채우기 위해 위에 떠있는 아이들을 내려준다. 코드 from collections import dequ..
문제 https://www.acmicpc.net/problem/2252 2252번: 줄 세우기 첫째 줄에 N(1 ≤ N ≤ 32,000), M(1 ≤ M ≤ 100,000)이 주어진다. M은 키를 비교한 회수이다. 다음 M개의 줄에는 키를 비교한 두 학생의 번호 A, B가 주어진다. 이는 학생 A가 학생 B의 앞에 서야 한다는 의 www.acmicpc.net 풀이 사이클이 없는 방향 그래프에서 방향성이 한 곳만을 향하도록 정렬하는... 위상정렬...이란다. 나는 위상정렬이라는 개념은 몰랐고 그래프를 통해서 풀면 되겠다 싶긴했는데 정답을 도출하기가 참 어려웠다 ㅡ ㅡ 그래서 검색해보니 위상정렬의 대표적이 문제라더라. https://youtu.be/xeSz3pROPS8 1. 진입 차수가 0인 모든 노드를 큐..
문제 https://www.acmicpc.net/problem/17404 17404번: RGB거리 2 첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나 www.acmicpc.net 풀이 RGB거리1 문제와는 다른 조건이 하나 더 걸려있다. 바로 1번 집과 마지막 집의 색이 동일하면 안 된다는 점. 따라서 1. 1번 집을 R로 색칠하고 N번집을 G 또는 B로 칠한 경우 2. 1번 집을 G로 색칠하고 N번 집을 R 또는 B로 칠한 경우 3. 1번 집을 B로 색칠하고 N번집을 R 또는 G로 칠한 경우 각 세계의 경우에 따라 dp를 수행하고 각 경..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/150368 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 할인율이 10,20,30,40 으로 정해져있다는 말을 못 보고.. ㅠㅠ 그냥 랜덤인줄 알고 풀이가 도저히 떠오르지 않았고... 이게 정말 레벨2가 맞는건지 .. 의심이 갔다. 근데 할인율이 정해져있는 문제였다.ㅎ.... 가능한 할인율 조합을 모두 구해서 그 조합따라서 가입자수와 이익을 계산해서 가장 좋은 경우에 값을 저장해두어 출력해주면 된다. 코드 def solution(users,..

문제 https://www.acmicpc.net/problem/9465 9465번: 스티커 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스의 첫째 줄에는 n (1 ≤ n ≤ 100,000)이 주어진다. 다음 두 줄에는 n개의 정수가 주어지며, 각 정수는 그 위치에 해당하는 스티커의 www.acmicpc.net 풀이 DP 대표 문제~. 실버1이지만 볼때마다 뭔가 생각이 바로 떠올리지 않는 것 같다. ㅎㅎ -1의 대각선 , -2의 대각선 중에 큰 숫자를 지금의 스티커 점수와 더해주면 된다. 저렇게 고르면 자연스럽게 서로 인접한 스티커끼리는 더하지 않게 돼있다. 코드 T = int(input()) for _ in range(T): n = int(input()) dp = [list(map(in..
문제 https://www.acmicpc.net/problem/9251 9251번: LCS LCS(Longest Common Subsequence, 최장 공통 부분 수열)문제는 두 수열이 주어졌을 때, 모두의 부분 수열이 되는 수열 중 가장 긴 것을 찾는 문제이다. 예를 들어, ACAYKP와 CAPCAK의 LCS는 ACAK가 된다. www.acmicpc.net 풀이 ㅋㅋㅋㅋㅋ아 ㅠ 이제 번호도 외웠다 9251 LCS. 그냥 대명사 같은거다 ^ . ^ ... 거의 풀이를 외운 수준이라 그냥 곧바로 풀었다 ^^ .. ABB ACB 처럼 맨 뒤가 같은 경우엔 (AB,AC를 비교했을 당시의 LCS) + 1 을 저장해주면 되고 ABC ABB 처럼 맨 뒤가 다른 경우엔 AB ABB 를 비교했을 때의 LCS와 ABC..
문제 https://www.acmicpc.net/problem/5639 5639번: 이진 검색 트리 트리를 전위 순회한 결과가 주어진다. 노드에 들어있는 키의 값은 106보다 작은 양의 정수이다. 모든 값은 한 줄에 하나씩 주어지며, 노드의 수는 10,000개 이하이다. 같은 키를 가지는 노드는 없다 www.acmicpc.net 풀이 트리 공포증이 있는 나는 조금 쫄았지만 다행히 맨 앞 노드 외에 뒤에서 맨앞 노드보다 작은 부분은 왼쪽으로, 큰 부분은 오른쪽으로 분류해주면 되겠다..는 생각을 했고 최근에 트리 전위순회 관련 재귀 문제를 풀었어서 금방 적용할 수 있었다! 예를 들어 50 30 24 5 28 45 98 52 60 라는 전위 순회 값이 있을 때, 루트 노드(맨 앞 노드)인 50을 기준으로 작은..
문제 https://www.acmicpc.net/problem/2638 2638번: 치즈 첫째 줄에는 모눈종이의 크기를 나타내는 두 개의 정수 N, M (5 ≤ N, M ≤ 100)이 주어진다. 그 다음 N개의 줄에는 모눈종이 위의 격자에 치즈가 있는 부분은 1로 표시되고, 치즈가 없는 부분은 0으로 www.acmicpc.net 풀이 1. 모서리는 치즈가 없다고 했으니 (0,0)부터 근접한 모든 공기 부분을 BFS로 탐색하여 -1로 변경해준다. (그러면 치즈 내면의 공기 부분은 0으로 남아있을 것) 2. 2차 for문을 돌면서 arr[i][j] == 1(치즈)일 경우에 근접한 4면 중 공기가 2면 이상인지 확인한다. 두 면 이상이 공기라면 q에 해당 좌표를 넣어둔다. 3. q가 빌 때까지 해당 치즈들을 ..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/92344 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 처음 봤을 때 뭐야 문제가..왜이렇게 쉬워...?!!!!!라면서 5분 내에 풀고 싱글벙글이었는데 아니나 다를까 정답률이 30퍼 대인 이유가 있었다. 효율성 테스트에서 멸망해버림 ㅋㅋㅋㅋ ㅠ 해시를 써야할까...? 그래도 복잡도가 O*N*M에서 벗어나기 힘들거 같은데 ... 라는 생각을 하면 삽질만 하다가 절대 내 머리로는 이 효율성을 못 뚫을 것 같아서 해설을 봤다. https://te..