#include <iostream>
#include <vector>
void logNStalinSort(std::vector<int> &list)
{
int i=0;
for (; (1<<i) < list.size(); ++i)
list[i] = i;
list.resize(i-1);
}
int main()
{
std::vector<int> test = {1, 354, 3, 6, 3, 5, 4, 5, 56, 4, 6, 8, 5, 4 ,3, 43, 5};
logNStalinSort(test);
for (int i : test)
std::cout << i << "\n";
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgoKdm9pZCBsb2dOU3RhbGluU29ydChzdGQ6OnZlY3RvcjxpbnQ+ICZsaXN0KQp7CiAgICBpbnQgaT0wOwogICAgZm9yICg7ICgxPDxpKSA8IGxpc3Quc2l6ZSgpOyArK2kpCiAgICAgICAgbGlzdFtpXSA9IGk7CgogICAgbGlzdC5yZXNpemUoaS0xKTsKfQoKaW50IG1haW4oKQp7CiAgICBzdGQ6OnZlY3RvcjxpbnQ+IHRlc3QgPSB7MSwgMzU0LCAzLCA2LCAzLCA1LCA0LCA1LCA1NiwgNCwgNiwgOCwgNSwgNCAsMywgNDMsIDV9OwogICAgbG9nTlN0YWxpblNvcnQodGVzdCk7CgogICAgZm9yIChpbnQgaSA6IHRlc3QpCiAgICAgICAgc3RkOjpjb3V0IDw8IGkgPDwgIlxuIjsKfQ==