Giả sử chúng ta có một số mảng với n số nguyên khác nhau. Chúng ta cũng có hai tập hợp A và B. Chúng ta có một tham số hạnh phúc được đặt ban đầu là 0. Chúng tôi đi qua từng số nguyên i trong nums. Nếu tôi ở A thì thêm hạnh phúc thêm 1 và nếu tôi ở B thì giảm đi 1. Cuối cùng chúng ta phải tìm ra giá trị hạnh phúc cuối cùng.
Vì vậy, nếu đầu vào giống như nums =[1,2,5,8,6,3] A ={5,8,9,7,3} B ={2,4,12,15}, thì đầu ra sẽ là 2 vì 5, 8, 3 ở A nên hiện tại hạnh phúc là 3, nhưng 2 ở B nên giảm nó đi 1 thì hạnh phúc là 2.
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
- hạnh phúc:=0
- đối với mỗi tôi trong nums, hãy thực hiện
- nếu tôi ở A, thì
- hạnh phúc:=hạnh phúc + 1
- nếu không, khi tôi ở B, thì
- hạnh phúc:=hạnh phúc - 1
- nếu tôi ở A, thì
- trả lại hạnh phúc
Ví dụ
Hãy cùng chúng tôi xem cách triển khai sau đây để hiểu rõ hơn
def solve(nums, A, B): happiness = 0 for i in nums: if i in A: happiness += 1 elif i in B: happiness -= 1 return happiness nums = [1,2,5,8,6,3] A = {5,8,9,7,3} B = {2,4,12,15} print(solve(nums, A, B))
Đầu vào
[1,2,5,8,6,3], {5,8,9,7,3}, {2,4,12,15}
Đầu ra
2