일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 코테
- 백트래킹
- 백준
- 다익스트라
- 통계학
- Python
- sort
- 404에러
- 소트
- 스택
- DFS
- 파이썬
- 덩치
- 그리디알고리즘
- 소트인사이드
- 2중포문
- 월간 코드 챌린지 시즌2
- 최빈값
- 그리디
- 스프링
- 동적계획법
- 프로그래머스
- Backtracking
- 브루트포스
- 동적
- 퇴각검색
- 최단거리
- 스프링프레임워크
- 정렬
- 코딩테스트
- Today
- Total
목록2021/05/28 (6)
취준생의 코딩테스트 연습기
# 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/42897 코딩테스트 연습 - 도둑질 도둑이 어느 마을을 털 계획을 하고 있습니다. 이 마을의 모든 집들은 아래 그림과 같이 동그랗게 배치되어 있습니다. 각 집들은 서로 인접한 집들과 방범장치가 연결되어 있기 때문에 인접한 programmers.co.kr # Soultion 시간초과문제가 발생하므로 DP를 이용하여 문제해결 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 ############시간초과############# def solution(money): answer = 0 a = money[:len(money)-1] for ..
# 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/42583 코딩테스트 연습 - 다리를 지나는 트럭 트럭 여러 대가 강을 가로지르는 일 차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 트럭은 1초에 1만큼 움직이며, 다리 길이 programmers.co.kr # Soultion 스택을 이용하여 초마다 한개씩 제거하면서 계산하였다 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 def solution(bridge_length, weight, truck_weights): answer = 0 q = [0]*bridge_length while(q): answer+=1 q.pop..
# 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/42578 코딩테스트 연습 - 위장 programmers.co.kr # Soultion 해시를 이용하여 문제 해결. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 def solution(clothes): answer = 0 cloths = {} for name, kind in clothes: if kind in cloths: cloths[kind]+=1 else: cloths[kind] = 1 answer = 1 for key, value in cloths.items(): answer *= (value+1) return answer-1 #모두 안입는 경우 빼기 Colored b..
# 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/42898 코딩테스트 연습 - 등굣길 계속되는 폭우로 일부 지역이 물에 잠겼습니다. 물에 잠기지 않은 지역을 통해 학교를 가려고 합니다. 집에서 학교까지 가는 길은 m x n 크기의 격자모양으로 나타낼 수 있습니다. 아래 그림은 m = programmers.co.kr # Soultion DP를 이용하여 문제해결 1 2 3 4 5 6 7 8 9 10 11 12 def solution(m, n, puddles): answer = 0 graph = [[0]*(m+1) for i in range(n+1)] for i in range(1,n+1): for j in range(1,m+1): if i==1 and..
# 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/42839 # Soultion 순열을 이용하여 모든 경우의 수를 리스트 num에 넣어주었다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 from itertools import permutations def solution(numbers): answer = 0 num = [] for i in range(1,len(numbers)+1): for j in list(permutations(numbers,i)): num.append(int(''.join(j))) for i in list(set(num)): #중복제거 if i==2: answer+=1 for j in ran..
# 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/42840 # Soultion 완전탐색을 이용하여 문제를 풀었다. 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 def solution(answers): answer = [] p1 = [1, 2, 3, 4, 5] p2 = [2, 1, 2, 3, 2, 4, 2, 5] p3 = [3, 3, 1, 1, 2, 2, 4, 4, 5, 5] cnt1 = 0; cnt2 = 0; cnt3 = 0 for i in range(0, len(answers)): if answers[i] == p1[i%5]: cnt1+=1 if answers[i] =..