본문 바로가기

분류 전체보기

(120)
[Python, 파이썬] SWEA 1219. [S/W 문제해결 기본] 4일차 - 길찾기 A도시에서 출발하여 B도시로 가는 길이 존재하는지 알아내는 문제. def DFS(i): global find if(i==99): find = True for p in graph[i]: DFS(p) # 자식으로 이동 T = 10 # 테스트케이스의 개수 Tfor test_case in range(1, T+1): test_case, N = map(int, input().split()) # 테스트케이스 번호, 총 길의 개수 all_ = list(map(int, input().split())) # 모든 길의 총 집합 graph = [[] for _ in range(100)] # 인접 리스트 for i in range(N): ..
[Python, 파이썬] SWEA 3809. 화섭이의 정수 나열 주어진 정수열로 만들 수 없으면서 가장 작은 정수를 구하는 문제.예) 위와 같은 정수가 주어질 때, 주어진 문자열로 만들 수 없는 가장 작은 수는 12!  def find(A): number = ''.join(A) # 문자열로 변환 for i in range(int(number)): # number 수만큼 반복 if(str(i) not in number): # number 안에 없으면 return i # 없는 수 returnT = int(input()) # 테스트케이스의 개수 Tfor test_case in range(1, T+1): N = int(input()) # 숫자 N A = [] # 정수 N개 # 주어진 개수 만큼 입력 받음 whi..
[Python, 파이썬] SWEA 9229. 한빈이와 Spot Mart 한빈이가 들고 다닐수 있는 과자들의 최대 무게 합을 구하는 문제.  T = int(input()) # 테스트케이스의 개수 Tfor test_case in range(1, T+1): N, M = map(int, input().split()) # 과자 봉지의 개수 N, 무게 합 제한 M snack = list(map(int, input().split())) # N개의 과자 봉지 무게 max_ = -1 for i in range(N-1): for j in range(i+1, N): if(snack[i]+snack[j]    [문제풀이] 언어 선택에 python이 없지만 일단 python으로 풀었다.처음엔 바로 완전탐색이 떠올랐으나 선택할 수 있는 과자 봉지..
[Python, 파이썬] SWEA 3431. 준환이의 운동관리 준환이가 제한되어 있는 시간을 넘은 운동을 한 것인지, 그것이 아니라면 몇 분 더 운동을 해야 제한을 맞출 수 있는지 체크하는 문제.  T = int(input()) # 테스트케이스의 개수 Tfor test_case in range(1, T+1): L, U, X = map(int, input().split()) # L분 이상, U분 이하, 운동한 시간 X분 answer = 0 if(X > U): # 운동 시간 초과 시 answer = -1 elif(X   [문제풀이] 이게 대체 왜 D3인지 모르겠다....if(X > U): # 운동 시간 초과 시 answer = -1elif(X   입력받은 테스트케이스마다 지정한 범위 L체감 난이도는 D1 정도...
[Python, 파이썬] SWEA 1218. [S/W 문제해결 기본] 4일차 - 괄호 짝짓기 4 종류의 괄호문자들 '()', '[]', '{}', '' 로 이루어진 문자열이 주어진다. 이 문자열에 사용된 괄호들의 짝이 모두 맞는지 판별하는 문제.   T = 10 # 테스트케이스 개수for test_case in range(1, T+1): N = int(input()) # 괄호 문자들 길이 bracket = list(input()) # 괄호 문자들 dic = {'(':0, ')':0, '[':0, ']':0, '{':0, '}':0, '':0} # 괄호 dict pair = [('(', ')'), ('[', ']'), ('{', '}'), ('')] # 페어 기술 ok = 1 # 유효성 여부 for flag in bracket: dic[flag] += ..
[Python, 파이썬] SWEA 1211. [S/W 문제해결 기본] 2일차 - Ladder2 최단거리로 바닥에 도착하는 출발점 X를 구하는 문제. 100 x 100 크기의 2차원 배열로 주어진 사다리에 대해서, 모든 출발점을 검사하여 바닥까지 가장 짧은 이동 거리를 갖는 시작점 x(복수 개인 경우 가장 큰 x좌표)를 찾는 문제!  def find_starting_points(maps): # 출발점 목록 return [i for i in range(100) if maps[0][i] == 1] T = 10 # 테스트케이스의 개수 Tfor test_case in range(1, T+1): test_case = int(input()) # 테스트케이스 번호 maps = [list(map(int, input().split())) for _ in range(100)] # 맵 입력 ..
[Python, 파이썬] SWEA 16910. 원 안의 점 x2+y2 T = int(input()) # 테스트케이스의 개수 Tfor test_case in range(1, T+1): N = int(input()) # 정수 N answer_0 = 0 # 0이 들어간 정답 개수 answer_not0 = 0 # 0이 들어가지 않은 정답 개수 for i in range(N, -1, -1): # N ~ 0까지 역으로 for j in range(N+1): # 0 ~ N까지 역으로 if(pow(i, 2)+pow(j, 2)     [문제풀이]예) N이 10일 때3 43 -4-3 4-3 -4 예를 들면 N이 10이라 할때, 구한 x, y 좌표 (3, 4)의 경우는 음수를 고려해서 이렇게 총 4개가 나온다.반대로 0이 하나라..
[Python, 파이썬] SWEA 1229. [S/W 문제해결 기본] 8일차 - 암호문2 2가지 명령어가 주어졌을 때, 모든 명령어를 수행하고 나온 결과의 암호문의 처음 10자리의 숫자를 구하는 문제. 첫 번째 줄 : 원본 암호문의 길이두 번째 줄 : 원본 암호문세 번째 줄 : 명령어의 개수네 번째 줄 : 명령어  1. I(삽입) x, y, s : 앞에서부터 x의 위치 바로 다음에 y개의 숫자를 삽입.2. D(삭제) x, y : # 앞에서부터 x의 위치 바로 다음부터 y개의 숫자를 삭제.  T = 10 # 테스트케이스의 개수 Tfor test_case in range(1, T+1): N = int(input()) # 원본 암호 길이 original = input().split() # 원본 암호 Q = int(input()) # 질의의 개수 add = input().spl..