{"problem":{"name":"C. Prairie Partition","description":{"content":"It can be shown that any positive integer _x_ can be uniquely represented as _x_ = 1 + 2 + 4 + ... + 2_k_ - 1 + _r_, where _k_ and _r_ are integers, _k_ ≥ 0, 0 < _r_ ≤ 2_k_. Let's call that representa","description_type":"Markdown"},"platform":"Codeforces","limit":{"time_limit":2000,"memory_limit":262144},"difficulty":"None","is_remote":true,"is_sync":true,"sync_url":null,"sign":"CF806C"},"statements":[{"statement_type":"Markdown","content":"It can be shown that any positive integer _x_ can be uniquely represented as _x_ = 1 + 2 + 4 + ... + 2_k_ - 1 + _r_, where _k_ and _r_ are integers, _k_ ≥ 0, 0 < _r_ ≤ 2_k_. Let's call that representation prairie partition of _x_.\n\nFor example, the prairie partitions of 12, 17, 7 and 1 are:\n\n<center>12 = 1 + 2 + 4 + 5,17 = 1 + 2 + 4 + 8 + 2,\n\n7 = 1 + 2 + 4,\n\n1 = 1.\n\n</center>Alice took a sequence of positive integers (possibly with repeating elements), replaced every element with the sequence of summands in its prairie partition, arranged the resulting numbers in non-decreasing order and gave them to Borys. Now Borys wonders how many elements Alice's original sequence could contain. Find all possible options!\n\n## Input\n\nThe first line contains a single integer _n_ (1 ≤ _n_ ≤ 105) — the number of numbers given from Alice to Borys.\n\nThe second line contains _n_ integers _a_1, _a_2, ..., _a__n_ (1 ≤ _a__i_ ≤ 1012; _a_1 ≤ _a_2 ≤ ... ≤ _a__n_) — the numbers given from Alice to Borys.\n\n## Output\n\nOutput, **in increasing order**, all possible values of _m_ such that there exists a sequence of positive integers of length _m_ such that if you replace every element with the summands in its prairie partition and arrange the resulting numbers in non-decreasing order, you will get the sequence given in the input.\n\nIf there are no such values of _m_, output a single integer _\\-1_.\n\n[samples]\n\n## Note\n\nIn the first example, Alice could get the input sequence from \\[6, 20\\] as the original sequence.\n\nIn the second example, Alice's original sequence could be either \\[4, 5\\] or \\[3, 3, 3\\].","is_translate":false,"language":"English"}],"meta":{"iden":"CF806C","tags":["binary search","greedy"],"sample_group":[["8\n1 1 2 2 3 4 5 8","2"],["6\n1 1 1 2 2 2","2 3"],["5\n1 2 4 4 4","\\-1"]],"created_at":"2026-03-03 11:00:39"}}