Đếm số học sinh

Xem PDF



Tác giả:
Dạng bài
Điểm: 250 Thời gian: 5.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Hôm nay lớp \(X\) có một buổi kiểm tra và tất cả thành viên trong lớp phải làm một bài kiểm tra gồm có 3 bài toán.

Sau khi kiểm tra xong, thầy giáo chủ nhiệm lớp \(X\) đã báo cáo với thầy \(Y\) - Tổ trưởng bộ môn Toán rằng: Trong lớp có:

  • \(u_1\) em giải được bài toán \(I\),
  • \(u_2\) em giải được bài toán \(II\),
  • \(u_3\) em giải được bài toán \(III\),
  • \(u_4\) em giải được bài toán \(II\)\(III\),
  • \(u_5\) em giải được bài toán \(I\)\(II\),
  • \(u_6\) em giải được bài toán \(I\)\(III\),
  • \(u_7\) em giải được cả ba bài.

Vì thầy \(Y\) hơi nghi ngờ về kết quả của thầy giáo chủ nhiệm lớp \(X\) nên thầy \(Y\) muốn lên đầy nhờ các bạn kiểm tra xem, kết quả mà thầy giáo chủ nhiệm lớp \(X\) đã báo cáo là đúng hay là sai ? Nếu đúng thì hãy in ra số lượng thành viên của lớp \(X\), còn nếu sai thì in ra \(-1\)

Input

  • Dòng thứ nhất chứa số \(t(1\le t\le 30)\) - Thể hiện số testcase

  • \(t\) block tiếp theo, mỗi block gồm \(7\) số nguyên dương \(u_1,u_2,u_3,u_4,u_5,u_6,u_7(1\le u_i\le 200000)\), mỗi số viết một dòng

Output

  • Ứng với mỗi testcase, in ra đáp án cần tìm

Example

Test 1

Input
1
20
14
10
5 
2
6
1
Output
32

Bình luận

  • danh3003 12:08 p.m. 30 Tháng 12, 2024
    Hãy thử sức mình trước khi xem gợi ý

    Bài này ta cần hiểu chút về sơ đồ Venn:

    • Tính chất: Nếu \(C\) là tập giao của tập \(A\)\(B\) thì chắc chắn \(C ≤ A\)\(C ≤ B\)
    Hãy thử sức mình trước ghi xem cách làm

    Dựa vào đó ta có thể giải bài này như sau:

    1. Khai báo các biến:
      • Để cho dễ hiểu thay các biến \(u\) thành các biến \(a\), \(b\), \(c\), \(ab\), \(bc\), \(ac\), \(abc\)
        (Tương ứng số học sinh giải được bài nào trong các bài \(A\), \(B\), \(C\))
    2. Trường hợp in ra \(-1\): (Sử dụng tính chất của sơ đồ Venn)

      • Điều kiện 1: \(abc ≤ ab\) & \(abc ≤ ac\) & \(abc ≤ bc\)
        Có thể được rút gọn thành \(abc ≤ min(ab, ac, bc)\)
      • Điều kiện 2: \(ab ≤ a\) & \(ab ≤ b\)
        Có thể được rút gọn thành \(ab ≤ min(a, b)\)
      • Điều kiện 3: \(ac ≤ a\) & \(ac ≤ c\)
        Có thể được rút gọn thành \(ac ≤ min(a, c)\)
      • Điều kiện 4: \(bc ≤ b\) & \(bc ≤ c\)
        Có thể được rút gọn thành \(bc ≤ min(b, c)\)

      ⟹ Chỉ cần kiểm tra các điều kiện trên, nếu điều kiện nào sai thì in ra \(-1\)

    3. Trường hợp in ra số học sinh của lớp:
      Chỉ cần in ra \(a + b + c - ab - bc - ac + abc\)

    • 1 bình luận nữa