Algorithm/백준(파이썬)

Algorithm/백준(파이썬)

백준 10819 파이썬(Python) 문제풀이 차이를 최대로

문제링크:https://www.acmicpc.net/problem/10819 import sys import itertools # N개의 정수로 이루어진 리스트 입력받기 N = int(sys.stdin.readline()) A = list(map(int, sys.stdin.readline().split())) # permutations 메소드는 가능한 순열들의 조합을 튜플로 생성해 해당 레퍼런스를 반환한다. per = itertools.permutations(A) res = 0 for i in per: s = 0 # per안의 순열들의 차이(s)를 구해 s가 res보다 클시에 업데이트 for j in range(1, N): s += abs(i[j - 1] - i[j]) if res < s: res = s..

Algorithm/백준(파이썬)

백준 1074 파이썬(Python) 문제풀이 Z

문제링크:https://www.acmicpc.net/problem/1074 import sys def z(n, r, c, res): length = 2 ** n # 배열 길이 half = length // 2 # 사분면으로 만들기위한 배열길이의 절반길이 구하기 if n == 1: # 재귀 종료조건 2x2 4 최소 사분면이 만들어질 경우 print(2 * r + c + res) # row가 늘어나면 도착횟수가 2씩 늘어나고 colunm이 늘어나면 1씩 늘어난다. return if r >= half and c >= half: # 4사분면일떄 조건 z(n - 1, r - half, c - half, res + 3 * half * half) elif r >= half > c: # 3사분면일때 조건 z(n - 1..

Algorithm/백준(파이썬)

백준 9663 파이썬(Python) 문제풀이 N-Queen(N퀸)

문제링크:https://www.acmicpc.net/problem/9663 # limitation - 백트레킹 함수 > 퀸이 같은 행렬에 있으면 안됨, 퀸이 대각선에 있으면 안됨 false일시 그행 제외 # 입력 N은 NxN 체스판 row[0]*n 으로 사용 # result - > =+ 로 출력할 방법갯수 카운팅 # 출력 퀸을 놓을수있는 방법 출력 # import sys n = int(sys.stdin.readline()) row = [0] * n cnt = 0 #퀸을 놓고 그 이후 놓기 불가능한 줄 찾기 def prommising(a): for i in range(a): if row[a] == row[i] or abs(row[a] - row[i]) == abs(a - i): return False re..

Algorithm/백준(파이썬)

백준 1914 파이썬(Python) 문제풀이 하노이의 탑

문제링크:https://www.acmicpc.net/problem/1914 import sys n = int(sys.stdin.readline()) # n: 원판 갯수 , 1번기둥(start) - s기둥, 2번 기둥(middle) - m 기둥, 3번 기둥(end) - e 기둥 def hanoi(n, s, e): m = 6 - s - e # 2번기둥 if n == 1: print(s, e) # else: hanoi(n - 1, s, m) # n-1 의 원판을 전부 s -> m (그 안에서 print 1,3 -> 1,2 -> 3,2...) print(s, e) #남은 하나를 s -> e 1,3 hanoi(n - 1, m, e) # m에 위치한 n-1의 원판을 전부 -> e로 print(2 ** n - 1) ..

Algorithm/백준(파이썬)

백준 2628 파이썬(Python) 문제풀이 종이자르기

문제링크:https://www.acmicpc.net/problem/2628 import sys paper = list(map(int, sys.stdin.readline().split())) # paper 는 종이 가로 세로 입력 t = int(sys.stdin.readline()) width = [0, paper[0]] # width는 가로 길이 *미리 0이 들어가있는 것이 중요!!* height = [0, paper[1]] # height는 세로 길이 *미리 0이 들어가있는 것이 중요!!* #이유 -> 종이를 xy로 생각했을떄 0,0 좌표가 있어야 최대 넓이값 구할떄 오류 발생 x for _ in range(t): # t는 테스트 케이스 수 c = list(map(int, sys.stdin.readli..

Algorithm/백준(파이썬)

백준 1065 파이썬(Python) 문제풀이 한수

문제링크:https://www.acmicpc.net/problem/1065 import sys N = int(sys.stdin.readline()) cnt = 0 for i in range(1, N + 1): # 0이 아닌 한자리 수(비교할 대상이 없다), 두자리 수는 전부 한수이다! if i < 100: cnt += 1 else: a = list(str(i)) # 3자리수 이상부턴 문자열로 나눠서 각자리 숫자 list에 담기 if int(a[1]) - int(a[0]) == int(a[2]) - int(a[1]): # 입력받은 수가 등차수열인지 확인 cnt += 1 print(cnt)

Algorithm/백준(파이썬)

백준 9020 파이썬(Python) 문제풀이 골드바흐의 추측

문제링크:https://www.acmicpc.net/problem/9020 import sys # 소수를 구하는 함수 def prime(a): if a < 2: # 조건 1: 2보다 작으면 소수가 아니다. return False for i in range(2, a): # 2부터 a-1까지 if a % i == 0: # 조건 2: a를 i부터 a-1까지 나눴을떄 나머지가 존재하지 않으면 소수가 아니다. return False return True t = int(sys.stdin.readline()) n = [] for _ in range(t): n.append(int(sys.stdin.readline().strip())) for j in range(len(n)): q, w = n[j] // 2, n[j] ..

Algorithm/백준(파이썬)

백준 2869 파이썬(Python) 문제풀이 달팽이는 올라가고 싶다

문제 링크:https://www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) www.acmicpc.net import sys import math condition = list(map(int, sys.stdin.readline().split())) A = condition[0] # 달팽이가 낮에 올라갈 높이 ex) input(2) B = condition[1] # 달팽이가 밤에 내려올 높이 ex) input(1) V = condition[2] # V높이의 나뭇가지 ex) input(5) days = (V - B) / (A - B) # *정상에 올라..

김상주
'Algorithm/백준(파이썬)' 카테고리의 글 목록 (5 Page)