Dù ngày mai phải kiểm tra môn Ngữ Văn và Tiếng Anh, anh LVT vẫn không thèm học bài vì đối với anh, mấy môn này quá đơn giản. Thay vào đó, anh LVT lại bày ra trò chơi như sau:
Anh bày ra ~n~ đồng xu, được đánh số từ ~1~ tới ~n~ và ban đầu tất cả các đồng xu đều ở mặt ngửa. LVT sẽ lần lượt chơi từ đồng xu thứ ~1~ tới đồng xu thứ ~n~. Ở đồng xu thứ ~i~, anh sẽ thay đổi trạng thái của các đồng xu có số thứ tự là bội của ~i~. Nếu đồng xu đó đang ở trạng thái sấp thì anh sẽ đổi thành ngửa và ngược lại.
Anh LVT muốn biết sau khi chơi xong ~n~ đồng xu theo thứ tự, thì có bao nhiêu đồng xu có mặt sấp? Nhưng bây giờ anh LVT đang bận kéo người yêu leo rank cao thủ Liên Quân Mobile nên chưa rảnh để tính được. Các bạn hãy giúp anh LVT nhé!
Input
- Đọc từ file LDX.INP một số nguyên dương ~n~ là số lượng đồng xu anh LVT bày ra.
Output
- Ghi ra file LDX.OUT một số nguyên ~k~ là số lượng đồng xu có mặt sấp sau khi thực hiện ~n~ lượt chơi.
Giới hạn
- 30% số test có ~n \le 10^6~
- 30% số test có ~n \le 10^{12}~
- 40% số test có ~n \le 10^{18}~
Ví dụ
Sample input
3
Sample output
1
Giải thích ví dụ
Trạng thái các đồng xu sau từng lượt chơi, với ~'N'~ biểu thị đồng xu đang ở mặt ngửa, ~'S'~ biểu thị đồng xu đang ở mặt sấp:
- Ban đầu: ~(N,N,N)~
- Sau lượt ~1~: ~(S,S,S)~
- Sau lượt ~2~: ~(S,N,S)~
- Sau lượt ~3~: ~(S,N,N)~
Do đó, sau ~3~ lượt chỉ có ~1~ đồng xu ở trạng thái sấp
Bình luận