Điểm:
900 (p)
Thời gian:
1.0s
Bộ nhớ:
512M
Input:
bàn phím
Output:
màn hình
Có \(n\) đứa trẻ muốn đi đến một bánh xe Ferris, và nhiệm vụ của bạn là tìm một chiếc gondola cho mỗi đứa trẻ.
[Chú thích: có khả năng là khu vui chơi nằm ở bên kia dòng sông nên các bạn trẻ cần đi thuyền qua.
Mỗi chiếc gondola có thể có một hoặc hai đứa trẻ trong đó, và ngoài ra, tổng trọng lượng trong một chiếc gondola không được vượt quá \(x\). Bạn biết cân nặng của mỗi đứa trẻ.
Số lượng chiếc gondola tối thiểu cần thiết cho những đứa trẻ là bao nhiêu?
Input
- Dòng đầu vào đầu tiên chứa hai số nguyên \(n\) và \(x\): số lượng đứa trẻ và trọng lượng tối đa cho phép.
- Dòng tiếp theo chứa \(n\) số nguyên \(p_1,p_2,\ldots,p_n\): trọng lượng của mỗi đứa trẻ.
Output
- In một số nguyên: số lượng gondola tối thiểu.
Constraints
- \(1 \leq n \leq 2 \cdot 10 ^ 5\)
- \(1 \leq x \leq 10 ^ 9\)
- \(1 \leq p_i \leq x\)
Example
Sample input
4 10
7 2 3 9
Sample output
3
Bình luận
Code python acc 100%
def sum_of_digits(n):
return sum(int(digit) for digit in str(n))
def main():
import sys
input = sys.stdin.read
data = input().split()
if name == "main":
main()
n, x = map(int, input().split())
P = list(map(int, input().split()))
P.sort()
E = 0
l = 0
r = n - 1
while l <= r:
if P[l] + P[r] <= x:
l += 1
r -= 1
else:
r -= 1
E += 1
print(E)
n,x=map(int,input().split())
P=list(map(int,input().split()))
P.sort()
E=0
l=0
r=n-1
while l<=r:
if P[l]+P[r]<=x:
l+=1
r-=1
E+=1
print(E)
Giải thích hộ mình với mn oi