#include <cstdio>
#include <vector>
#include <chrono>
struct Data
{
int pos;
int move;
int data[100]; // ステータスとかいろいろ想定
};
int main()
{
std::vector<Data> data(10000000);
auto start = std::chrono::high_resolution_clock::now();
for(size_t i = 0; i < data.size(); i++)
{
data[i].pos = (i*123) % 55;
data[i].move =(i*55) % 122;
}
for(size_t i = 0; i < data.size(); i++)
{
data[i].pos += data[i].move;
}
auto end = std::chrono::high_resolution_clock::now();
auto time = std::chrono::duration_cast<std::chrono::milliseconds>(end - start).count() /1000.f;
printf("time=%fs", time);
return 0;
}
I2luY2x1ZGUgPGNzdGRpbz4KI2luY2x1ZGUgPHZlY3Rvcj4KI2luY2x1ZGUgPGNocm9ubz4Kc3RydWN0IERhdGEKewoJaW50IHBvczsKCWludCBtb3ZlOwoJaW50IGRhdGFbMTAwXTsgLy8g44K544OG44O844K/44K544Go44GL44GE44KN44GE44KN5oOz5a6aCn07CmludCBtYWluKCkgCnsKCXN0ZDo6dmVjdG9yPERhdGE+IGRhdGEoMTAwMDAwMDApOwoJYXV0byBzdGFydCA9IHN0ZDo6Y2hyb25vOjpoaWdoX3Jlc29sdXRpb25fY2xvY2s6Om5vdygpOwoJZm9yKHNpemVfdCBpID0gMDsgaSA8IGRhdGEuc2l6ZSgpOyBpKyspCgl7CgkJZGF0YVtpXS5wb3MgPSAoaSoxMjMpICUgNTU7CgkJZGF0YVtpXS5tb3ZlID0oaSo1NSkgJSAxMjI7Cgl9Cglmb3Ioc2l6ZV90IGkgPSAwOyBpIDwgZGF0YS5zaXplKCk7IGkrKykKCXsKCQlkYXRhW2ldLnBvcyArPSBkYXRhW2ldLm1vdmU7Cgl9CglhdXRvIGVuZCA9IHN0ZDo6Y2hyb25vOjpoaWdoX3Jlc29sdXRpb25fY2xvY2s6Om5vdygpOwoJYXV0byB0aW1lID0gc3RkOjpjaHJvbm86OmR1cmF0aW9uX2Nhc3Q8c3RkOjpjaHJvbm86Om1pbGxpc2Vjb25kcz4oZW5kIC0gc3RhcnQpLmNvdW50KCkgLzEwMDAuZjsKCXByaW50ZigidGltZT0lZnMiLCB0aW1lKTsKCglyZXR1cm4gMDsKfQ==