본문 바로가기

Algorithm705

[구현/문자열] 백준 6996 애너그램 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 6996번: 애너그램 첫째 줄에 테스트 케이스의 개수( 2022. 3. 13.
[구현/그리디] 백준 2720 세탁소 사장 동혁 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) https://www.acmicpc.net/problem/2720 2720번: 세탁소 사장 동혁 각 테스트케이스에 대해 필요한 쿼터의 개수, 다임의 개수, 니켈의 개수, 페니의 개수를 공백으로 구분하여 출력한다. www.acmicpc.net 2. 문제 풀이 25/10/5/1 단위인 거스름돈을 구하는 문제입니다. 2022.01.26 - [Algorithm] - [Algorithm] 탐욕적인 그리디 알고리즘, 직관적이고 쉬운 문제해결​ [Algorithm] 탐욕적인 그리디 알고리즘, 직관적이고 쉬운 문제해결 경주마들을 자세히 보면, 양쪽 시야를 차단하는 안대를 끼고 있습니다. 이를 '차안대' 라고 합니다. 말의 눈은 양 옆에 달려 있어 시야가 '350도'나 됩.. 2022. 3. 12.
[수학/DP] 백준 2407 조합 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 2407번: 조합 n과 m이 주어진다. (5 ≤ n ≤ 100, 5 ≤ m ≤ 100, m ≤ n) www.acmicpc.net 2. 문제 풀이 Comb(n, m)의 값을 구하는 문제입니다. from math import comb n, m = map(int, input().split()) print(comb(n, m)) 단순히 라이브러리를 이용하면, 쉽게 풀이하실 수 있습니다. 다만 직접 구현하고 싶다면, 동적계획법을 이용해야 합니다. 2022.02.12 - [Algorithm] - [Algorithm] 메모해두고 불러와서 사용하는 동적 프로그래밍(DP) [Algorithm] 메모해두고 불러와서 사용하는 동적 프로그래밍(DP) [ Contents ] 1. .. 2022. 3. 11.
[탐색/BFS] 백준 10026 적록색약 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 10026번: 적록색약 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록) www.acmicpc.net 2. 문제 풀이 RGB로 구성된 평면에서 색깔별로 나눠진 구역을 구하는 문제입니다. 단, 적록색맹은 녹색과 적색을 구분하지 못해서 동일하게 취급합니다. 2022.02.23 - [Algorithm] - [Algorithm] 너비 우선 탐색(BFS), 가까운 주변부터 찾자 [Algorithm] 너비 우선 탐색(BFS), 가까운 주변부터 찾자 BFS는 가까운 주변부터 탐색하는 알고리즘입니다. 큐를 이용한 BFS 구.. 2022. 3. 10.
[구현/문자열] 백준 1652 누울 자리를 찾아라 - Python [ Contents ] 1. 문제 (링크 참조) 1652번: 누울 자리를 찾아라 첫째 줄에 방의 크기 N이 주어진다. N은 1이상 100이하의 정수이다. 그 다음 N줄에 걸쳐 N개의 문자가 들어오는데 '.'은 아무것도 없는 곳을 의미하고, 'X'는 짐이 있는 곳을 의미한다. www.acmicpc.net 2. 문제 풀이 2칸 길이의 가로 혹은 세로로 누울 자리를 구하는 문제입니다. 다만 문제 설명이 조금 모호하게 되어있고, 예제도 1개 밖에 없어서 문제 이해가 가장 어렵습니다... 1) 연속된 빈 칸(.)이 2개 이상 있어야 하고 2) 벽의 끝 또는 짐(X)에 닿아야 합니다. 2가지 조건을 모두 만족해야 자리 하나입니다. 따라서 .의 개수를 세다가 X 또는 벽을 만나면 자리 1개로 세시면 됩니다. 3. 코.. 2022. 3. 9.
[구현/문자열] 백준 5598 카이사르 암호 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 5598번: 카이사르 암호 가이우스 율리우스 카이사르(Gaius Julius Caesar)는 고대 로마 군인이자 정치가였다. 카이사르는 비밀스럽게 편지를 쓸 때, 'A'를 'D로', 'B'를 'E'로, 'C'를 'F'로... 이런 식으로 알파벳 문자를 3개씩 건 www.acmicpc.net 2. 문제 풀이 카이사르 암호를 해독하는 문제입니다. 카이사르 암호는 알파벳 순서를 3개씩 뒤로 미는 방식으로, 쉬운 암호입니다. 넌센스 퀴즈나 IQ 테스트 등에서 볼 수 있죠. 3. 코드 word = input() for s in word: #A~C if ord(s) 2022. 3. 8.
[분할정복/DQ] 백준 1992 쿼드트리 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 1992번: 쿼드트리 첫째 줄에는 영상의 크기를 나타내는 숫자 N 이 주어진다. N 은 언제나 2의 제곱수로 주어지며, 1 ≤ N ≤ 64의 범위를 가진다. 두 번째 줄부터는 길이 N의 문자열이 N개 들어온다. 각 문자열은 0 또 www.acmicpc.net 2. 문제 풀이 영상 압축방법인 쿼드 트리를 구현하는 문제입니다. 2022.01.29 - [Algorithm] - [Algorithm] 분할정복(DQ, Divide-and-Conquer), 각개격파 알고리즘 [Algorithm] 분할정복(DQ, Divide-and-Conquer), 각개격파 알고리즘 각개격파(各個擊破): 적을 하나하나 따로 떼어 무찌름 유독 외세의 침략을 많이 받았던 우리 민족의 대표적.. 2022. 3. 7.
[구현/문자열] 백준 2857 FBI - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 2857번: FBI 5개 줄에 요원의 첩보원명이 주어진다. 첩보원명은 알파벳 대문자, 숫자 0~9, 대시 (-)로만 이루어져 있으며, 최대 10글자이다. www.acmicpc.net 2. 문제 풀이 이름에 FBI가 들어갔는지 체크하는 문제입니다. 3. 코드 import sys input = sys.stdin.readline noFBI = True for i in range(1, 6): name = input().rstrip() if 'FBI' in name: print(i, end=" ") noFBI = False if noFBI: print("HE GOT AWAY!") 파이썬의 In 연산자를 이용하면 문자열 안에 'FBI'가 있는지 쉽게 확인할 수 있습니.. 2022. 3. 6.
[문자열/Brute Force] 백준 1969 DNA - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 1969번: DNA DNA란 어떤 유전물질을 구성하는 분자이다. 이 DNA는 서로 다른 4가지의 뉴클레오티드로 이루어져 있다(Adenine, Thymine, Guanine, Cytosine). 우리는 어떤 DNA의 물질을 표현할 때, 이 DNA를 이루는 뉴클레오 www.acmicpc.net 2. 문제 풀이 여러 DNA들간의 헤밍거리가 최소인 DNA를 만들고, 그 헤밍거리의 합을 출력하는 문제입니다. 2022.01.16 - [Algorithm] - [Algorithm] 브루트 포스(Brute Force)는 노가다 기법? [Algorithm] 브루트 포스(Brute Force)는 노가다 기법? [ Contents ] 1. 브루트 포스란? Brute(짐승 같은,.. 2022. 3. 6.