#include <iostream>
#include <map>
#include <vector>
#include <utility>
#include <iterator>
int main() {
std::map<int, bool> m{ {1, true}, {4, true}, {9, true} };
std::vector<bool> v(m.rbegin()->first + 1, false);
for (auto& p : m) {
v[p.first] = p.second;
}
for (int i = 0; i != v.size(); ++i) {
std::cout << "v[" << i <<"] = " << v[i] << std::endl;
}
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8bWFwPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8dXRpbGl0eT4KI2luY2x1ZGUgPGl0ZXJhdG9yPgoKaW50IG1haW4oKSB7CglzdGQ6Om1hcDxpbnQsIGJvb2w+IG17IHsxLCB0cnVlfSwgezQsIHRydWV9LCB7OSwgdHJ1ZX0gfTsKCQoJc3RkOjp2ZWN0b3I8Ym9vbD4gdihtLnJiZWdpbigpLT5maXJzdCArIDEsIGZhbHNlKTsKCWZvciAoYXV0byYgcCA6IG0pIHsKCQl2W3AuZmlyc3RdID0gcC5zZWNvbmQ7Cgl9CgkKCWZvciAoaW50IGkgPSAwOyBpICE9IHYuc2l6ZSgpOyArK2kpIHsKCQlzdGQ6OmNvdXQgPDwgInZbIiA8PCBpIDw8Il0gPSAiIDw8IHZbaV0gPDwgc3RkOjplbmRsOwoJfQp9