반응형

ALGORITHM/PYTHON 351

백준 BAEKJOON 2501번 약수 구하기 [PYTHON/파이썬]

백준 BAEKJOON 2501번 약수 구하기 [PYTHON/파이썬] https://www.acmicpc.net/problem/2501 2501번: 약수 구하기 첫째 줄에 N과 K가 빈칸을 사이에 두고 주어진다. N은 1 이상 10,000 이하이다. K는 1 이상 N 이하이다. www.acmicpc.net 주어진 N에 대한 약수를 모두 구한 뒤 K 번째의 약수가 무엇인지 출력하는 문제이다. for 문을 활용하여 약수를 오름차순으로 구한 뒤 N의 약수의 개수가 K개보다 적어서 K번째 약수가 존재하지 않을 경우에는 0을 출력하면 된다. N, K = map(int, input().split()) lst = [] for i in range(1, N+1) : if N % i == 0 : lst.append(i) i..

ALGORITHM/PYTHON 2022.11.05

백준 BAEKJOON 25497번 기술 연계마스터 임스 [PYTHON/파이썬]

백준 BAEKJOON 25497번 기술 연계마스터 임스 [PYTHON/파이썬] https://www.acmicpc.net/problem/25497 25497번: 기술 연계마스터 임스 $1$, $2$, $S$ - $K$, $2$로 스킬을 성공적으로 총 4번 사용했다. www.acmicpc.net 문제의 조건을 제대로 이해하지 못해서 여러 번 틀렸던 문제이다. '하나의 사전 기술은 하나의 본 기술과만 연계해서 사용할 수 있으며, 연계할 사전 기술 없이 본 기술을 사용했을 경우에는 게임의 스크립트가 꼬여서 이후 사용하는 기술들이 정상적으로 발동되지 않는다. 그렇지만 반드시 사전 기술을 사용한 직후에 본 기술을 사용할 필요는 없으며, 중간에 다른 기술을 사용하여도 연계는 정상적으로 이루어진다.' 위의 조건을 정..

ALGORITHM/PYTHON 2022.11.04

백준 BAEKJOON 25644번 최대 상승 [PYTHON/파이썬]

백준 BAEKJOON 25644번 최대 상승 [PYTHON/파이썬] https://www.acmicpc.net/problem/25644 25644번: 최대 상승 미래를 예측하는 능력이 있는 정균이는 앞으로 $N$일간 ANA 회사의 주가가 어떻게 변하는지 정확히 예측할 수 있다. 정균이는 예측한 결과를 바탕으로 ANA 회사의 주식 한 주를 적당한 시점에 사고 www.acmicpc.net 주식을 사면 샀던 날에 바로 팔 수도 있지만 (이익 : 0원) 샀던 날 이후로 팔 수 있다. (이익 : i+? 번째 날 - i 번째 날) 그중 이익이 가장 큰 값에 팔게 끔 구현해주면 된다. 이익을 최댓값으로 맞추기 위해서 리스트를 뒤에서부터 진행시켜 가장 비싸게 팔 수 있는 날을 갱신하고 가장 싸게 살 수 있는 날을 찾아..

ALGORITHM/PYTHON 2022.11.03

백준 BAEKJOON 21965번 드높은 남산 위에 우뚝 선 [PYTHON/파이썬]

백준 BAEKJOON 21965번 드높은 남산 위에 우뚝 선 [PYTHON/파이썬] https://www.acmicpc.net/problem/21965 21965번: 드높은 남산 위에 우뚝 선 입력으로 주어진 수열 $A$가 산이면 "YES"를, 산이 아니면 "NO"를 출력한다. www.acmicpc.net 산의 높이를 리스트로 받은 뒤 산의 모양인지 아닌지 확인해주면 된다. 산이 맞는지 아닌지 확인하는 check 변수와 산이 모양이 올바른지 확인하는 shape 변수를 True로 지정하여 풀었다. (내 코드에서는 for 문 속에 있는 else 부분을 이해하면 풀기 쉬워진다.) i 번째 산의 높이가 i+1 번째 산의 높이보다 작다면 산이 맞으나 shape이 False라면 산이 아니기 때문에 check을 Fa..

ALGORITHM/PYTHON 2022.11.02

백준 BAEKJOON 25904번 안녕 클레오파트라 세상에서 제일가는 포테이토칩 [PYTHON/파이썬]

백준 BAEKJOON 25904번 안녕 클레오파트라 세상에서 제일가는 포테이토칩 [PYTHON/파이썬] https://www.acmicpc.net/problem/25904 25904번: 안녕 클레오파트라 세상에서 제일가는 포테이토칩 "안녕 클레오파트라 세상에서 제일가는 포테이토칩"은 이전 사람보다 높은 목소리로 🎵 안녕 클레오파트라 세상에서 제일가는 포테이토칩🎵 을 외치는 게임이다. $1$번부터 $N$번까지의 사람이 www.acmicpc.net while문과 for문을 사용하여 풀었다. 리스트를 돌리면서 자신이 낼 수 있는 목소리의 상한선 보다 크면 반복문을 중지하여 결과를 출력하였다. N, X = map(int, input().split()) T = list(map(int, input().split()..

