数学题
在f(x)和g(x)的系数里找到第一个不是p的倍数的数,然后相加就是答案
为什么?
设x1为f(x)中第一个不是p的倍数的系数,x2为g(x)......
x1+x2前的系数为(a[x1+x2]*b[0]+a[x1+x2-1]*b[1]..)+a[x1]*b[x2]+(.....a[0]*b[x1+x2])
除了a[x1]b[x2]外,其余的都含有p的倍数,所以和肯定不是p的倍数
#include<bits/stdc++.h> using namespace std; const int N=1E6+7; int arr[N]; int brr[N]; int main() { ios::sync_with_stdio(0); int n,m,p; cin>>n>>m>>p; for(int i=0;i<n;i++) cin>>arr[i]; for(int j=0;j<m;j++) cin>>brr[j]; int c1=0; int c2=0; for(int i=0;i<n;i++){ if(arr[i]%p!=0){ c1=i; break; } } for(int i=0;i<m;i++){ if(brr[i]%p!=0){ c2=i; break; } } cout<<c1+c2<<endl; return 0; }