1 #include<iostream> 2 #include<vector> 3 //anthor:ZQ 4 using namespace std; 5 int main(){ 6 vector<int>obj; 7 vector<int>::iterator it; 8 int n,ns,nq,flag,n1; 9 cin>>n; 10 cin>>n1; 11 obj.push_back(n1); 12 for(int i=1;i<n;i++){ 13 cin>>ns>>nq>>flag; 14 for(it=obj.begin();it!=obj.end();it++){ 15 if(*it==nq){ 16 if(flag==0){ 17 obj.insert(it,ns); 18 }else{ 19 obj.insert(it+1,ns); 20 } 21 break; 22 } 23 } 24 } 25 for(it=obj.begin();it!=obj.end();it++){ 26 cout<<*it<<" "; 27 } 28 return 0; 29 }
改進代碼ios
不用去一個一個去尋找自行車位置,調用<algorithm>庫中的函數find()直接鎖定位置數組
代碼:函數
1 #include<iostream> 2 #include<vector> 3 #include<algorithm> 4 //anthor:ZQ 5 using namespace std; 6 int main(){ 7 vector<int>obj; 8 vector<int>::iterator it; 9 vector<int>::iterator position; 10 int n,ns,nq,flag,n1; 11 cin>>n; 12 cin>>n1; 13 obj.push_back(n1); 14 for(int i=1;i<n;i++){ 15 cin>>ns>>nq>>flag; 16 position=find(obj.begin(),obj.end(),nq); 17 if(flag==0){ 18 obj.insert(position,ns); 19 }else{ 20 obj.insert(position+1,ns); 21 } 22 } 23 // for(it=obj.begin();it!=obj.end();it++){ 24 // if(*it==nq){ 25 // if(flag==0){ 26 // obj.insert(it,ns); 27 // }else{ 28 // obj.insert(it+1,ns); 29 // } 30 // break; 31 // } 32 // } 33 for(it=obj.begin();it!=obj.end();it++){ 34 cout<<*it<<" "; 35 } 36 return 0; 37 }