![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/rSrq5/btqHnkJvH9a/50pskqigVKjn1RJAjEz4J1/img.png)
문제 14889번: 스타트와 링크 예제 2의 경우에 (1, 3, 6), (2, 4, 5)로 팀을 나누면 되고, 예제 3의 경우에는 (1, 2, 4, 5), (3, 6, 7, 8)로 팀을 나누면 된다. www.acmicpc.net 풀이 처음 인풋으로 받은 배열중 상단 삼각형에 두 경우의 합을 저장했고, combinations()를 사용해 N/2명의 조합을 만들고, 그 조합에 포함되지 않은 사람들의 리스트를 만들어서 비교했다. 채점 시간이 꽤 걸리길래 처음엔 틀린줄알았는데 브루트포스라 그런거였다. import sys from itertools import combinations N = int(sys.stdin.readline().strip()) arr = [] # N * N 배열로 인풋받기 for _ in ..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/Veur1/btqGRQKjHRT/yfmpJfZmZ79d62BUb1d821/img.png)
문제 3190번: 뱀 문제 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. www.acmicpc.net 풀이 단순 시뮬레이션 문제라 코드를 짜는데는 얼마 걸리지 않았지만 문제 이해를 잘못해서 버린 시간이 길었던 문제. 내가 빠트렸던것 : 1. 보드 배열은 (0,0) 부터가 아닌 (1,1)부터 시작한다. 2. 'X초 이동 후 -> C방향으로 틀기'의 반복인줄 알았는데 게임 시작시간으로부터 X초였다.... 즉, X C 인풋이 3 D 15 L 일 경우 3초동안 디폴트 방향(오른쪽)으로 이동 후, 오른쪽으로 90도 틀고, 15초가 될때까지 (12초동안) 이동 후 왼쪽 방향..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/QlF49/btqGJFH1zxl/ZJKmh7GhBJyvBQgucT3Ka0/img.png)
문제 1697번: 숨바꼭질 문제 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 www.acmicpc.net 풀이 bfs를 통해 재귀적으로 v-1, v+1, v*2의 위치를 찾아가면서 visited 배열을 통해 걸리는 시간을 관리했다. 빠트렸던것 두가지: 1. 동생의 위치와 내 위치가 이미 같을경우 -> 0으로 출력하고 break 2. visited 배열의 크기를 동생의 최대 위치인 100000으로 설정하면 안됨 -> 예. 수빈: 65000 동생: 100000인 경우 2*65000 = 130000 100000-65000 = 35000 1..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/SQzxB/btqGPNrzHHD/tuYXJKRE1iHGZ2QtoE1920/img.png)
문제 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토� www.acmicpc.net 풀이 #2178 미로탐색(https://yuuj.tistory.com/85)과 유사한 문제 import sys from collections import deque M, N = map(int, sys.stdin.readline().split(" ")) box = [] dr = [-1, 1, 0, 0] dc = [0, 0, -1, 1] for _ in range(N): box.append(list(map(int, sys.stdin.readl..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/LBEUs/btqGGZN2dcz/Gvjc5r6mLdgK7Yg6DxPJck/img.png)
문제 2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net 풀이 bfs의 기본이 되는 문제. 새로 추가된 애(maze[i][j]로부터 파생된 애)의 자리에 기존(maze[i][j]) + 1을 해주는것이 가장 중요하다. import sys from collections import deque # N * M 미로 N, M = map(int, sys.stdin.readline().split(" ")) maze = [] for _ in range(N): maze.append(list(map(int, sys.stdin.readline().strip()))..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bf33Zw/btqGIil3wir/JXZcbuYra0PNAThp1lHod0/img.png)
문제 1260번: DFS와 BFS 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사 www.acmicpc.net 출력 첫째 줄에 DFS를 수행한 결과를, 그 다음 줄에는 BFS를 수행한 결과를 출력한다. V부터 방문된 점을 순서대로 출력하면 된다. import sys from collections import deque # N: 노드 수 / M: 간선 수 / V: 탐색 시작 지점 N, M, V = map(int, sys.stdin.readline().split(" ")) # 인접 리스트 adj = [[] for _ in range..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bqWQyu/btqGHyiB1Wb/1Gow7kJZphho3hU5tJ96KK/img.png)
문제 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍의 수가 주어�� www.acmicpc.net 풀이 인접리스트 adj와 visited 배열을 통해 bfs로 풀었다. 마지막에 1을 빼준건 1번 컴퓨터를 제외하기 위함 import sys from collections import deque # N: 노드 수 / M: 엣지 수 N = int(sys.stdin.readline()) M = int(sys.stdin.readline()) # 인접 리스트 adj = [[] for _ in range(N)] visited = [0 for _ in range(N)] ..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cff41K/btqGNCQ9R1B/Gkin0uK1bKDfiDUKO4wvW1/img.png)
문제 5430번: AC 문제 선영이는 주말에 할 일이 없어서 새로운 언어 AC를 만들었다. AC는 정수 배열에 연산을 하기 위해 만든 언어이다. 이 언어에는 두 가지 함수 R(뒤집기)과 D(버리기)가 있다. 함수 R은 배열에 있 www.acmicpc.net 풀이 나를 너무너무 힘들게했던.... 실버2에 덱문제라고 너무 만만하게 봤는지 런타임에러, 시간초과, 틀렸습니다를 모두 겪고나서야 겨우 맞았다. 먼저 1. R이 들어올때마다 reverse를 하면 절대 안된다 -> 무조건 터짐 따라서 reverse flag을 두고 R이 들어올때마다 1->0 0->1으로 바꿔준 후, 마지막에 reverse flag이 1이면 출력하기 전에 한번 뒤집어줬다. 2. 출력형식이 [1, 2, 3]이 아니라 [1,2,3] 이다. 여..
- Total
- Today
- Yesterday
- 카카오톡으로 로그인 오류
- 안드로이드 키해시
- 백준
- 백준 1644
- 카카오 키해시
- 백준 1806
- 코틀린 뷰페이저
- 전화번호목록 파이썬
- 안드로이드
- TextFormField keyboard
- 투포인터 알고리즘
- 투포인터 알고리즘 파이썬
- 코틀린 데이터바인딩
- 프로그래머스
- 코틀린
- counting sort
- 데이터바인딩 뷰바인딩 차이
- 카카오 기출
- 코틀린 바텀네비게이션
- 안드로이드 카카오톡으로 로그인
- 소수 구하기 파이썬
- 코틀린 리스트뷰
- Kotlin
- kotlin fragment
- flutter simultor
- 백준알고리즘
- 백준 2003
- 파이썬 최대공약수
- 시뮬레이터 키보드
- 코틀린 뷰바인딩
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |