반응형

BRONZE Ⅰ 16

백준 BAEKJOON 33709번 치매예방수칙 3.3.3 [PYTHON/파이썬]

백준 BAEKJOON 33709번 치매예방수칙 3.3.3 [PYTHON/파이썬][목차여기] (BRONZE Ⅰ)https://www.acmicpc.net/problem/33709 슬로건의 구분자는 ., |, :, # 4가지이다.replace를 사용하여 |, :, # 를 . 으로 바꾸는 작업을 하여split(".")을 사용하여 문자열을 구분해 준 뒤 숫자끼리 더해주었다. N = int(input())slogan = input()separator = ["|", ":", "#"]for s in separator: slogan = slogan.replace(s, ".")numberList = slogan.split(".")result = 0for n in numberList: res..

ALGORITHM/PYTHON 2025.04.28

백준 BAEKJOON 32779번 가희와 전기 요금 1 [PYTHON/파이썬]

백준 BAEKJOON 32779번 가희와 전기 요금 1 [PYTHON/파이썬][목차여기] (BRONZE Ⅰ)https://www.acmicpc.net/problem/32779        문제에서 요구하는 요금을 식으로 정리하면 아래와 같다.하지만 이 식의 순서대로 문제를 풀면 틀렸다는 결과가 나온다.왜?부동소수점의 오차가 발생하기 때문이다.해결하기 위해서는 미리 105.6 / (60 * 1000)의 결과를 특정해야 한다.결과를 특정하면 상수 0.00176이 나온다는 것을 알 수 있다.즉, a * m * 0.00176을 하면 요금을 알 수 있고문제 조건에서 소수점 절사를 하기 때문에 int를 사용하면 결과를 출력할 수 있다.      Q = int(input())for _ in range(Q): a..

ALGORITHM/PYTHON 2025.01.31

백준 BAEKJOON 1145번 적어도 대부분의 배수 [PYTHON/파이썬]

백준 BAEKJOON 1145번 적어도 대부분의 배수 [PYTHON/파이썬] (BRONZE Ⅰ)https://www.acmicpc.net/problem/1145       Python의 math 라이브러리를 활용하여 최소공배수를 구했다.for문 3개를 사용하여 5개의 숫자 중 3개의 숫자를 골라 최소공배수를 구한 뒤문제의 조건에 맞게 최솟값을 구하여 출력하였다.      import mathnaturalNum = list(map(int, input().split()))result = []for i in range(3): for j in range(i + 1, 4): for k in range(j + 1, 5): result.append(math.lcm(naturalN..

ALGORITHM/PYTHON 2024.12.05

백준 BAEKJOON 2947번 나무 조각 [PYTHON/파이썬]

백준 BAEKJOON 2947번 나무 조각 [PYTHON/파이썬] (BRONZE Ⅰ)https://www.acmicpc.net/problem/2947       while 문과 for 문을 함께 사용하여서 풀었다.while 문의 조건은 나무 조각의 순서가 [1, 2, 3, 4, 5]가 아닐 때 작동하고for 문은 i 인덱스와 i+1 인덱스를 활용해야 하기 때문에 전체 길이 5에서 -1을 한 4만큼 탐색한다.그리고 i 인덱스 값이 i+1 인덱스 값보다 크다면 둘의 자리를 바꿔줬다.바꿔줬다면 현재 나무 조각의 순서를 print하는 방향으로 결괏값을 도출했다.        woodCarving = list(map(int, input().split()))while woodCarving != [1, 2, 3, 4..

ALGORITHM/PYTHON 2024.10.30

백준 BAEKJOON 32132번 PlayStation이 아니에요 [PYTHON/파이썬]

백준 BAEKJOON 32132번 PlayStation이 아니에요 [PYTHON/파이썬] (BRONZE Ⅰ)https://www.acmicpc.net/problem/32132      단순하게 문자열을 바꾸면 된다고 생각해서 replace()를 사용하여 풀었다.문제를 푸는 과정에서 replace를 여러개 사용할 수 있다는 것도 알게 되었다.      N = int(input())word = input()while True: if "PS4" in word or "PS5" in word: word = word.replace("PS4", "PS").replace("PS5", "PS") else: breakprint(word)

ALGORITHM/PYTHON 2024.09.02

백준 BAEKJOON 31859번 SMUPC NAME [PYTHON/파이썬]

