본문 바로가기

코딩 테스트/구현4

[백준 19237번] 어른 상어 문제 풀이 (1) 배열에 상어 번호와 냄새가 남은 시간을 저장 - arr 배열 다음과 같이 초기 배열이 정해지면 아래처럼 배열에 [상어 번호, 냄새가 남은 시간] 으로 저장한다. [ [[0, 0], [0, 0], [0, 0], [0, 0], [3, 4]], [[0, 0], [2, 4], [0, 0], [0, 0], [0, 0]], [[1, 4], [0, 0], [0, 0], [0, 0], [4, 4]], [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0]], [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0]] ] (2) 각 상어의 현재 위치 저장 - location 배열 [[], [2, 0], [1, 1], [0, 4], [2, 4]].. 2023. 11. 6.
[백준 2469번] 사다리 타기 문제 풀이 (with python) 먼저, 이 문제에 감을 잡기위해 입출력을 이용해 사다리 타기가 완성되어 있다고 가정하고, 사람들이 원하는 순서대로와 동일하게 출력되는지를 테스트 해보았다. arr[ row ][ j ] 에 ' - ' 표시가 있을 경우 people[ j ]와 people[ j + 1]의 값을 교환했다. import sys input = sys.stdin.readline n = int(input()) row = int(input()) arr = [] goal = list(input().rstrip()) people = sorted(goal) for i in range(row): arr.append(list(input().rstrip())) for i in range(row): for j.. 2023. 8. 17.
[백준 18311번] 왕복 문제풀이 지나야 할 코스를 출력하는 것이므로 다음 코스를 더했을때 K 값보다 큰 경우 해당 코스를 출력하는 방식으로 생각했다. K가 N번째 코스에 도착하기 전에 (N번 코스를 찍고 다시 돌아오기 전에) K값보다 커지는 경우와, N번째에서 다시 돌아와야 하는 두 경우로 생각했다. 결과 값은 배열 인덱스를 통해 계산한 했으므로 + 1 해주면 된다. import sys dist = 0 result = 1 N, K = map(int, input().split()) arr = list(map(int, input().split())) for i in range(N): result = i dist += arr[i] if dist > K: break if dist < K: f.. 2023. 8. 16.
[백준 17413번] 단어 뒤집기 2 문장의 단어인지를 구분하는 것은 괄호와 공백이다. 문장을 리스트로 만들어 괄호 안일 경우 flag = True로 놓고 순서대로 result에 저장하고, 단어인 경우는 flag = False 로 놓고 임시 문자열에 저장한 후, 순서를 바꾸었다. s=list(input()) flag=False word='' result='' for i in s: if flag==False: # 괄호이거나 문자이거나 공백 if i=='': flag=False result=result+word word='' print(result+word) 2023. 8. 15.