본문 바로가기

전체보기192

[백준 2869번] 달팽이는 올라가고 싶다.. 문제 https://www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) www.acmicpc.net 풀이 import sys import math a, b, v = map(int, sys.stdin.readline().split()) day = (v - b) / (a - b) print(math.ceil(day)) 아이디어 달팽이가 정상에 올라간 후에는 미끄러지지 않으므로 올라야 하는 나무 높이 = (v - b) 하루에 올라갈 수 있는 높이 = (a - b) (v - b) / (a - b)을 나눠 3.2일 걸린다는 소리는 4일 걸린다는 소리이므로 .. 2023. 8. 17.
[구름톤 챌린지 WEEK 1 - 구현] DAY 4 ~ 5 리뷰 DAY 4. 완벽한 햄버거 만들기 - 풀이 n = int(input()) sum_list = 0 k_list = list(map(int, input().split())) def hamberger(): global n, k_list max_k = k_list.index(max(k_list)) for i in range(max_k, n-1): if k_list[i] 호출시 반환값 x = None 반.. 2023. 8. 17.
[구름톤 챌린지 WEEK 1 - 구현] DAY 1 ~ 3 리뷰 DAY1. 운동 중독 플레이어 - 풀이 import math w, r = map(int, input().split()) print(math.floor(w * (1 + r / 30))) - 정해 import math W, R = map(int, input().split()) print(math.trunc(W * (1 + R / 30))) - 시도한 코드 w, r = map(int, input().split()) RM = w * (1 + r / 30) print(f'{RM:.0f}') 주어진 1, 2번 테케에서는 결과값이 같아 통과하였지만 제출 후 5개의 테케에서 실패한 이유가 궁금해 찾아보았다. 찾아보니 f 자체가 float 표현이다. 보이는 출력물 자체는 정수로 바뀌어보이는데 f-strings 표현은 s.. 2023. 8. 16.
Python 소수점 다루기 - math, int(), //1 소수점 내리는 방법 int() //1 math.floor() math.tunc() 양수에서는 위 방법 모두 같은 숫자 값을 보여준다. print(int(7.12)): 7 print(math.floor(7.12)): 7 print(7.12//1): 7.0 print(int(3.1415)): 3 print(math.floor(3.1415)): 3 print(3.1415//1): 3.0 //1은 float 음수에서는 다른 결과를 보여준다. print(int(-7.12)): -7 print(math.floor(-7.12)): -8 print(-7.12//1): -8.0 print(int(-3.1415)): -3 print(math.floor(-3.1415)): -4 print(-3.1415//1): -4.0 -.. 2023. 8. 16.
[백준 9093번] 단어 뒤집기 문제 https://www.acmicpc.net/problem/9093 9093번: 단어 뒤집기 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 문장이 하나 주어진다. 단어의 길이는 최대 20, 문장의 길이는 최대 1000이다. 단어와 단어 사이에는 www.acmicpc.net 풀이 - 처음 풀이 T = int(input()) for _ in range(T): statement = input().split() result = "" for word in statement: result += ''.join(reversed(word)) + ' ' print(result) 방금 전 반복해서 여러 개를 입력받아야 하는 상황에서는 sys.stdin.readline()을.. 2023. 8. 13.
[백준 10828번] 스택 문제 https://www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 풀이 n = int(input()) stack = []; for _ in range(n): order = input().split() if order[0] == 'push': stack.append(order[1]) elif order[0] == 'size': print(len(stack)) elif order[0] == 'pop': if len(stack) == 0: pr.. 2023. 8. 13.