Algorithm/baekjoon65 [파이썬]baekjoon 1032: 명령 프롬포트 https://www.acmicpc.net/problem/1032 1032번: 명령 프롬프트 첫째 줄에 파일 이름의 개수 N이 주어진다. 둘째 줄부터 N개의 줄에는 파일 이름이 주어진다. N은 50보다 작거나 같은 자연수이고 파일 이름의 길이는 모두 같고 길이는 최대 50이다. 파일이름은 www.acmicpc.net 단순 구현문제 주어진 값들이 다 같은 값을 띄는지 확인 후 출력하면된다! n = int(input()) arr = [] for i in range(n): arr.append(input()) Max = len(arr[0]) for i in range(len(arr)): if Max !=len(arr[i]): arr[i] += '='*(Max-len(arr[i])) answer = '' for .. 2023. 3. 9. [파이썬]baekjoon 1283: 단축키 지정 https://www.acmicpc.net/problem/1283 1283번: 단축키 지정 첫째 줄에 옵션의 개수 N(1 ≤ N ≤ 30)이 주어진다. 둘째 줄부터 N+1번째 줄까지 각 줄에 옵션을 나타내는 문자열이 입력되는데 하나의 옵션은 5개 이하의 단어로 표현되며, 각 단어 역시 10개 이하 www.acmicpc.net 구현문제 import sys n = int(sys.stdin.readline()) arr = [] for _ in range(n): word = list(map(str, sys.stdin.readline().split())) for i in range(len(word)): if word[i][0].upper() not in arr: arr.append(word[i][0].upper(.. 2023. 3. 8. [파이썬]baekjoon 3980: 선발 명단 https://www.acmicpc.net/problem/3980 3980번: 선발 명단 각각의 테스트 케이스에 대해서, 모든 포지션의 선수를 채웠을 때, 능력치의 합의 최댓값을 한 줄에 하나씩 출력한다. 항상 하나 이상의 올바른 라인업을 만들 수 있다. www.acmicpc.net 브루스포스 문제 입력이 최대 11 *11 배열이므로 따로 dp를 쓸 필요없이 브루스포스로 풀었다. 전체 배열 돌면서 가장 수치가 높은 포메이션을 짜면 됨! def dfs(level, path): global Max if level ==11: Max = max(sum(path), Max) return for i in range(len(arr[level])): if arr[level][i] == 0: continue if vis.. 2023. 3. 7. [파이썬]baekjoon 19949: 영재의 시험 https://www.acmicpc.net/problem/19949 19949번: 영재의 시험 컴퓨터공학과 학생인 영재는 이번 학기에 알고리즘 수업을 수강한다. 평소에 자신의 실력을 맹신한 영재는 시험 전날까지 공부를 하지 않았다. 당연하게도 문제를 하나도 풀지 못하였지만 다행 www.acmicpc.net 브루스포스 문제 arr = list(map(int,input().split())) path = [0]*10 num = [0,1,2,3,4,5] result = 0 def dfs(level): global result if level ==10: cnt = 0 for i in range(len(path)): if path[i] == arr[i]: cnt +=1 if cnt >=5: break if cnt .. 2023. 3. 4. [파이썬]baekjoon 2302: 극장 좌석 https://www.acmicpc.net/problem/2302 2302번: 극장 좌석 주어진 조건을 만족하면서 사람들이 좌석에 앉을 수 있는 방법의 가짓수를 출력한다. 방법의 가짓수는 2,000,000,000을 넘지 않는다. (2,000,000,000 < 231-1) www.acmicpc.net dp문제 문제에 주어진 배열들을 그리다 보면 피보나치와 같은 점화식이 그려진다 이를 이용해서 문제를 풀면 해결 n = int(input()) dp = [0]*(n+1) m = int(input()) arr = [] for i in range(m): vip = int(input()) arr.append(vip) result = 1 dp[0] = 1 dp[1] = 1 st = 2 for i in range(st,.. 2023. 3. 3. [파이썬]baekjoon 2644: 촌수계산 https://www.acmicpc.net/problem/2644 2644번: 촌수계산 사람들은 1, 2, 3, …, n (1 ≤ n ≤ 100)의 연속된 번호로 각각 표시된다. 입력 파일의 첫째 줄에는 전체 사람의 수 n이 주어지고, 둘째 줄에는 촌수를 계산해야 하는 서로 다른 두 사람의 번호가 주어 www.acmicpc.net 다익스트라나, 여러 방법이 있겠지만 나같은 경우 dfs로 풀었다. 촌수를 타고 들어가는걸 직관적으로 확인할 이중배열을 만들고, 타고 들어가며 알고자 하는 사람과 몇촌인지 확인하면 됨! n = int(input()) arr = [[0]*(n+1)for _ in range(n+1)] f, c = list(map(int,input().split())) m = int(input()) .. 2023. 2. 28. 이전 1 2 3 4 ··· 11 다음