반응형

전체 글 365

백준 BAEKJOON 1531번 투명 [PYTHON/파이썬]

백준 BAEKJOON 1531번 투명 [PYTHON/파이썬][목차여기] (SILVER Ⅴ)https://www.acmicpc.net/problem/1531          먼저 0으로 채워진 101X101 크기의 2차원 리스트를 만들어줬다.(이것은 쉽게 x, y 좌표를 받기 위해 101X101로 설정한 것이다.)주어진 N개의 줄에 맞춰 x1, y1, x2, y2 좌표를 입력받은 후이중 for문을 사용하여 좌표에 해당하는 요소에 +1을 진행하였다.여기서 M보다 작거나 같은 숫자는 투명해서 보이는 그림이고높으면 보이지 않는 그림인 것이다.보이지 않는 그림을 세기 위해 if 문을 사용하여 개수를 세준 뒤 출력하면 된다.      N, M = map(int, input().split())paper = [[0] ..

ALGORITHM/PYTHON 2025.03.16

백준 BAEKJOON 3135번 라디오 [PYTHON/파이썬]

백준 BAEKJOON 3135번 라디오 [PYTHON/파이썬][목차여기] (SILVER Ⅴ)https://www.acmicpc.net/problem/3135        먼저, A 주파수에서 B 주파수까지 거리를 계산 후,주어진 즐겨찾기 주파수 N개를 비교해 줬다.만약 즐겨찾기 주파수보다 A에서 B까지의 거리가 가깝다면그대로 출력하면 되지만즐겨찾기 주파수에서 B까지 가는 게 가깝다면min() 함수를 통해 최솟값을 구하면 된다.여기서 중요한 것은 +1을 해줘야 한다.왜냐하면 즐겨찾기 버튼을 한 번 누르기 때문이다.        A, B = map(int, input().split())N = int(input())result = abs(A - B)for _ in range(N): frequency = ..

ALGORITHM/PYTHON 2025.03.13

백준 BAEKJOON 32969번 학술대회 참가신청 [PYTHON/파이썬]

백준 BAEKJOON 32969번 학술대회 참가신청 [PYTHON/파이썬][목차여기] (BRONZE Ⅲ)https://www.acmicpc.net/problem/32969        디지털 인문학이라고 판단 되는 단어들이입력으로 주어진 논문 주제에 있다면 "digital humanities"를 출력,그렇지 않다면 "public bigdata"를 출력했다.효율적으로 출력하기 위해 exit(0)을 사용했다.        digital_humanities = ["social", "history", "language", "literacy"]topic = input()for i in digital_humanities: if i in topic: print("digital humanities")..

ALGORITHM/PYTHON 2025.03.07

백준 BAEKJOON 32941번 왜 맘대로 예약하냐고 [PYTHON/파이썬]

백준 BAEKJOON 32941번 왜 맘대로 예약하냐고 [PYTHON/파이썬][목차여기] (BRONZE Ⅳ)https://www.acmicpc.net/problem/32941       건우가 예약한 교시 N만 알고 있으면 쉽게 풀 수 있다.조원들의 참석 가능한 교시에 대한 정보에 N이 포함되어 있으면 된다.        T, X = map(int, input().split())N = int(input())result = True # 모든 조원 참석 가능 여부for _ in range(N): K = int(input()) A = list(map(int, input().split())) if X not in A: result = Falseif result: print("..

ALGORITHM/PYTHON 2025.02.25

백준 BAEKJOON 32866번 코인의 신 건모 [PYTHON/파이썬]

백준 BAEKJOON 32866번 코인의 신 건모 [PYTHON/파이썬][목차여기] (BRONZE Ⅲ)https://www.acmicpc.net/problem/32866         먼저 원금 N에서 X%만큼 손실된 현재 금액을 구해야 한다.현재 금액 = N * (1 - X / 100)원금을 다시 되찾으려면 현재 금액에서 몇 %가 증가해야 하는지 계산해야 한다.Y%가 증가하여 원금 N이 되어야 하므로 아래와 같이 식을 작성할 수 있다.N = 현재 금액 * (1 + Y / 100)이를 변형하면Y = (N / 현재 금액 - 1) * 100 위의 식을 활용하여 코드에 적용 후 문제의 조건에 맞게 f-string을 사용하여 결과를 출력했다.      N = int(input())X = int(input())c..

ALGORITHM/PYTHON 2025.02.16

백준 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 32778번 가희와 부역명 [PYTHON/파이썬]

백준 BAEKJOON 32778번 가희와 부역명 [PYTHON/파이썬] (BRONZE Ⅲ)https://www.acmicpc.net/problem/32778        먼저 부역명이 있는지 없는지 확인하는 if 문을 작성했다.문자열 내에 괄호가 있다면 부역명이 있는 거니까index를 활용하여 '('와 ')'의 위치를 찾아낸 뒤에문자열 슬라이스를 통해 역명과 부역명을 출력하였다.        name = input()if "(" in name: start, end = name.index("("), name.index(")") print(name[: start - 1]) print(name[start + 1 : end])else: # 부역명이 없다면 print(name + "\n-")

ALGORITHM/PYTHON 2025.01.26
반응형