x进制减法
#include<bits/stdc++.h>
#define MAX 100005
using namespace std;const int inf=1e9+7;int n,ma,mb,k;
int a[MAX];
int b[MAX];
int base[MAX];signed main(){cin>>n;cin>>ma;for(int i=ma;i>=1;i--){cin>>a[i];}cin>>mb;for(int j=mb;j>=1;j--){cin>>b[j];}k=max(ma,mb);for(int i=1;i<=k;i++){base[i]=max(2,max(a[i],b[i])+1);}long long A=0,B=0;for(int i=ma;i>=1;i--){A=(A*base[i]+a[i])%inf;}for(int i=mb;i>=1;i--){B=(B*base[i]+b[i])%inf;}long long ans=(A-B+inf)%inf;cout<<ans<<endl;return 0;
}
找同位置上最大的数,最大数加一,做个比较,如果两个数都是零会变成1进制,但没有1进制,所以要和2进行比较,小于默认二进制,注意longlong没了