Statement
초깃값이 인 정수 가 있다. 당신은 다음 가지 연산을 원하는 만큼 사용할 수 있다.
- 인 정수 를 골라 를 로 바꾼다. 이 연산의 비용은 이다.
- 를 로 바꾼다. 이 연산의 비용은 이다.
연산을 여러 번 수행하여 를 주어진 양의 정수 로 만들 때 필요한 비용의 최솟값을 구하여라.
Input
입력은 다음과 같은 형식으로 주어진다.
Output
를 로 만들기 위해 필요한 비용의 최솟값을 출력한다.
Constraints
- .
- .
- ().
- .
- 입력으로 주어지는 모든 값은 정수이다.
Subtasks
Samples
样例 1
样例输入
2 6
4 5
2
样例输出
11
, , 두 배 연산을 차례로 사용하면 이 되고, 총비용은 이다.
样例 2
样例输入
1 13
7
3
样例输出
30
样例 3
样例输入
10 333322226666
1947393 2847594 3338338 3858264 6927495 10000000 10000001 47505837 210010452 386760601
999999999
样例输出
29225828805