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-朋友错的+和朋友都对的
}