백준 BAEKJOON 31859번 SMUPC NAME [PYTHON/파이썬] (BRONZE Ⅰ)https://www.acmicpc.net/problem/31859        # 1for 문과 if 문을 활용하여 출전자의 영어 이름에서 알파벳이 중복되지 않도록 추출했다.그 동시에 버려진 문자를 세어줬다. # 2, 3버려진 문자의 개수에 4를 더한 값을 문자열 맨 뒤에 붙였다.그리고 출전 번호에 1906을 더한 값을 맨 앞에 붙였다. # 4[::-1]를 사용하여 문자열을 뒤집은 뒤문자열 맨 앞에 "smupc_"를 붙여줬다.     N, Name = input().split()result = ""# 1abandonedText = 0 # 버려진 문자for i in Name: if i not in res..

ALGORITHM/PYTHON 2024.07.03

백준 BAEKJOON 31823번 악질 검거 [PYTHON/파이썬]

백준 BAEKJOON 31823번 악질 검거 [PYTHON/파이썬] (BRONZE Ⅰ)https://www.acmicpc.net/problem/31823       먼저 최대 리버스-스트릭을 구하기 위한 set 집합을 선언하였다.동아리원 수에 맞춰서 for 문을 돌렸고이들의 활동 기록과 이름을 받은 뒤에최장 리버스-스트릭을 구하기 위해 다시 한 번 for 문을 돌렸다.       N, M = map(int, input().split())countStreak = set() # 최대 리버스-스트릭KPSC_List = [] # 최장 리버스-스트릭, 이름을 저장할 리스트for _ in range(N): record = input().split() streak, name = record[:M], re..

ALGORITHM/PYTHON 2024.05.26

백준 BAEKJOON 30455번 이제는 더 이상 물러날 곳이 없다 [PYTHON/파이썬]

백준 BAEKJOON 30455번 이제는 더 이상 물러날 곳이 없다 [PYTHON/파이썬] (BRONZE Ⅰ) https://www.acmicpc.net/problem/30455 30455번: 이제는 더 이상 물러날 곳이 없다 건덕이와 건구스는 $N$개의 칸이 가로로 놓인 전장에서 승부를 겨루고 있다. 처음에는 가장 왼쪽 칸에 건덕이가, 가장 오른쪽 칸에 건구스가 자리 잡고 있으며, 승자는 아래 규칙에 따라 정해진 www.acmicpc.net BRONZE Ⅰ 난이도에 비해 쉬운 문제였다. 규칙만 파악한다면 칸의 개수가 홀수라면 건덕이가 이기고 짝수라면 건구스가 이긴다는 것을 알 수 있다. 이제는! 더 이상! 물러날 곳이 없~다! 앞으로~ 쭉쭉~ 쭉~!! N = int(input()) print("Duck..

ALGORITHM/PYTHON 2024.03.31

백준 BAEKJOON 31562번 전주 듣고 노래 맞히기 [PYTHON/파이썬]

백준 BAEKJOON 31562번 전주 듣고 노래 맞히기 [PYTHON/파이썬] (BRONZE Ⅰ) https://www.acmicpc.net/problem/31562 31562번: 전주 듣고 노래 맞히기 윤수와 정환은 「전주 듣고 노래 맞히기」라는 게임을 할 예정이다. 「전주 듣고 노래 맞히기」는 주어진 노래의 전주를 듣고 먼저 제목을 맞히는 사람이 점수를 얻어 최종적으로 점수가 더 많 www.acmicpc.net 전주의 첫 세 음을 노래 제목과 함께 딕셔너리에 담았다. 정환기가 맞히기를 시도할 노래의 첫 세음과 비교하면서 count 변수를 통해 몇 개인지 세어준 뒤, 2개 이상이면 "?"를 출력, 1개면 해당 노래 제목을 출력, 없다면 "!"를 출력했다. N, M = map(int, input().s..

ALGORITHM/PYTHON 2024.03.22

백준 BAEKJOON 9047번 6174 [PYTHON/파이썬]

백준 BAEKJOON 9047번 6174 [PYTHON/파이썬] (BRONZE Ⅰ) https://www.acmicpc.net/problem/9047 9047번: 6174 1949 년 인도 수학자 Kaprekar 는 Kaprekar 연산을 고안해냈다. Kaprekar 연산은 네 자리 수 중 모든 자리수가 같지 않은 수(1111, 2222 등을 제외한)의 각 자리의 숫자를 재배열해서 만들 수 있는 가장 큰 수 www.acmicpc.net for문과 while문을 함께 사용하여 풀었다. 1. 주어지는 수가 6174이면 바로 종료 2. 그렇지 않다면 단계의 수(cnt)에 1을 더해주고 주어지는 수를 재배열하여 가장 큰 수(내림차순)와 가장 작은 수(오름차순)을 변수 a, b에 저장 3. a에서 b를 뺀 값의 ..

ALGORITHM/PYTHON 2024.02.14
반응형