#include <iostream>
#include <vector>
#include<stdio.h>
using namespace std;
struct Point{
int x;
int y;
};
int main() {
vector<Point> points;
for (int i = 0; i<100; i++) {
//ランダムな点を生成
Point pt = { rand() % i, 0 };
//vectorの要素数が0でないとき
if (points.size() != 0) {
int k = 0;
//vectorの先頭から調べていく
for (auto it = points.begin(); it != points.end(); it++) {
//調査位置のvectorの内容をコピー
Point tmp = (Point)(*it);
//新しい点より大きいものが見つかった
if (pt.x < tmp.x) points.insert(points.begin() + k, pt);
//最後尾まで調査したなら,最後尾に追加
else if (i + 1 == points.size()) points.push_back(pt);
//そうでないとき,インクリメント
else k++;
}
}
//vectorの要素数が0のときは最後尾に追加
else points.push_back(pt);
}
//要素を順に表示
for (int i = 0; i < 100; i++) {
cout << points[i].x << endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZTxzdGRpby5oPgoKCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgpzdHJ1Y3QgUG9pbnR7CglpbnQgeDsKCWludCB5Owp9OwoKaW50IG1haW4oKSB7Cgl2ZWN0b3I8UG9pbnQ+IHBvaW50czsKCWZvciAoaW50IGkgPSAwOyBpPDEwMDsgaSsrKSB7CgkJLy/jg6njg7Pjg4Djg6DjgarngrnjgpLnlJ/miJAKCQlQb2ludCBwdCA9IHsgcmFuZCgpICUgaSwgMCB9OwoJCS8vdmVjdG9y44Gu6KaB57Sg5pWw44GM77yQ44Gn44Gq44GE44Go44GNCgkJaWYgKHBvaW50cy5zaXplKCkgIT0gMCkgewoJCQlpbnQgayA9IDA7CgkJCS8vdmVjdG9y44Gu5YWI6aCt44GL44KJ6Kq/44G544Gm44GE44GPCgkJCWZvciAoYXV0byBpdCA9IHBvaW50cy5iZWdpbigpOyBpdCAhPSBwb2ludHMuZW5kKCk7IGl0KyspIHsKCQkJCS8v6Kq/5p+75L2N572u44GudmVjdG9y44Gu5YaF5a6544KS44Kz44OU44O8CgkJCQlQb2ludCB0bXAgPSAoUG9pbnQpKCppdCk7CgkJCQkvL+aWsOOBl+OBhOeCueOCiOOCiuWkp+OBjeOBhOOCguOBruOBjOimi+OBpOOBi+OBo+OBnwoJCQkJaWYgKHB0LnggPCB0bXAueCkgcG9pbnRzLmluc2VydChwb2ludHMuYmVnaW4oKSArIGssIHB0KTsKCQkJCS8v5pyA5b6M5bC+44G+44Gn6Kq/5p+744GX44Gf44Gq44KJ77yM5pyA5b6M5bC+44Gr6L+95YqgCgkJCQllbHNlIGlmIChpICsgMSA9PSBwb2ludHMuc2l6ZSgpKSBwb2ludHMucHVzaF9iYWNrKHB0KTsKCQkJCS8v44Gd44GG44Gn44Gq44GE44Go44GN77yM44Kk44Oz44Kv44Oq44Oh44Oz44OICgkJCQllbHNlIGsrKzsKCQkJfQoJCX0KCQkvL3ZlY3RvcuOBruimgee0oOaVsOOBjDDjga7jgajjgY3jga/mnIDlvozlsL7jgavov73liqAKCQllbHNlIHBvaW50cy5wdXNoX2JhY2socHQpOwoJfQoKCS8v6KaB57Sg44KS6aCG44Gr6KGo56S6Cglmb3IgKGludCBpID0gMDsgaSA8IDEwMDsgaSsrKSB7CgkJY291dCA8PCBwb2ludHNbaV0ueCA8PCBlbmRsOwoJfQoKCXJldHVybiAwOwoKfQ==