Thiện nguyện

Xem dạng PDF

Gửi bài giải

Điểm: 100,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: tntc3.inp
Output: tntc3.out

Ngôn ngữ cho phép
C++, PyPy, Python

Vừa qua, bão số 5 đã gây ra nhiều thiệt hại đối với người dân ở các tỉnh miền Trung nước ta.
Nhóm thiện nguyện TC3 cùng nhiều tổ chức từ thiện khác đã thực hiện chiến dịch ủng hộ cho đồng bào bão lũ.

Để đảm bảo sự phân phối công bằng và tránh việc tập trung quà tặng vào một số vùng nhất định, các tổ chức từ thiện đã phối hợp với nhau bằng cách đặt ra các quy ước cho mỗi tổ chức khi đi hỗ trợ.

  • Mỗi vùng bị ảnh hưởng được gán một mã ID nguyên dương duy nhất, nằm trong đoạn ([X, Y]).
  • Nhóm thiện nguyện TC3 chỉ hỗ trợ các vùng có mã ID không chia hết cho M và không chia hết cho N, với M và N là hai số nguyên dương được cho trước.
  • Các vùng còn lại sẽ do nhóm hoặc tổ chức khác phụ trách.

Nhóm TC3 cần tính số lượng vùng mà họ sẽ hỗ trợ để có sự chuẩn bị chu đáo.

Hãy xác định số lượng vùng có mã ID thuộc đoạn ([X, Y]) không chia hết cho M và cũng không chia hết cho N.

Input

Đọc từ tệp TNTC3.INP, gồm một dòng duy nhất chứa 4 số nguyên: Trong đó:

  • ~(1 \leq X \leq Y \leq 10^{18})~
  • ~(1 \leq M, N \leq 10^9)~

Các số cách nhau một dấu cách.

Output

Ghi ra tệp TNTC3.OUT một số nguyên duy nhất — số lượng vùng được nhóm TC3 hỗ trợ.

Example

TNTC3.INP

5 20 5 7

TNTC3.OUT

10

Giải thích:

Các số từ 5 đến 20 có tổng cộng 16 phần tử.

  • Chia hết cho 5: {5, 10, 15, 20} → 4 số
  • Chia hết cho 7: {7, 14} → 2 số
  • Không có số nào chia hết cả 5 và 7.

Số bị loại = 4 + 2 = 6
Số còn lại = 16 - 6 = 10


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.