Điểm:
100 (p)
Thời gian:
0.5s
Bộ nhớ:
256M
Input:
bàn phím
Output:
màn hình
Bạn muốn mua \(N\) lít xăng, không thừa không thiếu. Tại một tiệm xăng nọ có hai phương thức mua xăng:
- 1L: Mua 1 lít với giá \(a\) đồng
- 2L: Mua 2 lít với giá \(b\) đồng
Cho ba số \(N\), \(a\), \(b\). Hãy tính chi phí ít nhất cần để mua đúng chính xác \(N\) lít xăng.
Input
- Dòng đầu tiên chứa một số nguyên dương \(N\) \((1 \leq N \leq 10^9)\)
- Dòng thứ hai chứa hai số nguyên dương lần lượt là \(a\) và \(b\) \((1 \leq a, b \leq 10^9)\)
Output
In ra một số nguyên, là số tiền tối thiểu cần để mua đúng chính xác \(N\) lít xăng tại tiệm xăng đó.
Example
Test 1
Input
5
1 1
Output
3
Note
- Để mua \(5\) lít xăng, bạn có thể chọn phương án mua: 2L, 2L, 1L có tổng tiền sẽ là \(3\), là kết quả tối ưu.
Test 2
Input
7
1 7
Output
7
Note
- Tại trường hợp này, bạn có thể mua 7 lần 1L có tổng là \(7\) tiền. Nếu dù chỉ mua một lần 2L kia đủ để khiến đáp án là \(7\), nên ta không xét đến nó.
Bình luận
n,m = map(int, input().split())
a = input().split()
b = input().split()
c= a + b
c.sort()
print(" ".join(c))
test case thứ 3 sao lại ra 22994887 nhỉ, mọi người giải thích giúp mình với
test 11 mk chạy sai là sao nhỉ
Ý tưởng
Mua 1 lít với giá a đồng .
Mua 2 lít với giá b đồng .
-> Mua 2 lít với giá 2a đồng và mua 2 lít với giá b đồng.
Vì cùng số lít nên có thể xét chọn cái nào khả quan hơn, và khi số lít cần mua lẻ, lần cuối chỉ chọn 1 lít.
hm
Bình luận bị ẩn vì nhiều phản hồi tiêu cực. Nhấp vào đây để mở.
Bình luận bị ẩn vì nhiều phản hồi tiêu cực. Nhấp vào đây để mở.