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
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à 
 rằng Brian phải hoàn trả cho Anna. Đây sẽ luôn là một số nguyên.

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à
 bởi vì 
 chúng tôi in Bon Appetit

 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

Popular posts from this blog

Intro to Tutorial Challenges

Mini-Max Sum