C - A or B Equals C
Posted Kearon
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C - A or B Equals C相关的知识,希望对你有一定的参考价值。
1 /* 2 a or c = b,已知a和b,求c可能有多少种值。 3 对比二进制每一位,如果A为1,B为0,则不可能,如果A为1,B为1,则C的这一位可以 4 是0也可以是1,所以结果乘以2,其他情况C的这一位必须和B一致,所以结果不变。 5 */ 6 #include <bits/stdc++.h> 7 using namespace std; 8 const int mod=1000000007; 9 int main() 10 { 11 char a[110],b[110]; 12 int n; 13 scanf("%d",&n); 14 while(n--) 15 { 16 int len; 17 scanf("%d%s%s",&len,a,b); 18 int ans=1; 19 for(int i=0; i<len; i++) 20 { 21 if(a[i]==‘1‘&&b[i]==‘0‘) 22 { 23 printf("IMPOSSIBLE\n"); 24 ans=0; 25 break; 26 } 27 if(a[i]==‘1‘&&b[i]==‘1‘) ans=(ans*2)%mod; 28 } 29 ans=ans%mod; 30 if(ans!=0) 31 printf("%d\n",ans); 32 33 } 34 }
以上是关于C - A or B Equals C的主要内容,如果未能解决你的问题,请参考以下文章
我的C语言学习进阶之旅解决 Visual Studio 2019 报错:错误 C4996 ‘fscanf‘: This function or variable may be unsafe.(代码片段
我的C语言学习进阶之旅解决 Visual Studio 2019 报错:错误 C4996 ‘fscanf‘: This function or variable may be unsafe.(代码片段