본문 바로가기

Algorithm705

[구현/수학] 백준 1964 오각형, 오각형, 오각형… - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 1964번: 오각형, 오각형, 오각형… 첫째 줄에 N(1 ≤ N ≤ 10,000,000)이 주어진다. www.acmicpc.net 2. 문제 풀이 오각형으로 점이 늘어나는 개수를 구하는 문제입니다. 2022.01.19 - [Algorithm] - [Algorithm] 단골 1번 문제, 구현 / 수학 [Algorithm] 단골 1번 문제, 구현 / 수학 [ Contents ] 1. 구현 단순히 '구현'만 하면 되는 문제 유형입니다. 문제를 이해하고 입력에 맞춰 적절한 출력만 하면 됩니다. 특별한 알고리즘이나 프로그래밍적 기법 없이, 단순 제어문만 사용하 star7sss.tistory.com 점이 늘어나는 규칙을 찾아야 합니다. n = 1: 5 n = 2: 1.. 2022. 5. 29.
[구현/수학] 백준 3047 ABC - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 3047번: ABC 첫째 줄에 세 수 A, B, C가 주어진다. 하지만, 순서는 A, B, C가 아닐 수도 있다. 세 수는 100보다 작거나 같은 자연수이다. 둘째 줄에는 A, B, C로 이루어진 세 글자가 주어지며, 이 순서대로 출력하면 www.acmicpc.net 2. 문제 풀이 세 수를 입력받고, 주어진 순서대로 출력하는 문제입니다. 1) 세 수를 오름차순으로 정렬한 뒤, A B C에 매칭 2) 주어진 순서대로 출력 위 과정을 구현해야 합니다. 3. 코드 # 입력 a, b, c = map(int, input().split()) order = input() # 오름차순 정렬 a, b, c = sorted((a, b, c)) # 순서대로 출력 for i .. 2022. 5. 28.
[탐색/BFS] 백준 7562 나이트의 이동 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 7562번: 나이트의 이동 체스판 위에 한 나이트가 놓여져 있다. 나이트가 한 번에 이동할 수 있는 칸은 아래 그림에 나와있다. 나이트가 이동하려고 하는 칸이 주어진다. 나이트는 몇 번 움직이면 이 칸으로 이동할 수 www.acmicpc.net 2. 문제 풀이 나이트가 몇 번 이동해야 원하는 지점에 도착하는지 구하는 문제입니다. 2022.02.23 - [Algorithm] - [Algorithm] 너비 우선 탐색(BFS), 가까운 주변부터 찾자 [Algorithm] 너비 우선 탐색(BFS), 가까운 주변부터 찾자 BFS는 가까운 주변부터 탐색하는 알고리즘입니다. 큐를 이용한 BFS 구현방법과 코드를 알아보겠습니다. [ Contents ] 1. BFS(Bre.. 2022. 5. 27.
[구현/수학] 백준 1834 나머지와 몫이 같은 수 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 1834번: 나머지와 몫이 같은 수 N으로 나누었을 때 나머지와 몫이 같은 모든 자연수의 합을 구하는 프로그램을 작성하시오. 예를 들어 N=3일 때, 나머지와 몫이 모두 같은 자연수는 4와 8 두 개가 있으므로, 그 합은 12이다. www.acmicpc.net 2. 문제 풀이 N으로 나눈 나머지와 몫이 같은 수를 구하는 문제입니다. 완전탐색으로 모든 수를 N으로 나누고 나머지와 몫을 비교하면 시간 초과가 날 뿐더러, 그 끝을 어디로 해야하는지 알 수도 없습니다. 그 대신에 나머지와 몫이 같은 수를 계산할 수는 있습니다. N으로 나눈 몫은 0부터 무한대까지 가능하지만, 나머지는 0 ~ N-1까지로 한정되어 있습니다. 즉, 몫과 나머지가 같은 수는 N개 밖에 .. 2022. 5. 26.
[구현/수학] 백준 11023 더하기 3 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 11023번: 더하기 3 첫째 줄에 N(1 ≤ N ≤ 100)개의 수가 공백으로 구분되어서 주어진다. 입력으로 주어지는 수는 10,000보다 작거나 같은 자연수이다. 또, 0으로 시작하는 수는 주어지지 않는다. www.acmicpc.net 2. 문제 풀이 n개의 숫자를 입력받고, 합을 출력하는 문제입니다. n을 알려주지 않고, 한 줄로 입력되는 수열의 합을 구해야 합니다. 2022.01.24 - [PL (Programming Language)/Python] - [Python] 사용자로부터 여러 입력값 받기 input().split() [feat. 형변환] [Python] 사용자로부터 여러 입력값 받기 input().split() [feat. 형변환] 202.. 2022. 5. 25.
[탐색/BFS] 백준 14940 쉬운 최단거리 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 14940번: 쉬운 최단거리 지도의 크기 n과 m이 주어진다. n은 세로의 크기, m은 가로의 크기다.(2 ≤ n ≤ 1000, 2 ≤ m ≤ 1000) 다음 n개의 줄에 m개의 숫자가 주어진다. 0은 갈 수 없는 땅이고 1은 갈 수 있는 땅, 2는 목표지점이 www.acmicpc.net 2. 문제 풀이 모든 지점에서 목표지점까지의 거리를 구하는 문제입니다. 2022.02.23 - [Algorithm] - [Algorithm] 너비 우선 탐색(BFS), 가까운 주변부터 찾자 [Algorithm] 너비 우선 탐색(BFS), 가까운 주변부터 찾자 BFS는 가까운 주변부터 탐색하는 알고리즘입니다. 큐를 이용한 BFS 구현방법과 코드를 알아보겠습니다. [ Cont.. 2022. 5. 24.
[구현/수학] 백준 2846 오르막길 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 2846번: 오르막길 상근이는 자전거를 타고 등교한다. 자전거 길은 오르막길, 내리막길, 평지로 이루어져 있다. 상근이는 개강 첫 날 자전거를 타고 가면서 일정 거리마다 높이를 측정했다. 상근이는 가장 큰 오르 www.acmicpc.net 2. 문제 풀이 최대 오르막길 길이를 구하는 문제입니다. 중간에 높이가 같거나, 낮아지면 오르막길로 인정하지 않습니다. 2 3 3 5 예를 들어, 위와 같은 수열의 최대 오르막길 길이는 '2'입니다. (3 -> 5) 중간에 3 3으로 높이가 동일하기 때문에, 2에서 5까지 오르막길로 인정받지 못합니다. 3. 코드 # 입력 N = int(input()) numlist = list(map(int, input().split().. 2022. 5. 23.
[구현/수학] 백준 14489 치킨 두 마리 (...) - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 14489번: 치킨 두 마리 (...) 첫째 줄에 두 통장의 잔고 A와 B가 주어진다. (0 ≤ A, B ≤ 1,000,000,000) 둘째 줄에 치킨 한 마리의 가격 C가 주어진다. (0 ≤ C ≤ 1,000,000,001) www.acmicpc.net 2. 문제 풀이 "치킨이 2개지요..." 문제입니다. 두 통장의 잔고로 치킨 두마리를 살 수 있는지 없는지를 판별해야 합니다. 3. 코드 # 입력 A, B = map(int, input().split()) C = int(input()) # 치킨 구매 가능 if A+B >= C*2: print(A+B-C*2) else: print(A+B) 2022. 5. 22.
[구현/수학] 백준 4504 배수 찾기 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 4504번: 배수 찾기 첫째 줄에 n이 주어진다. 다음 줄부터 한 줄에 한 개씩 목록에 들어있는 수가 주어진다. 이 수는 0보다 크고, 10,000보다 작다. 목록은 0으로 끝난다. www.acmicpc.net 2. 문제 풀이 주어진 수가 n의 배수가 맞는지 아닌지 판별하는 문제입니다. 2022.01.19 - [Algorithm] - [Algorithm] 단골 1번 문제, 구현 / 수학 [Algorithm] 단골 1번 문제, 구현 / 수학 [ Contents ] 1. 구현 단순히 '구현'만 하면 되는 문제 유형입니다. 문제를 이해하고 입력에 맞춰 적절한 출력만 하면 됩니다. 특별한 알고리즘이나 프로그래밍적 기법 없이, 단순 제어문만 사용하 star7sss... 2022. 5. 21.