반응형
안녕하세요 Jin's 입니다.
백준 알고리즘의 수학1 중 달팽이는 올라가고 싶다 ( 문제 번호 : 2869 )의 소스입니다.
Java와 Python 두가지 버전 소스입니다.
1) JAVA
하루에 올라갈 미터는 a-b 이고, 몇일이 걸리는지는 x 라고 하고, (a-b)x+a=v
x = (v-a)/ (a-b)
이때 +1을 해주는 이유는 다올라간 후엔 내려가지 않는다는 조건이 있음으로 올라간 마지막날을 더해주는 것
결과적으로 (v-a)%(a-b)의 나머지가 소숫점이 남아있다면 다음날에 한번 더 올라가야함으로 +1을 해줌
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
int a = scan.nextInt();
int b = scan.nextInt();
int v = scan.nextInt();
int result = (v-a)/(a-b)+1;
int today = (v-a)%(a-b) ==0?result:result+1;
System.out.println(today);
scan.close();
}
}
2) PYTHON
파이썬도 위의 자바의 개념으로 풀면 성공!
a, b, v = map(int, input().split())
result = (v-a)//(a-b) + 1
if (v-a) % (a-b) == 0:
print(result)
else:
print(result+1)
여러분도 한번 풀어보세요!
반응형
'Development > 알고리즘' 카테고리의 다른 글
[ 백준 알고리즘 ] 2292번 벌집 (JAVA/python) (0) | 2020.07.14 |
---|---|
[ 백준 알고리즘 ] 1193번 분수찾기 (JAVA/python) (0) | 2020.07.13 |
[ 백준 알고리즘 ] 2839번 설탕 배달 (JAVA/python) (0) | 2020.07.11 |
[ 백준 알고리즘 ] 1712번 손익분기점 (JAVA/python) (0) | 2020.07.09 |
[ 백준 알고리즘 ] 1316번 그룹 단어 체커 (JAVA/python) (0) | 2020.07.08 |