试题名称 算法提高 珠心算测验 语言 C++

1.对1+8=9 2+7=9 3+6=9等进行排除(实际算一种情况)

2.sort函数的使用

#include<bits/stdc++.h>
#include<iostream>
using namespace std;
int n,tig=0;
int *a,v[101];//v[101]用来排除 得到的答案一样的情况 如3+4=7 2+5=7 1+6=7实际算一种情况 
void count_in()
{
    cin>>n;
    a=new int[n];
    memset(a,0,sizeof(a));
    memset(v,0,sizeof(v));
    for(int i=0;i<n;i++)
    {
        cin>>a[i];
    }
    return;
}
void count_out()
{
    cout<<tig;
    return;
}
void Abacus()//珠心算 
{
    for(int i=n-1;i>=0;i--)
    {
        for(int j=0;j<i-1;j++)
        {
            for(int k=j+1;k<i;k++)
            {
                if(a[i]==a[j]+a[k]&&v[i]==0)
                {
                    tig++;
                    v[i]=1;
                }
            }
        }
    }
    return;
}
int main()
{
    count_in();
    sort(a,a+n);
    Abacus();
    count_out();    
    delete []a;
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_47991812/article/details/108120471