求助,只有2个ac...
查看原帖
求助,只有2个ac...
606023
sduoooh楼主2022/2/10 15:30
#include<stdio.h>
int main()
{
    int n, m[10001][2] = { 0 }, b, max=0, ans = 0;
    scanf("%d", &n);
    for (int i = 0; i < n; i++)
    {
        scanf("%d", &b);
        m[b][0] = 1;
        max = max > b ? max : b;
    }
    for (int i = 0; i < n; i++)
    {
        if (!m[i][0]) continue;
        for (int j = 0; j < i; j++)
        {
            if (!m[j][0] || m[j][1]==i) continue;
            int p = i - j;
            if (p > 0 && p <= max)
                if (m[p][0] )
                {
                    m[p][1] = i;
                    m[j][1] = i;
                    ans++;
                    continue;
                }
        }
    }
    printf("%d", ans);
    return 0;

}
2022/2/10 15:30
加载中...