목록문제/백준_파이썬 (155)
sm 기술 블로그
import math T = int(input()) for _ in range(T): H, W, N = map(int, input().split()) num = 0 num = int(math.ceil(N / H)) # 호수 if((N % H) == 0): num += (H*100) else: num += (N % H * 100) # 층수 print(num) 몇 번째 손님 / 층수=> 호수 (각 층마다 빠른 호수가 먼저 채워짐) 몇 번째 손님 % 호텔층수 *100 => 배정된 방 층수 끝자리 층수는 나머지가 0이 나온다. 그러므로 if문으로 끝자리 층들은 따로 처리를 해줘야한다. (호텔 층수 * 100) 만약 출력을 한번에 하고싶다면, import math T = int(input()) result = '..
A, B, V = map(int, input().split()) day = (V-B)/(A-B) # 목적지에 도달하면 미끄러지지않음 # 무조건 낮에 도달하므로 마지막에는 미끄러지지않음 # 결국 V-B만큼 올라가면 됨 if(day % 1 > 0): day += 1 # 날짜가 소수점으로 나오면 아직 도착하지 못한 것. # 하루를 더해주어야 함. print(int(day)) 이번 문제 자체는 쉽지만 시간제한이라는 제약 사항 때문에 많이 어렵게 느껴졌다. 높이가 얼마가 되었든지 결국에 낮에 도착하게 되고, 도착했을 때는 미끄러지지 않는다. 때문에 궁극적으로 달팽이가 올라가야하는 높이는 V-B 이다. (낮에 도착해서 미끄러지지 않아서.) 그 높이에서 하루에 총 올라가는 높이는 A-B이므로 이것을 나눠주면 일 수가..
N = int(input()) cnt = 1 while(True): N -= cnt if(N 짝수 번째 그룹은 오름차순, 홀수는 내림차순 분수가 지그재그로 나열됨. 이를 엑셀로 통해서 나타내보면, 다음과 같이 나타낼 수 있다. 분수를 나열해 보았을 때, 분자와 분모의 합이 같은 것끼리 그룹을 이루고 있음을 알 수 있다. 코드 로직을 크게 보면 이렇다. 1. 반복문으로 입력값이 어디그룹의 아이인지 알아낸다. 2. 지그재그로 인해 짝수 그룹이면 오름차순을, 홀수 그룹이면 내림차순으로 나타난다.