E考试
链接:https://ac.nowcoder.com/acm/contest/8564/E
来源:牛客网
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 524288K,其他语言1048576K
64bit IO Format: %lld
题目描述
你和你的朋友参加了一场考试,试卷由 n 道判断题构成
你的朋友通过 py 提前得知了他错了 k 道题,而你只能和你的朋友对答案
请问你最多能对几道题
输入描述:
第一行,两个整数 n,k ,意义与题目描述中一致
第二行 n 个整数,表示你的答案
第三行 n 个整数,表示朋友的答案
输出描述:
一行一个整数,表示最多能对几题
示例1
输入
复制
3 1
1 0 1
0 0 1
输出
复制
3
备注:
判断题答案只包含0/1
思路:很简单
1.判两个人都对的题目
2.分类讨论
#include <bits/stdc++.h> using namespace std; int n,k,a[1005],sum1,sum2; int main() { int n,k; cin>>n>>k; for(int i=1;i<=n;i++) cin>>a[i]; for(int s,i=1;i<=n;i++) { cin>>s; if(s!=a[i]) sum1++; else sum2++; } if(sum1==k) cout<<n<<endl;//如果自己和朋友认为错的题一样,说明自己全对,输出n else if(sum1>k) cout<<sum2+k<<endl;//如果自己比朋友认为错的题多,输出其余对的+朋友错的 else cout<<n-k+sum1<<endl;//如果自己比朋友认为错的题少,输出n-朋友错的+和朋友都对的 }