Giả sử chúng ta đang tạo một tam giác số như bên dưới
1 1 1 1 1 2 3 2 1 1 3 6 7 6 3 1
trong đó trong mỗi hàng, các phần tử được tạo bằng cách thêm ba số lên trên nó. Bây giờ nếu chúng ta có một dòng số l. Chúng ta phải tìm vị trí của số chẵn đầu tiên của dòng đó. Các giá trị vị trí bắt đầu từ 1.
Vì vậy, nếu đầu vào là l =5, thì đầu ra sẽ là 2
1 1 1 1 1 2 3 2 1 1 3 6 7 6 3 1 1 4 10 16 19 16 10 4 1
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
- nếu l giống 1 hoặc l giống 2, thì
- trả về -1
- ngược lại khi l mod 2 giống 0 thì
- nếu l mod 4 giống 0, thì
- trả về 3
- nếu không,
- trả về 4
- nếu l mod 4 giống 0, thì
- nếu không,
- trả về 2
Ví dụ
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -
def solve(l): if l == 1 or l == 2 : return -1 elif l % 2 == 0: if l % 4 == 0: return 3 else: return 4 else: return 2 l = 5 print(solve(l))
Đầu vào
5
Đầu ra
2