diff --git a/Arrays-algos/mountainSubarrayProblem.cpp b/Arrays-algos/mountainSubarrayProblem.cpp new file mode 100644 index 0000000..131f86b --- /dev/null +++ b/Arrays-algos/mountainSubarrayProblem.cpp @@ -0,0 +1,71 @@ +// https://practice.geeksforgeeks.org/problems/mountain-subarray-problem/1 + +#include +using namespace std; + +class Solution{ + public: + vector processQueries(int a[], int n, vector> &queries, + int q) { + + vectorans; + int left[n], right[n]; + left[0]=0; + right[n-1]=n-1; + int k=0; + + // left[i] stores the last index on left side which is increasing + // i.e. greater than its previous element + for(int i=1; i=0; i--) + { + if(a[i+1]> tc; + while (tc--) { + int n, i, q; + cin >> n; + int a[n]; + for (i = 0; i < n; i++) { + cin >> a[i]; + } + cin >> q; + vector> queries(q); + for (i = 0; i < q; i++) { + cin >> queries[i].first >> queries[i].second; + } + Solution obj; + auto v = obj.processQueries(a, n, queries, q); + for (bool u : v) { + cout << (u ? "Yes\n" : "No\n"); + } + } + return 0; +} \ No newline at end of file diff --git a/Hashing/sortByFrequency.cpp b/Hashing/sortByFrequency.cpp new file mode 100644 index 0000000..2906bdb --- /dev/null +++ b/Hashing/sortByFrequency.cpp @@ -0,0 +1,77 @@ +//https://practice.geeksforgeeks.org/problems/sorting-elements-of-an-array-by-frequency-1587115621/1/ +// Sorting Elements of an Array by Frequency + +#include +using namespace std; + +class Solution{ + public: + + static bool cmp( pair &a, pair &b) + { + if(a.second==b.second) + return a.firstb.second; + } + + vector sortByFreq(int arr[],int n) + { + //Your code here + vectorans; + map m; + vector > A; + + for(int i=0; i> t; + + + while(t--){ + + + int n; + cin >> n; + + int a[n+1]; + + for(int i = 0;i> a[i]; + } + Solution obj; + vector v; + v = obj.sortByFreq(a,n); + for(int i:v) + cout<