반응형

python 333

백준 BAEKJOON 14910번 오르막 [PYTHON/파이썬]

백준 BAEKJOON 14910번 오르막 [PYTHON/파이썬] https://www.acmicpc.net/problem/14910 14910번: 오르막 첫째 줄에 공백으로 구분된 N(1 ≤ N ≤ 1,000,000)개의 정수가 주어진다. 입력으로 주어지는 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다. www.acmicpc.net (비 내림차순 = 오름차순) 입력으로 주어진 N을 리스트로 받고 tmp에 오름차순 정렬된 리스트를 저장 후 N과 tmp가 같은지 판별해주면 된다. N = list(map(int, input().split())) tmp = sorted(N) if N == tmp : print('Good') else : print('Bad')

ALGORITHM/PYTHON 2022.11.07

백준 BAEKJOON 7600번 문자가 몇갤까 [PYTHON/파이썬]

백준 BAEKJOON 7600번 문자가 몇갤까 [PYTHON/파이썬] https://www.acmicpc.net/problem/7600 7600번: 문자가 몇갤까 각 줄마다 출몰한 알파벳의 개수를 출력하면 된다. www.acmicpc.net 알파벳의 개수를 확인하기 위해 길이가 26이고 0으로 채워진 리스트를 만들었다. 대소문자를 구분하지 않기 때문에 입력 받은 문자열에 lower() 를 사용하여 for 문을 돌렸고 서로 다른 알파벳만을 확인하면 되기 때문에 해당하는 글자가 알파벳이라면 인덱스 번호에 맞게끔 0으로 채워진 리스트에 1로 채워 넣었다. 그리고 count 함수를 사용하여 리스트에 1의 개수를 찾으면 정답이 나온다. while 1 : s = input() if s == '#' : break l..

ALGORITHM/PYTHON 2022.11.06

백준 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
반응형