diff options
author | Santo Cariotti <dcariotti24@gmail.com> | 2020-07-20 12:26:37 +0200 |
---|---|---|
committer | Santo Cariotti <dcariotti24@gmail.com> | 2020-07-20 12:26:37 +0200 |
commit | e06d662de2a01673ce6151ef66d2aa00b271a44c (patch) | |
tree | c7ed19827bc5b769d67ba9a9eaca06ab578c48f2 /I_anno/Programmazione_2/exercises/exam_20_07_20/ex1.cpp | |
parent | 7468f361189f9a32fb7d02e033d7174a3c1ef182 (diff) |
feat: add exercises of 20/07/2020 exam
Diffstat (limited to 'I_anno/Programmazione_2/exercises/exam_20_07_20/ex1.cpp')
-rw-r--r-- | I_anno/Programmazione_2/exercises/exam_20_07_20/ex1.cpp | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/I_anno/Programmazione_2/exercises/exam_20_07_20/ex1.cpp b/I_anno/Programmazione_2/exercises/exam_20_07_20/ex1.cpp new file mode 100644 index 0000000..4f08a74 --- /dev/null +++ b/I_anno/Programmazione_2/exercises/exam_20_07_20/ex1.cpp @@ -0,0 +1,39 @@ +#include<iostream> +#include<sstream> +#include<fstream> +#include<vector> + +using namespace std; +int insertionsort(vector<int>& a, int n) { + int c = 0; + for(int i = 1; i < n; ++i) { + int j = i-1; + int key = a[i]; + while(j > -1 && a[j] > key) { + swap(a[j+1], a[j]); + --j; + c++; + } + a[j+1] = key; + } + return c; +} +int main() { + ifstream in("input.txt"); + ofstream out("output.txt"); + + for(int ts = 0; ts < 100; ++ts) { + int N; + in >> N; + int a, b; + vector<int> v; + for(int i = 0; i < N; ++i) { + in >> a >> b; + v.push_back(a+b); + } + out << insertionsort(v, v.size()) << endl; + } + in.close(); + out.close(); + return 0; +} |