--- tags: Star Edu title: Task001 - Watermelon author: Vo Hoang Anh - SPyofgame license: Private Use --- # Bài giải [TOC] ## I. Dịch: Một ngày hè nóng nực, Pete và bạn Billy quyết định mua một quả dưa hấu. Theo ý kiến của họ, họ đã chọn quả to nhất và chín nhất. Sau đó cân dưa hấu và cân hiển thị w kg. Họ vội vã về nhà, chết khát và quyết định chia quả mọng, tuy nhiên họ phải đối mặt với một vấn đề khó khăn. Pete và Billy là những người rất yêu thích số chẵn nên họ muốn chia quả dưa hấu sao cho mỗi phần có số kg chẵn, đồng thời không bắt buộc các phần phải bằng nhau. Các chàng trai đang vô cùng mệt mỏi và muốn bắt đầu bữa ăn của mình càng sớm càng tốt, đó là lý do tại sao bạn nên giúp họ và tìm hiểu xem liệu họ có thể chia dưa hấu theo cách họ muốn hay không. Chắc chắn, mỗi người trong số họ sẽ nhận được một phần trọng lượng dương. ### I.a - Đầu vào Dòng đầu tiên (và duy nhất) chứa số nguyên $w (1 \le w \le 100)$ — trọng lượng của quả dưa hấu mà các cậu bé mua. ### I.b - Đầu ra In `YES`, nếu các em có thể chia quả dưa hấu thành hai phần, mỗi phần có số kg chẵn; và `NO` trong trường hợp ngược lại. ### I.c - Ví dụ **Đầu vào** ```cpp= 8 ``` **Đầu ra** ```cpp= YES ``` **Ghi chú** Ví dụ, các em có thể chia quả dưa hấu thành hai phần lần lượt là 2 và 6 kg (một biến thể khác - hai phần 4 và 4 kg). ## II. Các trường hợp: a) Khi $w = 1$, in `"NO"` vì **không có cách chia** b) Khi $w = 2$, in `"NO"` vì cách chia duy nhất đều không thoả $\{1,1\}$ c) Khi $w = 3$, in `"NO"` vì các cách chia đều không thoả $\{1,2\}$, $\{2,1\}$ d) Khi $w = 100$, in `YES` vì có thể chia thành bất cứ cặp $\{u, 100 - u\}$ thoả $u \in \{2, 4, \ldots, 98\}$ e) Khi $w = 8$, in `"YES"` vì có thể chia thành $\{4, 4\}$ hoặc $\{2,6\}$, $\{6,2\}$. f) Khi $w = 4$, in `"YES"` vì **chỉ** có thể chia thành $\{2, 2\}$. ## III. Phương án giải quyết: ### III.a - Công thức: Với $res$ là kết quả cần tìm thì $res = \begin{cases} \text{"YES"} &, \begin{cases}\begin{array}{l} w \neq 2 &\text{(special case)}\\ w \equiv 0 \pmod 2 &\text{(w is even)}\\ \end{array}\end{cases}\\ \text{"NO"} &,\ \text{otherwise} \end{cases}$ ### III.b - Mã giả: ```yml Nhập(w) Nếu (w là số chẵn) và (w khác 2) xuất "YES" Ngược lại thì xuất "NO" ``` ### III.c - Cài đặt: ```cpp= #include <iostream> using namespace std; int main() { int w; //watermelon_weight cin >> w; if (w % 2 == 0 && w != 2){ cout << "YES" << endl; } else{ cout << "NO" << endl; } return 0; } ``` https://codeforces.com/contest/4/submission/265986392 ![image](https://hackmd.io/_uploads/SJ37AXnHA.png)