일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 최빈값
- 코딩테스트
- 스프링프레임워크
- 2중포문
- Python
- 프로그래머스
- DFS
- sort
- 덩치
- 동적계획법
- 그리디알고리즘
- 소트
- 404에러
- 스프링
- 코테
- 백트래킹
- 스택
- 다익스트라
- 퇴각검색
- 브루트포스
- 월간 코드 챌린지 시즌2
- 그리디
- 통계학
- 백준
- 정렬
- 파이썬
- 최단거리
- 소트인사이드
- 동적
- Backtracking
- Today
- Total
목록코딩테스트/프로그래머스 (42)
취준생의 코딩테스트 연습기
# 문제 링크 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] =..
# 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/43162 코딩테스트 연습 - 네트워크 네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있 programmers.co.kr # Soultion DFS를 이용하여 문제를 해결했다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 def dfs(x,computers): computers[x][x]=2 #들린거 표시 for i in range(len(computers[x])): if computers[x][i]==1 and computers[i][..
# 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/43105 코딩테스트 연습 - 정수 삼각형 [[7], [3, 8], [8, 1, 0], [2, 7, 4, 4], [4, 5, 2, 6, 5]] 30 programmers.co.kr # Soultion 2번째 줄부터 차례대로 큰 수를 찾아 업데이트 시키는 방법 1 2 3 4 5 6 7 8 9 10 11 12 def solution(triangle): for i in range(1,len(triangle)): for j in range(len(triangle[i])): if j==0: triangle[i][j] += triangle[i-1][0] elif j==len(triangle[i])-1: tria..
# 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/42577 코딩테스트 연습 - 전화번호 목록 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조 programmers.co.kr # Soultion 1 2 3 4 5 6 7 8 def solution(phone_book): answer = True phone_book.sort() for i in range(len(phone_book)-1): if phone_book[i] == phone_book[i+1][:len(phone_book[i])]: answer = False ..
# 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/1844 코딩테스트 연습 - 게임 맵 최단거리 [[1,0,1,1,1],[1,0,1,0,1],[1,0,1,1,1],[1,1,1,0,1],[0,0,0,0,1]] 11 [[1,0,1,1,1],[1,0,1,0,1],[1,0,1,1,1],[1,1,1,0,0],[0,0,0,0,1]] -1 programmers.co.kr # Soultion 최단거리를 구하는 문제이므로 BFS를 이용하여 문제 해결. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 from collections import deque def solution(maps): answer = 0 #0벽, 1..
# 문제 링크 https://www.acmicpc.net/problem/1303 1303번: 전쟁 - 전투 첫째 줄에는 전쟁터의 가로 크기 N, 세로 크기 M(1 ≤ N, M ≤ 100)이 주어진다. 그 다음 두 번째 줄에서 M+1번째 줄에는 각각 (X, Y)에 있는 병사들의 옷색이 띄어쓰기 없이 주어진다. 모든 자리에는 www.acmicpc.net # Soultion dfs를 이용하여 2가지 케이스(W,H)로 이어진 부분의 개수를 구함 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 n,m = map(int,input()...
# 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/17677 코딩테스트 연습 - [1차] 뉴스 클러스터링 뉴스 클러스터링 여러 언론사에서 쏟아지는 뉴스, 특히 속보성 뉴스를 보면 비슷비슷한 제목의 기사가 많아 정작 필요한 기사를 찾기가 어렵다. Daum 뉴스의 개발 업무를 맡게 된 신입사원 튜브 programmers.co.kr # 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 import math def solution(str1, str2): answer = 0 arr1 = [] arr2 = [] for i in range(0,len(str1)-1): tmp = str..
# 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/49189 코딩테스트 연습 - 가장 먼 노드 6 [[3, 6], [4, 3], [3, 2], [1, 3], [1, 2], [2, 4], [5, 2]] 3 programmers.co.kr # Soultion BFS를 이용하여 문제를 해결하였다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 from collections import deque def solution(n, edge): answer = 0 graph = [[]* n for _ in range(n+1)] # 각 노트와 연결된 노드표시 for a,b in edge: graph[a].append..