728x90

알고리즘/SWAE 23

[Python] 5097. 회전, 5099. 피자 굽기, 5102. 노드의 거리, 5105 미로의 거리

5097. 회전 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 import sys sys.stdin = open("5097.txt", "r") T = int(input()) for tc in range(1,T+1): N, M = list(map(int,input().split())) nlst = list(map(int,input().split())) cnt = 1 while True: temp = nlst.pop(0) nlst.append(temp) cnt += 1 if cnt == M: break print("#{} {}".format(tc, nlst[1])) # ### # for i in range(M): # data ..

알고리즘/SWAE 2021.03.05

[Python] [D3] 1225. 암호생성기 ( 큐 )

출저 : SW Expert Academy 1225번 암호 생성기 문제. 문제 : 다음 주어진 조건에 따라 n개의 수를 처리하면 8자리의 암호를 생성할 수 있다. - 8개의 숫자를 입력 받는다. - 첫 번째 숫자를 1 감소한 뒤, 맨 뒤로 보낸다. 다음 첫 번째 수는 2 감소한 뒤 맨 뒤로, 그 다음 첫 번째 수는 3을 감소하고 맨 뒤로, 그 다음 수는 4, 그 다음 수는 5를 감소한다. 이와 같은 작업을 한 사이클이라 한다. 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 # T = 1 # f..

알고리즘/SWAE 2021.03.04

[Python] (D2) 4871.그래프 경로 // DFS 응용 문제

DFS(깊이 우선 탐색) - 그래프 깊이에 따라 우선적으로 탐색(깊은 부분부터) 과정 1. 탐색 4방향 탐색 ex ) 우하좌상 dr = [1,0,-1,0 ] dc = [ 0,-1,0,1] for i in range(4): nextr = r+ dr[i] nextc = c+ dc[i] 를 응용하여 탐색 알고리즘을 만들어주자 1234567891011121314151617181920212223242526def search(s): stack.append(s) visited[s] = 1 while stack: if s == g: return 1 else: for i in node[s]: if not visited[i]: visited[i] = 1 stack.append(i) s = stack.pop() return..

알고리즘/SWAE 2021.03.02

[Python] - D2 - 2005. 파스칼의 삼각형

간단하게 말해보자면 1. 파스칼의 규칙을 가지고있다. 2. 첫 번째 줄은 항상 1 3. 두 번째 줄부터 각 숫자들은 자신의 왼쪽과 오른쪽 위의 숫자의 합으로 구성된다. ex ) if N = 4 N | 그래프 1번째 | 1 2번째 | 1 1 3번째 | 1 2 1 4번째 | 1 3 3 1 단, 우리가 출력할때는 그냥 1 1 1 1 2 1 1 3 3 1 이렇게 출력하게 하면됩니당. 풀이방법 123456789101112131415161718T = int(input())for tc in range(1,T+1): N = int(input()) ans = [[1]] for i in range(1,N): row = [1] for j in range(len(ans[-1])-1): total = 0 for k in ran..

알고리즘/SWAE 2021.02.23

[SWAE-Python] 4861. 회문1/4864. 문자열 비교/4865. 글자수

4861. 회문1 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 32 33 34 35 36 37 38 39 40 T = int(input()) for tc in range(1, T + 1): # N = 배열의 크기, M = 회문의 길이 N, M = list(map(int, input().split())) arr = [0] * N # 영어가 들어갈 칸 만들기 result = [] #가로(R, 행) 확인 r_lst = [] #회문 모든 문자열 받기 , 배열의 크기만큼 i가 반복한다. for i in range(N): #문자 넣기 char = input() #넣어진 문자를 바로 가로 확인 배열에 넣어준다. ..

알고리즘/SWAE 2021.02.18

[SWAE-Python] 2072. 홀수만 더하기, 1986. 지그재그 숫자, 1926. 간단한 369게임

비교적 간단한 문제 2개와.. 홀수만 더하기 1 2 3 4 5 6 7 8 9 10 T = int(input()) #테스트 케이스 3개 # 10개의 수를 입력 받아 , 홀수 값만 더해라. for tc in range(1, T+1): nlst = list(map(int, input().split())) temp = 0 for i in range(0,len(nlst)): if nlst[i]%2==1 : temp += nlst[i] print("#{} {}".format(tc, temp)) cs 지그재그 숫자 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 T = int(input()) #테스트 케이스 3개 # 10개의 수를 입력 받아 , 홀수 값만 더해라. for tc i..

알고리즘/SWAE 2021.02.15

[SWAE-Python] 6485. 삼성시의 버스노선, 1959. 두개의 숫자열

1 삼성시의 버스노선 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 T = int(input()) for tc in (1,T+1): N = int(input()) bus_stop = [0] * (5001) #버스 정류장 체크 포인트 for i in range(N): A,B = map(int, input().split()) # 해당 정류장에 지나는 버스의 대수 누적 for j in range(A, B+1): bus_stop[j] += 1 P = int(input()) # 우리가 확인하고 싶은 버스정류장의 수 print("#{}".format(tc), end = " ") for i in range(P): C = int(input()) print(bus_sto..

알고리즘/SWAE 2021.02.15
728x90