일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 프로그래머스
- equals()
- 의존관계
- 백준
- 코딩테스트
- 스프링
- 김영한
- 추상클래스
- fielderror
- HttpServletResponse
- objecterror
- html form
- 코드트리조별과제
- 오블완
- 예외와 트랜잭션 커밋
- 참조변수
- 인터페이스
- 프록시
- 다익스트라
- java
- 코드트리
- http 메시지 컨버터
- 테스트코드
- 티스토리챌린지
- 싱글톤
- 오버라이딩
- @configuration
- DI
- 서블릿
- 스프링컨테이너
- Today
- Total
목록Problem Solving (19)
minOS
https://www.acmicpc.net/problem/3184 타임라인 & 사고 과정7:09 AM — 초기 아이디어BFS로 먼저 같은 영역을 구한다. 울타리 #를 기준으로 연결된 칸들을 하나의 영역으로 본다. visited 배열로 중복 탐색을 막는다. 영역을 구한 뒤, 그 영역 안에서 양/늑대 수를 센다. 영역 탐색이 끝난 다음에 한 번 더 훑어서 o/v 개수를 세려 했다. 두 일을 동시에 할 수 있나? 처음엔 “영역 → 카운트”를 분리해서 생각했는데, BFS가 어차피 모든 칸을 큐에서 꺼낼 때 다 방문하니, 그 순간에 바로 카운트하면 한 번에 끝낼 수 있을 듯. 8:01 AM — 수정된 결론동시에 해야 했음. 같은 영역을 BFS로 확장해 나갈 때, 그때그때 o와 v를 함께 누적하는 게 맞다. 다만,..

프로그래머스 탐욕법 문제 중 하나인 '단속카메라'를 풀면서 겪었던 시행착오와, 그 과정에서 얻게 된 깨달음을 정리하려고 합니다.처음 문제를 접했을 때 저는 '탐욕법'이라는 키워드를 보고, 자연스럽게 정렬을 떠올렸습니다.그동안 풀었던 탐욕 문제들 대부분이 정렬 기준만 잘 잡으면 쉽게 풀리는 구조였기 때문입니다.그래서 별다른 의심 없이 이번 문제도 정렬로 접근했습니다.진입 시점을 기준으로 오름차순 정렬해보고,내림차순 정렬도 해보고,진출 시점을 기준으로도 바꿔보면서,정렬 기준만 계속 바꿔가며 답을 찾으려고 했습니다.그런데 반례가 생기고, 정확한 기준을 잡기가 어려웠습니다.코드 def solution(routes): routes.sort(key=lambda x: x[1]) check = [0] *..

https://school.programmers.co.kr/learn/courses/30/lessons/42842 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 처음에 해당 문제를 보고 입출력 예시를 보았습니다.가장 먼저 떠오른 생각은 brown과 yellow의 합을 기준으로 그 약수들을 구하고,그 중에서 (가로, 세로) 쌍의 곱이 brown + yellow가 되면서 조건을 만족하는 가장 작은 가로 값을 찾는 것이 답이 아닐까 하는 것이었습니다.예를 들어, brown이 10이고 yellow가 2라면 합은 12이고,12의 약수 쌍은 (1,12), (2,6), (3,4)와 같습니다.이런 가정하에 문제를 접근했습니다..
https://www.acmicpc.net/problem/2670 n = int(input())arr = [float(input()) for _ in range(n)]dp = arr[0]ans = arr[0]for i in range(1, n): if dp == 0.0: dp = arr[i] else: dp *= arr[i] dp = max(dp, arr[i]) ans = max(ans, dp)print('%.3f' % ans)

https://school.programmers.co.kr/learn/courses/30/lessons/81302 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr from collections import dequedef bfs(q,graph): x,y = q.popleft() for dx,dy in {(1,0),(0,1),(-1,0),(0,-1),(-1,1),(1,-1),(1,1),(-1,-1),(0,2),(0,-2),(-2,0),(2,0)} : nx = x + dx ny = y + dy if 0 오랜만에 머리를 좀 썼다 ..
https://www.acmicpc.net/problem/2578def check_line(cnt): for i in range(5): if sum(check[i]) == 5: cnt+=1 for i in range(5): temp =0 for j in range(5): temp += check[j][i] if temp == 5: cnt+=1 temp =0 for i in range(5): for j in range(5): if i== j : temp += check[i][j] if..