파이썬
-
[Softeer] 소프티어 로봇이 지나간 경로(python)Python/Softeer 2022. 7. 26. 15:21
문제) 알고리즘) 출력 기준 1. 출발 시작점 좌표값 2. 시작시 로봇이 바라보는 방향 3. 시작부터 끝까지 로봇이 이동 결과 (전진, 좌회전, 우회전) *시작점 찾기 -그래프 탐색을 통해 '#'를 찾고 현재 위치 '#'에서 4방향을 탐색해 '.'이거나 범위외 좌표를 포함해 3개이상이라면 해당 위치는 출발점으로 설정합니다. *이동 - 이동전에 로봇의 현재 상태(방향)를 출력하고 시작한다. - 일반적인 BFS알고리즘을 사용해서 '#'를 찾으며 이동하고 방문처리는 '#' -> '.'로 바꾸면서 처리했습니다. - 3번쨰 출력물인 이동 결과는 코드상에서 방향잡기아래에 해당하는 코드로 처리했습니다. 코드) #[인증평가(1차) 기출] 로봇이 지나간 경로 #사수가 조작한 로봇이 i행 j열을 방문했다면 #이고, 방문하..
-
[OpenCV] 모듈 패키지 오류설정Python/openCV 2022. 3. 14. 23:15
일단 이 글을 기록해두자고 마음먹은 계기는 vsocde에서 모듈파일을 찾지 못해서 이다. 주로 사용하는 환경이 vscode인데 현재 노트북에는 Anaconda도 깔려있는 상태이다. 그런데 opencv를 사용하기 위해서 vscode 터미널에서 해당 모듈을 설치 하였다. pip install OpenCV-Python 하지만 해당 모듈이 Anaconda쪽 파일에 깔려서 vscode 환경에서는 해당 모듈 패키지를 불러오지 못해서 아무리 import cv2 를 해도 쓸 수가 없었습니다. 일단 2가지 설정을 변경 했습니다. 1. 환경변수 설정 내pc > 속성 > 고급 시스템 설정 > 환경변수 > 시스템 변수 > Path에서 1.Python파일이 깔려있는 위치를 추가 2.Python\Scripts 위치 추가 이렇게 ..
-
[백준] 8911번 거북이(python)Python/BAEKJOON 2022. 1. 21. 16:55
문제) 알고리즘) - "시작" 부분에서 활용할 변수들 선언 각 테스트마다 초기화를 위함 - 이동명령에 따른 def move_d와 def turtle_s 함수 - "좌표 계산"은 거북이의 활동 반경을 기록 - result_x, result_y x좌표(최대- 최소) * y좌표(최대-최소) 출력 코드) #거북이 import sys input = sys.stdin.readline test_c = int(input()) #테스트 갯수 def move_d(i): #방향 회전 global cnt if i == 'L': cnt -= 1 cnt %= 4 elif i == 'R': cnt += 1 cnt %= 4 return cnt def turtle_s(turtle, i): #해당 방향으로 이동 global cnt if..
-
[백준] 3048번 개미(python)Python/BAEKJOON 2022. 1. 19. 15:14
문제) 알고리즘) - g1과 g2 2개의 그룹으로 나누고 기준이 될 g1은 reverse 상태로 변환 후 result에 g1+g2로 저장 - 해당 초에 result 리스트 값을 반복해서 조건에 맞는 값을 자리 바꿈 - 진행 시간(num)과 입력 시간(time)이 같다면 종료 후 최종 출력 코드) import sys input = sys.stdin.readline g1_cnt, g2_cnt = map(int, input().split()) g1 = list(reversed(input().rstrip())) #진행방향에 맞게 reverse g2 = list(input().rstrip()) time = int(input()) result = g1 + g2 num = 0 #시간 기준 while num < tim..
-
[백준] 2841번 외계인의 기타연주(python)Python/BAEKJOON 2022. 1. 8. 17:31
문제) 알고리즘) - 처음 n, p 입력을 통해 스택(string)을 구성한다. 이후 n개만큼의 줄과 플렛을 입력 - 각 줄과 프렛을 통해 반복문을 통해 해당하는 줄에 추가 및 삭제 -최종적으로 손가락을 움직이는 횟수를 카운트 코드) # #외계인의 기타연주 import sys n, p = map(int, sys.stdin.readline().split()) #줄과 프렛 입력 string = [[] for _ in range(n)] #줄 갯수만큼 count = 0 #손가락을 움직이는 횟수 for _ in range(n): #n개만큼 입력 test_s, test_f = map(int, sys.stdin.readline().split()) while True: #해당 줄에 이전 입력이 없다면 if not st..