Trăm trâu trăm cỏ
Trâu đứng ăn năm
Trâu nằm ăn ba
Lụm khụm trâu già
Ba con một bó
Sau khi giải được bài tập trên với 4 trâu đứng, 18 trâu nằm và 78 trâu già, bạn Nam thắc mắc không biết trong...
Trợ lý học tập AI - Câu trả lời này chỉ mang tính tham khảo
Để giải bài toán này, ta sẽ sử dụng phương pháp giải hệ phương trình tuyến tính. Gọi a, b, c lần lượt là số trâu đứng, trâu nằm và trâu già. Ta có các phương trình sau:
a + b + c = n (1)
3b + 2c = m (2)
a + 5b + 10c = 3m (3)
Giải hệ phương trình này, ta được:
b = (4n - m) / 7
c = (3m - 2n) / 7
a = n - b - c
Nếu a, b, c không phải là số nguyên hoặc có giá trị âm thì không có đáp án, ta in ra -1. Ngược lại, ta in ra a, b, c.
Độ phức tạp của thuật toán này là O(1), vì ta chỉ thực hiện các phép tính đơn giản. Dưới đây là code C++ minh họa cho thuật toán này:
```cpp
#include <iostream>
using namespace std;
int main() {
long long n, m;
cin >> n >> m;
long long b = (4 * n - m) / 7;
long long c = (3 * m - 2 * n) / 7;
long long a = n - b - c;
if (a < 0 || b < 0 || c < 0 || (a + b + c != n) || (3 * b + 2 * c != m)) {
cout << -1 << endl;
} else {
cout << a << " " << b << " " << c << endl;
}
return 0;
}
```
FQA.vn Nền tảng kết nối cộng đồng hỗ trợ giải bài tập học sinh trong khối K12. Sản phẩm được phát triển bởi CÔNG TY TNHH CÔNG NGHỆ GIA ĐÌNH (FTECH CO., LTD)
Điện thoại: 1900636019
Email: info@fqa.vn
Địa chỉ: Số 21 Ngõ Giếng, Phố Đông Các, Phường Đống Đa, Thành phố Hà Nội, Việt Nam.