본문 바로가기

백준 - 파이썬/단계별 - 8 (일반 수학 1)7

[백준/파이썬] 2869번 달팽이는 올라가고 싶다. [시간초과가 뜬 코드]# 달팽이는 올라가고 싶다.a, b, v = map(int, input().split())meter = 0days = 0while meter [while문이 아닌 수학적 방법으로 수정한 코드]# 달팽이는 올라가고 싶다.import matha, b, v = map(int, input().split())meter = 0days = 0if a >= v: print(1)else: meter = a - b ramaining_meter = v - a days = math.ceil(ramaining_meter/meter) print(days+1) # 첫날 올라가는 1일 더하기 2025. 5. 15.
*[백준/파이썬] 1193번 분수찾기 # 분수찾기x = int(input())# 1/1# 1/2 - 2/1# 3/1 - 2/2 - 1/3# 1/4 - 2/3 - 3/2 -4/1line = 1# 몇번쨰 줄인지 찾기while line 2025. 5. 15.
[백준/파이썬] 2292번 벌집 # 벌집n = int(input())# 시작과 끝 포함.# 1 / 2-7(6개)/ 8-19(12개)/ 20-37(18개)/ 38-61(24개)/ 62-# 3*2 3*4 3*6 3*8# 3 * 2x 마다 1개씩 지난다# -> 아 빡대가리야 그게 6의 배수잖아!!!!!!!!bees = 1 # 벌집의 개수cnt = 1while n > bees: bees += 6 * cnt # 6의 배수로 증가 cnt += 1print(cnt) 2025. 5. 15.
*[백준/파이썬] 2903번 중앙 이동 알고리즘 복잡하게 풀고 있었으나 규칙을 찾는 것이 가장 중요한 문제이다. 나는 결국 규칙을 찾지 못했다ㅜ 규칙은 바로 한 변에 놓인 점의 개수의 제곱 이다. 코드 자체는 매우 간단하다. # 중앙 이동 알고리즘n = int(input())# 한 변의 점의 개수의 제곱!!!!!print((2**n+1)**2) 2025. 5. 13.
[백준/파이썬] 2720번 세탁소 사장 동혁 # 세탁소 사장 동혁t = int(input())for _ in range(t): cent = int(input()) Q = cent//25 D = (cent%25) //10 N = ((cent%25)%10) //5 P = ((cent%25)%10)%5 print(Q, D, N, P) 조금 더 효율적으로 바꾼 코드t = int(input())for _ in range(t): cent = int(input()) for i in [25, 10, 5, 1]: print(cent//i, end=' ') cent %= i 2025. 5. 13.
[백준/파이썬] 11005번 진법 변환 2 만약 2진법, 16진법으로 바꾸고 싶다면 format()함수를 사용할 수 있다. 10진법 -> b진법으로 바꾸는 기본 원리는 수를 계속해서 b로 나눈 후 나머지가 마지막 수가 되는 원리이다.# 진법 변환 2nums = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'n, b = map(int, input().split())res = ''# 10진법 -> b진법# 더 안 나눠질 때까지 b로 나누며 나머지를 저장한다.while n: # n이 0이면 반복 중단 res += str(nums[n%b]) n //= bprint(res[::-1]) [핵심 코드]# 10진법 -> b진법# 더 안 나눠질 때까지 b로 나누며 나머지를 저장한다.while n: # n이 0이면 반복 중단 .. 2025. 5. 13.