へいたいの左。
あっという間にできました。うそです。ベクトルの挿入を思いついたのは一日後でした。
身長がばらばらの兵隊どもが一列にならんだ。そして解散した。
みな、自分より高いやつが左に何人いたかしか覚えていない。
元の並びを返せ。
TopCoder Statistics - Problem Statement
#include <iostream> #include <sstream> #include <string> #include <vector> #include <algorithm> using namespace std; class StandInLine{ public: vector <int> reconstruct(vector <int> le){ /* for(int k=0;k<le.size();k++){ cout<<le[k]<<" "; } */ //cout<<endl; vector <int> result; for(int i=le.size()-1;i>=0;i--){ int b=le[i]; result.insert(result.begin()+b,1,i+1); // cout<<i<<" : "<<b<<" "; /* for(int j=0;j<result.size();j++){ cout<<result[j]<<" "; } cout<<endl; */ } return result; } }; int main(){ StandInLine ob1; int a1=1000,b1=513; int a[] ={6, 1, 1, 1, 2, 0, 0}; vector <int> tx(a,a+(sizeof(a)/sizeof(a[0]))); ob1.reconstruct(tx); return 0;
- result.insert(result.begin()+b,1,i+1);
ベクトルを挿入しますぜ。