P2141 珠心算测验

输入格式:

共两行,第一行包含一个整数nn,表示测试题中给出的正整数个数。

第二行有nn个正整数,每两个正整数之间用一个空格隔开,表示测试题中给出的正整数。

输出格式:一个整数,表示测验题答案。

解析;破题,让我从九点多直至十二点多都在看到底哪儿出了问题

     自己看代码!!!

    

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main()
{
    int n;

    cin >> n;

    int i,j,k;
    int get[n];
    int cnt[n];
    int c,d;
    int e=0;

    for( i=1; i<=n; i++)
    {
        cin >> get[i];
        cnt[i] = get[i];
    }


    for( i=1; i<=n-1; i++)
    {
        c = get[i];

        for( j=i+1; j<=n; j++)
        {
            d = get[j];

            for( k=1; k<=n; k++)
            {
                if( cnt[k] == c+d )
                {
                    e++;
                    cnt[k] = -1;//!!!!!!!!!将出现过某个数等于两数之和的这个数划掉(等于-1和0都可以,为了做标记),为了避免重复
                }
            }
        }


    }

     cout << e;


    return 0;
}
原文地址:https://www.cnblogs.com/18191xq/p/11639277.html