Bài toán: Kiểm tra dãy a1 có phải là dãy con của day a hay không? (a1, a là mảng số nguyên. Ví dụ: a1[]= {1,2,3} là dãy con của dãy a[]={2,3,1,2,3,5,4,5}; a1[]={2,3,4} không phải là dãy con của dãy a[]={3,1,2,4,5,2,6})
*/
[Code C\C++]
#include<iostream.h>
#include<conio.h>
int a[100],a1[100],n,m;
void NhapDay(){
// nhap day a
cout<<"\n Nhap day a: \n";
do{
cout<<"\n n= "; cin>>n;
if (n<1||n>100)
cout<<"\n Nhap lai n!";
}while(n<1||n>100);
for(int i=0;i<n;i++)
{
cout<<"\n a["<<i<<"]= "; cin>>a[i];
}
// nhap day a1
cout<<"\n Nhap day a1: \n";
do{
cout<<"\n m= "; cin>>m;
if (m<1||m>n)
cout<<"\n Nhap lai m!";
}while(m<1||m>n);
for( i=0;i<m;i++)
{
cout<<"\n a1["<<i<<"]= "; cin>>a1[i];
}
}
// kiem tra day con
int TimDayCon(){
int i,j,k;
i=0;j=0;
while (1){
k=i;
j=0;
while (j<m){
if(a[i]==a1[j]&&i<n)
{
i++;
j++;
}
else
{
i=k+1;
break;
}
}
if (j>m-1) return 1;
if (k>n-1) break;
}
return 0;
}
// ham chinh
void main(){
NhapDay();
if (TimDayCon()==1) cout<<"\n a1 la day con cua a";
else cout<<"\n a1 khong phai day con cua a";
getch();
}
[ Đề nghị các bạn chuyển sang các code khác như Java, C#, VB, Pascal,...]
[Tải Code Chương trình tại đây (Lưu ý: Sau 5s, click Bỏ qua quảng cáo - Skin Ad)]