错的和大家都不太一样....
18点没有问题,特判也加了,但第15个点错了。
#include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <iomanip>
#include <cmath>
typedef unsigned long long ULL;
using namespace std;
unsigned long long n,m,c,a,b,k,d,l=0;
unsigned long long biao1=0,biao2=0,e;
int main(){
cin>>n>>m>>c>>k;
for(int i=1;i<=n;i++){
cin>>a;
biao1|=a;
}
d=0;
for(int i=1;i<=m;i++){
cin>>a>>b;
biao2=biao2|(1ULL<<a);
}
e=(~biao1)&biao2;
for(int i=0;i<=63;i++){
if((e>>i)&1ULL) d++;
}
l=pow(2,k-d)-n;
if(k==64) {
cout<<"18446744073709551616";
}
else cout<<l;
return 0;
}