diff options
| author | Aditya Naik | 2018-10-12 02:06:33 -0400 |
|---|---|---|
| committer | Aditya Naik | 2018-10-12 02:06:33 -0400 |
| commit | 6d754cf6dd525b2ccc856bfdf648fcf55705667b (patch) | |
| tree | 393713cccf200b0cc6f06089c5b01e4ff3f9af61 /10327/flip.cpp | |
| parent | fb5bf7c8c1ddd697c065d48631724782e2cd0fc6 (diff) | |
flip AC
Diffstat (limited to '10327/flip.cpp')
| -rw-r--r-- | 10327/flip.cpp | 40 |
1 files changed, 7 insertions, 33 deletions
diff --git a/10327/flip.cpp b/10327/flip.cpp index 3f5c897..dacdb54 100644 --- a/10327/flip.cpp +++ b/10327/flip.cpp @@ -1,48 +1,22 @@ #include <iostream> #include <vector> -//simple bubble sort for now, change later -std::vector<int> sort(std::vector<int> nums){ - int j, sorted = 0, temp; - while(0 == sorted){ - sorted = 1; - for(int i=0; i<nums.size()-1; i++){ - j = i+1; - if(nums[i]>nums[j]){ - temp = nums[i]; - nums[i] = nums[j]; - nums[j] = temp; - sorted = 0; - } - } - } - return nums; -} - int main(){ int n; while(std::cin>>n){ - std::vector<int> nums, sorted; + std::vector<int> nums; int num; while(n--){ std::cin>>num; nums.push_back(num); } - sorted = sort(nums); - - 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; - } + int flips = 0; + for(int i=0; i<nums.size()-1; i++){ + for(int j=i+1; j<nums.size(); j++){ + if(nums[i]>nums[j]) + flips+=1; } } - // - std::cout<<"\n"; + std::cout<<"Minimum exchange operations : "<<flips<<std::endl; } } |
