일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 감소하는 수
- 파이썬
- 1038번
- 베스트엘범
- 14499번
- 19238번
- 16234번
- 2020 카카오 인턴십
- 경주로 건설
- 수식 최대화
- 17144번
- 12869번
- 스타트 택시
- 키패드 누르기
- 미세먼지 안녕!
- 빛의 경로 사이클
- SW ExpertAcademy
- 1789번
- 15686번
- HTML 기초
- 프로그래머스
- 어른 상어
- python
- 12865번
- 백준 알고리즘
- QueryDSL 기초
- 거울 설치
- 보석 쇼핑
- SW Expert Academy
- 9095번
- Today
- Total
목록백준 알고리즘 (28)
보물창고 블로그
문제 링크: https://www.acmicpc.net/problem/19237 19237번: 어른 상어 첫 줄에는 N, M, k가 주어진다. (2 ≤ N ≤ 20, 2 ≤ M ≤ N2, 1 ≤ k ≤ 1,000) 그 다음 줄부터 N개의 줄에 걸쳐 격자의 모습이 주어진다. 0은 빈칸이고, 0이 아닌 수 x는 x번 상어가 들어있는 칸을 의미 www.acmicpc.net 청소년 상어 문제에서 성장한 어른 상어 문제입니다. 문제 설명 그대로 구현하는 시뮬레이션 문제입니다. while 문을 사용하여 매시간마다 time을 1씩 증가시켰고, 1000을 넘는 순간 -1을 리턴하고, 죽은 상어의 x좌표를 -1로 하여 체크를 건너뛰었습니다. 그리고 상어를 1마리씩 줄일 때마다 카운트 변수를 줄여 상어 1마리만 남았을 때..
문제 링크: https://www.acmicpc.net/problem/19236 19236번: 청소년 상어 첫째 줄부터 4개의 줄에 각 칸의 들어있는 물고기의 정보가 1번 행부터 순서대로 주어진다. 물고기의 정보는 두 정수 ai, bi로 이루어져 있고, ai는 물고기의 번호, bi는 방향을 의미한다. 방향 bi는 www.acmicpc.net 이 문제는 문제의 설명 그대로를 구 한하는 시뮬레이션 문제입니다. 저는 이 문제를 큐에 상어의 상태와 물고기들의 상태와 어항의 상태를 담아서 각 케이스마다 꺼내어 물고기들을 이동시키고, 마지막으로 상어를 이동시켰습니다. 만약 상어가 움직일 수 없다면, 정답 값을 경신하여 최종 정답 값을 출력하도록 소스코드를 작성하였습니다. 문제 설명 그대로 구현하면 되는 문제입니다...
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/b9eucC/btqFcOAOCfe/o6qoD29kCyvsZjnvkJGKG0/img.png)
문제 링크: https://www.acmicpc.net/problem/19235 19235번: 모노미노도미노 모노미노도미노는 아래와 같이 생긴 보드에서 진행되는 게임이다. 보드는 빨간색 보드, 파란색 보드, 초록색 보드가 그림과 같이 붙어있는 형태이다. 게임에서 사용하는 좌표 (x, y)에서 x는 행, www.acmicpc.net 2020년도 상반기 삼성 SW 역량테스트를 변형한 문제라고 알고 있습니다. 다음 20년도 하반기를 준비하는 마음으로 풀어보았습니다. 이 문제의 핵심은 블록을 부수고, 부수었을 때 블록을 떨어뜨려야 하는데, 블록의 종류는 총 3가지가 있습니다. 이 중에서 가장 신경 써야 할 부분은 바로 2번 블록입니다. 블록 2번을 떨어뜨릴 때, 왼쪽 블록과 오른쪽 블록 모두 떨어질 수 있는 최..
문제 링크: https://www.acmicpc.net/problem/14501 14501번: 퇴사 첫째 줄에 백준이가 얻을 수 있는 최대 이익을 출력한다. www.acmicpc.net 이 문제를 2가지 방법으로 풀었습니다. DFS(깊이 우선 탐색) 방법과 BFS(너비 우선 탐색)으로 해결하였는데, DFS 방법으로 푼 코드는 다음과 같습니다. def solution(n, task): answer = 0 # count day money # 인덱스 날짜 돈 stack = [[0, 0, 0]] while stack: count, day, money = stack.pop() #만약 현재 날짜가 지금 위치한 날보다 작을 경우 날짜를 현재 위치한 날로 갱신한다. if day answer: answer = money..