-
Notifications
You must be signed in to change notification settings - Fork 0
/
23.cpp
130 lines (110 loc) · 2.63 KB
/
23.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
/******************************************************************************
check whether array is sorted or not using recursion
*******************************************************************************/
#include <iostream>
#include<bits/stdc++.h>
using namespace std;
bool sorted(int a[],int n){
if(n==1){
return 1;
}
// yeh baki ka array check karega
bool restarray=sorted(a+1,n-1);
return (a[0]<a[1] && restarray);
// return statemnet main hai agar a[0]<a[1] aur baki ka array agar dono return true karte hai to array sorted hai
}
int main()
{
int n;
cin>>n;
int a[n];
for(int i=0;i<n;i++){
cin>>a[i];
}
if(sorted(a,n)){
cout<<"The array is sorted"<<endl;
}
else{
cout<<"The array is not sorted"<<endl;
}
return 0;
}
/******************************************************************************
print no in increaing and decreasing order using recursion
*******************************************************************************/
#include <iostream>
#include<bits/stdc++.h>
using namespace std;
void printI(int n){
if(n==0){
return;
}
printI(n-1);
cout<<n<<" ";
}
void printD(int n){
if(n==0){
return;
}
cout<<n<<" ";
printD(n-1);
}
int main()
{
int n;
cin>>n;
// int a[n];
// for(int i=0;i<n;i++){
// cin>>a[i];
// }
printD(n);
cout<<endl;
printI(n);
return 0;
}
/******************************************************************************
Find the last and the first occurence of a number in an array(strictly increasing)
*******************************************************************************/
#include <iostream>
#include<bits/stdc++.h>
using namespace std;
int firstOcc(int a[],int n,int i,int key){
// base condition
if(i==n){
return -1;
}
if(a[i]==key){
return i;
}
return firstOcc(a,n,i+1,key);
}
int LastOcc(int a[],int n,int i,int key){
// base condition
if(i==n){
return -1;
}
int lastarray= LastOcc(a,n,i+1,key);
// pehle last array tak jayenge
if(lastarray!=-1){
// fir ab hum 1st elemnt tak
return lastarray;
}
if(a[i]==key){
return i;
}
return -1;
}
int main()
{
int n;
cin>>n;
int a[n];
for(int i=0;i<n;i++){
cin>>a[i];
}
int key;
cin>>key;
cout<<firstOcc(a,n,0,key)<<endl;
cout<<LastOcc(a,n,0,key);
return 0;
}