Workshop 2: Arrays and Pointers
Workshop 2: Arrays and Pointers
Q.3. Rotate a given array of size ‘n’ by ‘d’ Q.4. Given a string s, check if it’s a palindrome.
units.
Input : E.g. aaabbbb -> NO
A : [1 2 3 7 4 5 6], d=2 caabaac -> YES
Output :[3 7 4 5 6 1 2]
reverseArray(a,0,d-1);
reverseArray(a,d,n-1);
reverseArray(a,0,n-1);
return 0;
}
Sol-4:
#include <iostream>
using namespace std;
int main()
{
char s[50];
cin >> s;
int l =strlen(s), i=0, j=l-1;
while(s[i++]==s[j--] && i < j);
if(i < j) cout << ”NO\n”;
else cout << "YES\n";
return 0;
}
Q.5. Given a string s, find if any anagram of the string forms a palindrome.
Q.6. Given an array of integers, every element appears twice except for one. Find that single one.
Input : [1 2 2 3 1]
Output : 3
Sol 5
#include <bits/stdc++.h>
using namespace std;
int main()
{
string s;
cin>>s;
int n=s.size(), i, a[26];
memset(a, 0, sizeof(a));
for(i=0;i<n;i++)
{
int cur = s[i] - 'a';
a[cur]++;
}
int odd = 0;
for(i=0; i < 26; i++) odd += (a[i]&1);
if(odd<=1) cout<<"YES\n";
else cout<<"NO\n";
return 0;
}
Sol 6
#include <iostream>
using namespace std;
int main()
{
int i, n, ans=0;
cin >> n;
int A[n];
for(i=0; i<n; i++) cin >> A[i];
for(i=0; i<n; i++) ans = ans ^ A[i];
cout << ans;
return 0;
}