diff options
| -rw-r--r-- | 10327/flip.cpp | 25 | ||||
| -rw-r--r-- | 10327/flip.in | 7 |
2 files changed, 22 insertions, 10 deletions
diff --git a/10327/flip.cpp b/10327/flip.cpp index 5ead08c..3f5c897 100644 --- a/10327/flip.cpp +++ b/10327/flip.cpp @@ -2,7 +2,7 @@ #include <vector> //simple bubble sort for now, change later -vector<int> sort(vector<int> nums){ +std::vector<int> sort(std::vector<int> nums){ int j, sorted = 0, temp; while(0 == sorted){ sorted = 1; @@ -22,22 +22,27 @@ vector<int> sort(vector<int> nums){ int main(){ int n; while(std::cin>>n){ - vector<int> nums, sorted, pos; + std::vector<int> nums, sorted; int num; while(n--){ std::cin>>num; nums.push_back(num); } sorted = sort(nums); - - int nums_idex=0; - for(int sort_idex=0; - i<sorted.size() && nums_idex < sorted.size(); i++){ - if(sorted[sort_idex] == nums[nums_idex]){ - pos.push_back(nums_idex - sort_idex); - nums_idex++; + + int mark[1000] = {0}; + int pos[1000] = {0}; + + for(int i=0; i<nums.size(); i++){ + for(int j=0; j<sorted.size(); j++){ + if(nums[i]==sorted[j] && mark[j]!=1){ + pos[i] = j - i; + mark[j] = 1; + break; + } } } - + // + std::cout<<"\n"; } } diff --git a/10327/flip.in b/10327/flip.in new file mode 100644 index 0000000..ce9d6c9 --- /dev/null +++ b/10327/flip.in @@ -0,0 +1,7 @@ +12 +0 1 2 5 4 1 2 0 5 0 7 9 + +0 2 3 5 3 -1 0 -6 1 -7 0 0 + +0 2 0 4 2 -2 -1 -7 0 0 0 :7 +0 1 -1 3 1 -3 -2 0 0 0 : 7
\ No newline at end of file |
