#include <iostream>
#include <vector>
#include <chrono>
void build(std::vector<double>& data, const size_t size){
const auto start{std::chrono::system_clock::now()};
void* ptr{data.data()};
for(size_t i{1};i<=size;++i){
data.push_back((std::chrono::system_clock::now()-start).count());
if(data.data()!=ptr){
ptr=data.data();
std::cout << i << ' ' << ptr << ' ' << data.capacity() << std::endl;
}
}
}
int main() {
size_t size{100000000L};
std::cout << ((size*sizeof(double))/1024/1024) << " MiB" << std::endl;
std::vector<double> data{};
build(data,size);
double sum{0};
for(auto curr : data){
sum+=curr;
}
std::cout << sum << std::endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8Y2hyb25vPgoKdm9pZCBidWlsZChzdGQ6OnZlY3Rvcjxkb3VibGU+JiBkYXRhLCBjb25zdCBzaXplX3Qgc2l6ZSl7Cgljb25zdCBhdXRvIHN0YXJ0e3N0ZDo6Y2hyb25vOjpzeXN0ZW1fY2xvY2s6Om5vdygpfTsKCXZvaWQqIHB0cntkYXRhLmRhdGEoKX07Cglmb3Ioc2l6ZV90IGl7MX07aTw9c2l6ZTsrK2kpewoJCWRhdGEucHVzaF9iYWNrKChzdGQ6OmNocm9ubzo6c3lzdGVtX2Nsb2NrOjpub3coKS1zdGFydCkuY291bnQoKSk7CgkJaWYoZGF0YS5kYXRhKCkhPXB0cil7CgkJCXB0cj1kYXRhLmRhdGEoKTsKCQkJc3RkOjpjb3V0IDw8IGkgPDwgJyAnIDw8IHB0ciA8PCAnICcgPDwgZGF0YS5jYXBhY2l0eSgpIDw8IHN0ZDo6ZW5kbDsKCQl9Cgl9Cn0KCmludCBtYWluKCkgewoJc2l6ZV90IHNpemV7MTAwMDAwMDAwTH07CgkKCXN0ZDo6Y291dCA8PCAoKHNpemUqc2l6ZW9mKGRvdWJsZSkpLzEwMjQvMTAyNCkgPDwgIiBNaUIiIDw8IHN0ZDo6ZW5kbDsKCQoJc3RkOjp2ZWN0b3I8ZG91YmxlPiBkYXRhe307CgkKCWJ1aWxkKGRhdGEsc2l6ZSk7CgkKCWRvdWJsZSBzdW17MH07Cglmb3IoYXV0byBjdXJyIDogZGF0YSl7CgkJc3VtKz1jdXJyOwoJfQoJc3RkOjpjb3V0IDw8IHN1bSA8PCBzdGQ6OmVuZGw7CglyZXR1cm4gMDsKfQ==