반응형

 

안녕하세요 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)

 

여러분도 한번 풀어보세요!

 

반응형

+ Recent posts