1. 程式人生 > >ZZULIOJ 1147: 查詢子陣列

ZZULIOJ 1147: 查詢子陣列

題目描述給定兩個整型陣列,陣列a有n個元素, 陣列b有m個元素,1<=m<=n<100,請檢驗陣列b是否是陣列a的子陣列。若從陣列a的某個元素a[i]開始,有b[0]=a[i],b[1]=a[i+1],…,b[m]=a[i+m],則稱陣列b是陣列a的子陣列。
輸入輸入第一行為兩個整數n和m;第二行為陣列a的n個整數;第三行為陣列b的m個整數,各資料之間用空格隔開。
輸出輸出佔一行。若b是a的子陣列,則輸出子陣列所在位置i,注意下標從0開始;否則輸出“No Answer”。
樣例輸入8 3
3 2 6 7 8 3 2 5
3 2 5

樣例輸出5

#include<stdio.h>
int main(){ int m[100],n[100]; int a,i,b,j; scanf("%d%d",&a,&b); for(i=0;i<=a-1;i++){ scanf("%d",&m[i]); } for(i=0;i<=b-1;i++){ scanf("%d",&n[i]); } for(i=0;i<=a-b;i++){ for(j=0;j<b;j++){ if(m[i+j]!=n[j]) break; } if(j==b){ printf("%d",i)
;break; } } if(j!=b)printf("No Answer"); return 0; }