问下I题,哪个题解k是用来求有多少不相同的数吗? 我用set代替就过不了啊,只能过85.7%; for(int i=1;i<=n;i++){         cin>>a[i];         se.insert(a[i]);     }     int s1=0,s2=0x7fffffff;     for(int i=1;i<=n;i++){         s1|=a[i];//找出二进制位有1的位置         s2&=a[i];//找出二进制位都为1的位置     }     s2^=s1;//找出二进制位有1但不都为1的位置     ll ans;     int t=se.size()-1;     for(int i=0;i<=30;i++){         int c=1<<i;         if(s2&c){//找出s1二进制位的为1的最小位置             ans=1ll*c*t;                break;         }     }
1 2

相关推荐

牛客网
牛客网在线编程
牛客网题解
牛客企业服务