/* */

Hi, I am

Ngô Tôn

I am a programmer.

Home / Programming / C/C++ / Kiểm tra dãy A có phải là con của dãy B không?

Kiểm tra dãy A có phải là con của dãy B không?

Yêu cầu:

Cho 2 dãy A, B các số nguyên (kích thước dãy A nhỏ hơn dãy B). Hãy kiểm tra xem A có phải là con của B hay không?

Thuật toán:

Code:

/************************************************************
#include "stdio.h"
#include "conio.h"
#include "stdlib.h"

bool is_a_contain_b(int A[], int n, int B[], int m);

void main( void )
{
int A[] = {1, -2, 5, 6, 8, -9, 4, 5, 11, -7};
int B[] = {6, 8, -9, 4};
int n = sizeof(A)/sizeof(int);
int m = sizeof(B)/sizeof(int);
int k = 5;

if(is_a_contain_b(A, n, B, m))
printf("\nA contains B");
else
printf("\nA doesn't contain B");

getch();
}

//Check whether A contains B or not?\
//Return: true: if A contains B, otherwise return false.
bool is_a_contain_b(int A[], int n, int B[], int m)
{
int i, j, k;
bool res = false;
if(n < m)
return false;
for(i = 0; i < n; i++)
{
if(B[0] == A[i] && n - i >= m)
{
k = i + 1;
res = true;
for(j = 1; j < m; j++, k++)
{
if(B[j] != A[k])
{
res = false;
break;
}
}
if(res)
break;
}
}
return res;
}

Kết quả:

Yêu cầu: Cho 2 dãy A, B các số nguyên (kích thước dãy A nhỏ hơn dãy B). Hãy kiểm tra xem A có phải là con của B hay không? Thuật toán: Code: Kết quả: [crayon-5befbf8508d09270290903/]

User Rating: 3.42 ( 3 votes)

About ngoton

Ngô Tôn is a programmer. He is crazy about new gadgets and up to date with latest technology trends. Use comments to notify any issues you are facing.

Check Also

Xây dựng một lớp Time mô tả thông tin về giờ, phút giây

Yêu cầu: Xây dựng một lớp Time mô tả thông tin về giờ, phút giây. …

Leave a Reply

Your email address will not be published. Required fields are marked *