Bon Appétit
Anna và Brian đang chia sẻ một bữa ăn tại một nhà hàng và họ đồng ý chia hóa đơn như nhau. Brian muốn đặt mua một thứ mà Anna bị dị ứng và họ đồng ý rằng Anna sẽ không trả tiền cho món hàng đó. Brian lấy séc và tính phần của Anna. Bạn phải xác định xem tính toán của anh ta có đúng không.
Ví dụ: giả sử hóa đơn có giá sau: bill = [2,4,6] Anna từ chối ăn đồ k = bill[2] với giá là 6. Nếu Brian tính toán hóa đơn chính xác, Anna sẽ trả ( 2+ 4) / 2 = 3 . Nếu anh ta bao gồm chi phí bill[2] anh ấy sẽ tính toán (2 +4+6) / 2 = 6. Trong trường hợp thứ hai, anh ta nên hoàn trả 3 đến Anna.
Mô tả chức năng
Hoàn thành chức năng bonAppetit trong trình chỉnh sửa bên dưới. Nó nên in Bon Appetit nếu hóa đơn khá tách. Mặt khác, nó nên in số tiền mà Brian nợ Anna.
bonAppetit có (các) tham số sau:
hóa đơn: một mảng các số nguyên biểu thị chi phí của từng mặt hàng được đặt hàng
k: một số nguyên biểu thị chỉ số dựa trên số không của vật phẩm Anna không ăn
b: số tiền mà Anna đã đóng góp vào hóa đơn
Định dạng đầu vào
Dòng đầu tiên chứa hai số nguyên cách nhau bằng dấu cách n và k số lượng các mặt hàng đặt hàng và 0 chỉ số dựa trên các mặt hàng mà Anna không ăn.
Dòng thứ hai chứa n số nguyên cách nhau bill[i] vói 0 <= i <= n
Dòng thứ ba chứa một số nguyên, b số tiền mà Brian tính cho Anna cho phần hóa đơn của cô ấy.
Những ràng buộc
2 <= n < 10 mũ 5
0<= k < n
0<= bill[i] < 10 mũ 4
trên một dòng mới.
Đầu vào mẫu 1
4 1
3 10 2 9
7
Kết quả mẫu 1
Bon Appetit
Giải thích 1
Anna không ăn đồ bill[1] = 10 nhưng cô ấy đã chia sẻ phần còn lại của các mục với Brian. Tổng chi phí của các mục được chia sẻ là 3 + 2 + 9 = 14 và, chia làm đôi, chi phí cho mỗi người là
Ví dụ: giả sử hóa đơn có giá sau: bill = [2,4,6] Anna từ chối ăn đồ k = bill[2] với giá là 6. Nếu Brian tính toán hóa đơn chính xác, Anna sẽ trả ( 2+ 4) / 2 = 3 . Nếu anh ta bao gồm chi phí bill[2] anh ấy sẽ tính toán (2 +4+6) / 2 = 6. Trong trường hợp thứ hai, anh ta nên hoàn trả 3 đến Anna.
Mô tả chức năng
Hoàn thành chức năng bonAppetit trong trình chỉnh sửa bên dưới. Nó nên in Bon Appetit nếu hóa đơn khá tách. Mặt khác, nó nên in số tiền mà Brian nợ Anna.
bonAppetit có (các) tham số sau:
hóa đơn: một mảng các số nguyên biểu thị chi phí của từng mặt hàng được đặt hàng
k: một số nguyên biểu thị chỉ số dựa trên số không của vật phẩm Anna không ăn
b: số tiền mà Anna đã đóng góp vào hóa đơn
Định dạng đầu vào
Dòng đầu tiên chứa hai số nguyên cách nhau bằng dấu cách n và k số lượng các mặt hàng đặt hàng và 0 chỉ số dựa trên các mặt hàng mà Anna không ăn.
Dòng thứ hai chứa n số nguyên cách nhau bill[i] vói 0 <= i <= n
Dòng thứ ba chứa một số nguyên, b số tiền mà Brian tính cho Anna cho phần hóa đơn của cô ấy.
Những ràng buộc
2 <= n < 10 mũ 5
0<= k < n
0<= bill[i] < 10 mũ 4
Số tiền do Anna sẽ luôn là một số nguyên
Định dạng đầu ra
Nếu Brian không quá tải Anna, hãy in Bon Appetit trên một dòng mới; mặt khác, in sự khác biệt (tức là
Nhập mẫu 0
4 1
3 10 2 9
12
Kết quả mẫu 0
5
Giải thích 0
Anna không ăn đồ bill[1]= 10 nhưng cô ấy đã chia sẻ phần còn lại của các mục với Brian. Tổng chi phí của các mục được chia sẻ là 3 + 2 + 9 = 14 và, chia làm đôi, chi phí cho mỗi người là
Brian buộc tội cô ấy
cho phần của cô ấy của hóa đơn. Chúng tôi in số tiền Anna đã bị tính phí quá mức,trên một dòng mới.
Đầu vào mẫu 1
4 1
3 10 2 9
7
Kết quả mẫu 1
Bon Appetit
Giải thích 1
Anna không ăn đồ bill[1] = 10 nhưng cô ấy đã chia sẻ phần còn lại của các mục với Brian. Tổng chi phí của các mục được chia sẻ là 3 + 2 + 9 = 14 và, chia làm đôi, chi phí cho mỗi người là
php
<?php
// Complete the bonAppetit function below.
function bonAppetit($bill, $k, $b) {
$sum = array_sum($bill);
$aActual = ($sum - $bill[$k])/2;
$aRemain = $b - $aActual;
echo $aRemain == 0 ? "Bon Appetit" : $aRemain;
}
$nk = explode(' ', rtrim(fgets(STDIN)));
$n = intval($nk[0]);
$k = intval($nk[1]);
$bill_temp = rtrim(fgets(STDIN));
$bill = array_map('intval',
preg_split('/ /', $bill_temp, -1, PREG_SPLIT_NO_EMPTY));
$b = intval(trim(fgets(STDIN)));
bonAppetit($bill, $k, $b);
Comments
Post a Comment