diff options
-rw-r--r-- | I_anno/Programmazione_1/ex2_08_03_18.cc | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/I_anno/Programmazione_1/ex2_08_03_18.cc b/I_anno/Programmazione_1/ex2_08_03_18.cc new file mode 100644 index 0000000..88d55e1 --- /dev/null +++ b/I_anno/Programmazione_1/ex2_08_03_18.cc @@ -0,0 +1,49 @@ +#include<iostream> +using namespace std; + +template<int N, int M> +bool func(string (&A)[N][M], short w) { + bool check{false}; + for(int i = 0; i < N; ++i) { + bool counter{false}; + string str{""}; + string str2{""}; + for(int j = 0; j < M; ++j) { + if(A[i][j].length() < w) { + counter = false; + continue; + } + + if(!counter) { + str = A[i][j].substr(0, w); + + counter = true; + continue; + } + + str2 = A[i][j].substr(A[i][j].length()-w, w); + + if(str == str2) { + check = true; + break; + } else { + j--; + counter = false; + } + } + + if(check) break; + } + + return check; +} + +int main() { + string A[3][3] = { + {"parola", "allorapar", "bla",}, + {"", "red", "red",}, + {"blue", "", "",}, + }; + cout << func(A, 3); + return 0; +} |