Python_알고리즘/Silver V
-
14655. [Python]욱제는 도박쟁이야!!Python_알고리즘/Silver V 2025. 1. 2. 17:09
1. 문제 https://www.acmicpc.net/problem/14655 2. 접근 방법 시간 제한: 2초메모리 제한: 256MB그리디 3. 파이썬 코드 N = int(input())# 첫 경기 값들first = list(map(int,input().split()))# 둘째 경기 값들second = list(map(int,input().split()))# 첫 경기 합first_max = 0# 둘째 경기 합second_max = 0# 첫 경기합 절대값for i in first: first_max += abs(i)# 둘째 경기합 절대값for i in second: second_max += abs(i)# 두 경기합 더하기print(first_max + second_max) 4. 문제를 풀고난..
-
3060. [Python]욕심쟁이 돼지Python_알고리즘/Silver V 2023. 7. 24. 18:41
1. 문제 https://www.acmicpc.net/problem/3060 3060번: 욕심쟁이 돼지 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 입력 데이터의 수를 나타내는 정수 T가 주어진다. 각 테스트 데이터는 두 줄로 구성되어 있고, 첫째 줄에는 하루에 배달되는 사 www.acmicpc.net 2. 접근 방법 시간 제한: 1초 메모리 제한: 128MB 구현 수학 3. 파이썬 코드 T = int(input()) for i in range(T): # 하루 식사 제한 day_meal = int(input()) # 돼지들의 총 식사 pig_meal = list(map(int,input().split())) # 일수 cnt = 1 # 만약 초기 값이 하루 식사치를 넘었을 경우 if s..
-
2828. [Python]사과 담기 게임Python_알고리즘/Silver V 2023. 7. 13. 18:49
1. 문제 https://www.acmicpc.net/problem/2828 2828번: 사과 담기 게임 상근이는 오락실에서 바구니를 옮기는 오래된 게임을 한다. 스크린은 N칸으로 나누어져 있다. 스크린의 아래쪽에는 M칸을 차지하는 바구니가 있다. (M pos and base_value = base_value: # 갯수 파악하는 변수에 현재 바구니 왼쪽끝의 위치에서 현재 사과위치 -1을 더해줌 # 앞선 조건에서 pos > 으로 설정했기 때문에 -1을 해줌 cnt += (pos-(base_value-1)) # 이 또한 위 주식과 마찬가지 pos = base_value-1 # 0보다 작아졌을 경우 0으로 초기화 if pos < 0: pos = 0 index += 1 print(cnt) 4. 문제를 풀고난 후..
-
10826. [Python]피보나치 수 4Python_알고리즘/Silver V 2023. 5. 17. 22:33
1. 문제 2. 접근 방법 시간 제한: 1초 메모리 제한: 256MB 다이나믹 프로그래밍 3. 파이썬 코드 # 피보나치 수열구하는 함수 def fibo(num): num_list = [0, 1] if num < 2: return num_list[num] else: for i in range(2, num + 1): num_list.append(num_list[i - 1] + num_list[i - 2]) return num_list[num] n = int(input()) print(fibo(n)) 4. 문제를 풀고난 후 생각 다이나믹 프로그래밍의 제일 기초적인 문제로 피보나치 수열을 구현하는 것이다. 0, 1 번째 숫자만 주어진 후 내가 넣은 n 값까지만 구하는 방식으로 구현을 진행하였고, 메모리도 유동적..
-
4096. [Python]팰린드로미터Python_알고리즘/Silver V 2023. 4. 26. 21:03
1. 문제 https://www.acmicpc.net/problem/4096 4096번: 팰린드로미터 입력은 여러 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, 현재 승환이의 주행 거리계에 적혀있는 수가 주어진다.이 숫자는 2자리와 9자리 사이(포함)이다. 예를 www.acmicpc.net 2. 접근 방법 시간 제한: 1초 메모리 제한: 128MB 브루트포스 3. 파이썬 코드 while True: num = input() # input 값이 0 이면 반복문 탈출 if num == "0": break else: # 몇번 더했는지 확인하는 변수 cnt = 0 # 초기의 길이를 체크 num_length = len(num) # 1씩 계속 더해나감 while True: # 앞뒤가 같..
-
1769. [Python]3의 배수Python_알고리즘/Silver V 2023. 4. 26. 02:43
1. 문제 https://www.acmicpc.net/problem/1769 1769번: 3의 배수 문제가 잘 풀리지 않을 때, 문제를 바라보는 시각을 조금만 다르게 가지면 문제가 쉽게 풀리는 경험을 종종 해 보았을 것이다. 여러 가지 방법이 있지만 그 중 하나로 우리가 풀고 싶은 문제를 www.acmicpc.net 2. 접근 방법 시간 제한: 2초 메모리 제한: 128MB 구현 3. 파이썬 코드 N = input() # 각 자리수의 합을 구해야 하기때문에 초기값이 10보다 큰지 작은지 판단 if int(N) >= 10: cnt = 0 # 무한루프를 통해서 각 자리 수의 합을 N 으로 갱신 while True: # 변수 선언 total = 0 # 각 자리수를 정수형으로 변화하며 total 에 값을 더해 ..
-
2822. [Python]점수 계산Python_알고리즘/Silver V 2023. 4. 8. 02:44
1. 문제 https://www.acmicpc.net/problem/2822 2822번: 점수 계산 8개 줄에 걸쳐서 각 문제에 대한 참가자의 점수가 주어진다. 점수는 0보다 크거나 같고, 150보다 작거나 같다. 모든 문제에 대한 점수는 서로 다르다. 입력으로 주어지는 순서대로 1번 문제, 2번 문 www.acmicpc.net 2. 접근 방법 시간 제한: 1초 메모리 제한: 128MB 정렬 3. 파이썬 코드 num_list = [] cnt = 1 # 인풋값 8개 값들을 리스트 저장, 인덱스값까지 for _ in range(8): num_list.append([int(input()),cnt]) cnt += 1 # 들어온 숫자를 내림차순으로 정렬 num_list.sort(reverse=True) total..
-
9625. [Python]BABBAPython_알고리즘/Silver V 2023. 4. 5. 15:34
1. 문제 https://www.acmicpc.net/problem/9625 9625번: BABBA 상근이는 길을 걷다가 신기한 기계를 발견했다. 기계는 매우 매우 큰 화면과 버튼 하나로 이루어져 있다. 기계를 발견했을 때, 화면에는 A만 표시되어져 있었다. 버튼을 누르니 글자가 B로 변했 www.acmicpc.net 2. 접근 방법 시간 제한: 1초 메모리 제한: 128MB 다이나믹 프로그래 3. 파이썬 코드 def dp(): # 정답 리스트 ans_list = [[1,0]] # K가 45까지 들어오기때문에 for _ in range(45): ans_list.append([ans_list[-1][1],ans_list[-1][0]+ans_list[-1][1]]) return ans_list K = int..
-
8979. [Python]올림픽Python_알고리즘/Silver V 2023. 4. 4. 00:35
1. 문제 https://www.acmicpc.net/problem/8979 8979번: 올림픽 입력의 첫 줄은 국가의 수 N(1 ≤ N ≤ 1,000)과 등수를 알고 싶은 국가 K(1 ≤ K ≤ N)가 빈칸을 사이에 두고 주어진다. 각 국가는 1부터 N 사이의 정수로 표현된다. 이후 N개의 각 줄에는 차례대로 각 www.acmicpc.net 2. 접근 방법 시간 제한: 1초 메모리 제한: 128MB 구현 정렬 3. 파이썬 코드 N,K = map(int,input().split()) num_list = [] # 나라별 리스트 추가 for _ in range(N): country = list(map(int,input().split())) num_list.append(country) # 금, 은, 동 순으로..
-
2740. [Python]행렬 곱셈Python_알고리즘/Silver V 2023. 3. 31. 20:27
1. 문제 https://www.acmicpc.net/problem/2740 2740번: 행렬 곱셈 첫째 줄에 행렬 A의 크기 N 과 M이 주어진다. 둘째 줄부터 N개의 줄에 행렬 A의 원소 M개가 순서대로 주어진다. 그 다음 줄에는 행렬 B의 크기 M과 K가 주어진다. 이어서 M개의 줄에 행렬 B의 원소 K개 www.acmicpc.net 2. 접근 방법 시간 제한: 1초 메모리 제한: 128MB 구현 3. 파이썬 코드 N,M = map(int,input().split()) # 첫번째 행렬 생성 matrix_1 = [] # 첫번째 행렬 값 입력 for _ in range(N): num_list = list(map(int,input().split())) matrix_1.append(num_list) L,K..