{"code":"cses2078","name":"CSES - Eulerian Subgraphs | Đồ thị con Euler","description":"Bạn được cho một đồ thị vô hướng có $n$ nút và $m$ cạnh.\r\n\r\nChúng tôi xem xét các đồ thị con có tất cả các nút của đồ thị gốc và một số cạnh của nó. Một đồ thị con được gọi là *Euler* nếu mỗi nút có bậc chẵn.\r\n\r\nNhiệm vụ của bạn là đếm số lượng đồ thị con Euler chia lấy dư cho $10 ^ 9 + 7$.\r\n\r\n## Input\r\n\r\n- Dòng đầu vào đầu tiên có hai số nguyên $n$ và $m$: số lượng nút và cạnh. Các nút được đánh số $1, 2 \\ldots, n$.\r\n- Sau này, có $m$ dòng mô tả các cạnh. Mỗi dòng có hai số nguyên $a$ và $b$: có một cạnh giữa các nút $a$ và $b$. Có nhiều nhất một cạnh giữa hai nút và mỗi cạnh nối hai nút phân biệt.\r\n\r\n## Output\r\n\r\n- In số lượng đồ thị con Euler chia lấy dư cho $10 ^ 9 + 7$.\r\n\r\n## Constraints\r\n\r\n- $1 \\leq n \\leq 10 ^ 5$\r\n- $0 \\leq m \\leq 2 \\cdot 10 ^ 5$\r\n- $1 \\leq a, b \\leq n$\r\n\r\n## Example\r\n\r\n**Sample input**\r\n```\r\n4 3\r\n1 2\r\n1 3\r\n2 3\r\n```\r\n\r\n**Sample output**\r\n```\r\n2\r\n```\r\n\r\n## Note\r\n\r\nBạn có thể giữ hoặc loại bỏ tất cả các cạnh, vì vậy có thể có hai đồ thị con Euler.","points":2000.0,"partial":false,"time_limit":1.0,"memory_limit":524288,"short_circuit":false,"allowed_languages":[3,4,34,36,37,5,6,11,12,14,28,2,38,39,9,18,17,29,23,27,35,25,26,10,7,19,32,1,8,15,16,24,20,33,13,41,21,40],"is_public":true,"is_manually_managed":false,"permissions":{"can_edit":false}}