문제의 저작권은 SW Expert Academy에 있습니다. 5102. [파이썬 S/W 문제해결 기본] 6일차 - 노드의 거리 문제 V개의 노드 개수와 방향성이 없는 E개의 간선 정보가 주어진다. 주어진 출발 노드에서 최소 몇 개의 간선을 지나면 도착 노드에 갈 수 있는지 알아내는 프로그램을 만드시오. 예를 들어 다음과 같은 그래프에서 1에서 6으로 가는 경우, 두 개의 간선을 지나면 되므로 2를 출력한다. 풀이 그래프 찾기라고 대놓고 말하고 있다. BFS하자. 노드의 개수는 50개니까 인접행렬 해도 되겠다. 서로 연결되지 않는다면, 0을 출력한다. BFS(G,V) # g는 그래프, 탐색 시작점 v 큐생성 시작점 v를 큐에 삽입 점 v를 방문한 것으로 표시우선은 큐에 출발 점을 넣는다. 이때 중요한 것은..
문제의 저작권은 SW Expert Academy에 있습니다. 5105. 미로의 거리 문제 NxN 크기의 미로에서 출발지 목적지가 주어진다. 이때 최소 몇 개의 칸을 지나면 출발지에서 도착지에 다다를 수 있는지 알아내는 프로그램을 작성하시오. 풀이 bfs을 통해 이차원의 최소 거리 찾기 경로같은 경우는 dfs를 써야한다. bfs는 모든칸의 경우를 최단 거리로 탐색하기 때문이다. 출발지와 목적지가 주어짐. 벽으로 둘러쌓인 경우가 아니기 때문에 범위 안넘어가게 고려를 해야한다. 경로 있으면 지나가는 칸수를 세면 되고 없으면 0을 출력하면된다. 5 13101 10101 10101 10101 10021 입력값을 문자열로 '13101'이런식으로 넣어도 되고 아니면 리스트로 [1, 3, 1, 0, 1]로 리스트로 2..
문제의 저작권은 SW Expert Academy에 있습니다. 파이썬 SW문제해결 기본 - Queue 문제 N개의 피자를 동시에 구울 수 있는 화덕이 있다. 피자는 치즈가 모두 녹으면 화덕에서 꺼낸다. 1번부터 M번까지 M개의 피자를 순서대로 화덕에 넣을 때, 치즈의 양에 따라 녹는 시간이 다르기 때문에 꺼내지는 순서는 바뀔 수 있다. 주어진 조건에 따라 피자를 구울 때, 화덕에 가장 마지막까지 남아있는 피자 번호를 알아내는 프로그램을 작성하시오. 해설 Queue 자체 라이브러리 보다 deque를 쓰는게 빠르다. 그러니 bfs 풀때는 deque를 아래 처럼 쓰자. 사실 지금 풀이는 여러수정을 거쳐서 좀 복잡하게 만들었다. 다음에 다시 풀어서 올리겠다. 우리가 구해야 하는것은 남은 치즈의 양이 아닌 피자의 ..
문제의 저작권은 SW Expert Academy에 있습니다. import collections TC = int(input()) for tc in range(1, TC+1): N, M = map(int, input().split()) data = list(map(int, input().split())) deq = collections.deque() for i in data: deq.append(i) while M > 0: a = deq.popleft() deq.append(a) M -= 1 print("#%d %d"%(tc, deq[0])) Queue의 매우 기본 문제다 이때 포인트는 파이썬에서는 deque를 활용해야 좀더 빠르게 풀 수 있다. queue라이브러리 같은 경우는 쓰래드 같은 복잡한 경우도 포..
4880. sw expert academy 토너먼트 카드게임 문제의 저작권은 SW Expert Academy에 있습니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 def sol(st, en): selection = [st, en] solve = [[0], [0, 0, 1, 0], [0, 0, 0, 1], [0, 1, 0, 0]] res = solve[data[st]][data[en]] return selection[res] def div(start, end): if start == end: return start st = div(start, (start+end)//2) en = div((start+end)//2 + 1, end) return sol(st,..
- Total
- Today
- Yesterday
- error:0308010C:digital envelope routines::unsupported
- pandas
- read_csv
- Queue
- NextJS
- nextjs autoFocus
- next.config.js
- Vue
- 클라우데라
- Express
- JavaScript
- mongoDB
- react
- vuejs
- Deque
- useHistory 안됨
- django
- BFS
- typescript
- UserCreationForm
- react autoFocus
- DFS
- nodejs
- TensorFlow
- logout
- 자료구조
- useState
- Python
- login
- 자연어처리
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |