关于循环的玄学问题
  • 板块学术版
  • 楼主ZYK_luogu
  • 当前回复6
  • 已保存回复6
  • 发布时间2023/12/3 12:19
  • 上次更新2023/12/3 12:54:21
查看原帖
关于循环的玄学问题
742157
ZYK_luogu楼主2023/12/3 12:19

输入包含 nn 个整数的数列 SS 以及包含 qq 个不重复整数的数列 TT,输出既包含于 SS 也包含于 TT 的整数的个数 CC。

输入样例:

5
1 2 3 4 5
3
3 4 1

输出样例:

3

用此代码跑出来的结果是 22,真的特别无语。。。

/*
5
1 2 3 4 5
3
3 4 1
*/
#include <iostream>
#include <cstdio>

using namespace std;
const int N = 10010;

int n, m, a1[N], a2[N];

int sol1(int n, int m, int *a1, int *a2)
{
    int res = 0;
    for(int i = 1; i <= n; i ++)
    {
        int flag = 0;
        for(int j = 1; j <= m; j ++)
            if(a1[i] == a2[j])
            {
                flag = 1;
                break;
            }
        if(flag) res ++;
    }
    return res;
}

int main()
{
    scanf("%d%d", &n, &m);
    for(int i = 1; i <= n; i ++)
        scanf("%d", &a1[i]);
    for(int i = 1; i <= m; i ++)
        scanf("%d", &a2[i]);
    
    printf("%d", sol1(n, m, a1, a2));

    return 0;
}

求指正哪里错了,看不出来。

2023/12/3 12:19
加载中...