ALGORITHM/PYTHON 2022.11.01

백준 BAEKJOON 25183번 인생은 한 방 [PYTHON/파이썬]

백준 BAEKJOON 25183번 인생은 한 방 [PYTHON/파이썬] https://www.acmicpc.net/problem/25183 25183번: 인생은 한 방 첫째 줄에 로또 문자열의 길이 $N(5 \leq N \leq 100\,000)$이 주어진다. 둘째 줄에 로또 문자열 $S$가 주어진다. www.acmicpc.net 로또 문자열을 리스트로 받은 뒤 알파뱃의 차이가 1이면 인접한 문자열이기 때문에 ord, abs 함수를 사용해서 처리해줬다. N = int(input()) lotto = list(input()) cnt = 1 check = False for i in range(N-1) : # 인접한 문자열 확인 if abs(ord(lotto[i]) - ord(lotto[i+1])) == 1 :..

ALGORITHM/PYTHON 2022.10.31

백준 BAEKJOON 25496번 장신구 명장 임스 [PYTHON/파이썬]

백준 BAEKJOON 25496번 장신구 명장 임스 [PYTHON/파이썬] https://www.acmicpc.net/problem/25496 25496번: 장신구 명장 임스 첫 번째 줄에 정수 $P$와 정수 $N$이 공백으로 구분되어 주어진다. ($1 \le P \le 200$, $1 \le N \le 1\,000$) 두 번째 줄에는 정수 $A_1, A_2, \dots, A_N$이 공백으로 구분되어 주어진다. ($1 \le A_i \le 200$) www.acmicpc.net 장신구를 만들때 누적되는 피로도 리스트를 오름차순으로 정렬 후 풀었다. 그리고 if 문을 사용해 결과를 도출했다. P, N = map(int, input().split()) A = sorted(list(map(int, input(..

ALGORITHM/PYTHON 2022.10.30

백준 BAEKJOON 4583번 거울상 [PYTHON/파이썬]

백준 BAEKJOON 4583번 거울상 [PYTHON/파이썬] https://www.acmicpc.net/problem/4583 4583번: 거울상 소문자 b와 d나 p와 q는 서로 거울상 관계이다. 또한 i,o,v,w와 x는 모두 자신과 거울상 관계이다. 이 외에도 몇 가지 거울상 관계인 문자들이 존재하지만, 이 문제에서는 위에서 언급한 문자들만 거 www.acmicpc.net 입력받은 문자열을 뒤집어서 저장 후 거울상 관계에 있는 문자면 result 값에 거울에 반사된 문자를 넣어줬다. 풀다보니 if~elif 문이 깔끔하지 못하게 길어졌는데 코드를 줄이기 위해 좀 더 머리를 굴려봐야겠다. mirror1 = ['i', 'o', 'v', 'w', 'x']# 자신과 거울상 관계 mirror2 = ['b',..

ALGORITHM/PYTHON 2022.10.29

백준 BAEKJOON 25177번 서강의 역사를 찾아서 [PYTHON/파이썬]

백준 BAEKJOON 25177번 서강의 역사를 찾아서 [PYTHON/파이썬] https://www.acmicpc.net/problem/25177 25177번: 서강의 역사를 찾아서 성현이(dart)가 신입생이었을 때의 학교는 지금과 많이 다른 모습이었다. 예를 들어 학식은 우정관뿐 아니라 엠마오관에도 있었다. 서강식객 자리에는 파파이스가 있었고, 김대건관(K관) 건너편 www.acmicpc.net 예전에 있었던 시설들로 for문을 돌릴 예정이기에 지금 시설의 점수가 담긴 리스트 길이가 예전에 있던 시설들의 리스트보다 길이가 작다면 0으로 채워서 길이를 같게 했다. 그리고 max를 사용하여 출력하여 풀었다. N, M = map(int, input().split()) a = list(map(int, inp..

ALGORITHM/PYTHON 2022.10.28

백준 BAEKJOON 2455번 지능형 기차 [PYTHON/파이썬]

백준 BAEKJOON 2455번 지능형 기차 [PYTHON/파이썬] https://www.acmicpc.net/problem/2455 2455번: 지능형 기차 최근에 개발된 지능형 기차가 1번역(출발역)부터 4번역(종착역)까지 4개의 정차역이 있는 노선에서 운행되고 있다. 이 기차에는 타거나 내리는 사람 수를 자동으로 인식할 수 있는 장치가 있다. www.acmicpc.net 1번부터 4번 종착역까지 이동하면서 사람이 가장 많을 때의 사람 수를 계산하는 문제이다. 문제 조건 중에 사람들은 질서 의식이 투철하여 역에서 사람이 모두 내린 후에 사람이 탑승한다는 것을 고려하면 된다. result = 0# 현재 탑승 사람 수 max_people = 0# 최대 사람 수 저장할 변수 for _ in range(4)..

ALGORITHM/PYTHON 2022.10.27
반응형