Hướng dẫn giải của IF09: Đôi giày


Chỉ dùng lời giải này khi không có ý tưởng, và đừng copy-paste code từ lời giải này. Hãy tôn trọng người ra đề và người viết lời giải.
Nộp một lời giải chính thức trước khi tự giải là một hành động có thể bị ban.

Hướng dẫn giải

Ronaldo có n chiếc giày đỏ và m chiếc giày xanh. Mỗi trận cần một giày đỏ và một giày xanh. Cần tìm số trận đấu đi được và số ngày sau đó có thể đi hai chiếc cùng màu.

Cách làm
  • Đọc n và m.
  • Mỗi trận dùng một giày đỏ và một giày xanh nên số trận là số nhỏ hơn trong hai số n và m.
  • Sau khi đi hết các trận, số giày còn lại của màu nhiều hơn chính là hiệu |n - m|.
  • Mỗi ngày cần hai chiếc cùng màu, nên số ngày là |n - m| chia lấy phần nguyên cho 2.
  • In số trận, một khoảng trắng, rồi in số ngày. Bẫy: phép chia nguyên trong C++ tự bỏ phần lẻ, đúng với yêu cầu.
#include <bits/stdc++.h>
using namespace std;

int main() {
    long long n, m;
    cin >> n >> m;
    // Mỗi trận cần 1 giày đỏ và 1 giày xanh, nên số trận là số nhỏ hơn trong hai số
    long long so_tran = n;
    if (m < n) {
        so_tran = m;
    }
    // Số giày còn lại của màu nhiều hơn
    long long con_lai = n - m;
    if (con_lai < 0) {
        con_lai = -con_lai;
    }
    // Mỗi lần đeo 2 chiếc cùng màu cần 2 chiếc, nên số ngày là con_lai chia 2
    cout << so_tran << " " << con_lai / 2 << "\n";
    return 0;
}

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.