「已注销」 2021-10-15 15:13 采纳率: 75%
浏览 203
已结题

请问这题该怎么做?不能用数组和函数。

img

  • 写回答

3条回答 默认 最新

  • 三雷科技 C/C++领域新星创作者 2021-10-19 13:58
    关注
    #include <iostream>
    using namespace  std;
    
    int main()
    {
        int c= 0;
        for (int i1 = 1; i1<= 9 ;i1++) {
            for (int j1 = 1; j1<=9 ;j1++) {
                for (int k1 = 1; k1<=9 ;k1++) {
                    if(i1 == j1 || i1 == k1 || k1 == j1) continue;
                    for (int i2 = 1; i2<=9 ;i2++) {
                        for (int j2 = 1; j2<=9 ;j2++) {
                            for (int k2 = 1; k2<=9 ;k2++) {
                                if(i2 == j2 || i2 == k2 || k2 == j2) continue;
                                if(i1 == i2 || i1 == j2 || i1 == k2)  continue;
                                if(j1 == i2 || j1 == j2 || j1 == k2)  continue;
                                if(k1 == i2 || k1 == j2 || k1 == k2)  continue;
                                for (int i3 = 1; i3<=9 ;i3++) {
                                    for (int j3 = 1; j3<=9 ;j3++) {
                                        for (int k3 = 1; k3<=9 ;k3++) {
                                            if(i3 == j3 || i3 == k3 || k3 == j3) continue;
                                            if(i1 == i3 || i1 == j3 || i1 == k3)  continue;
                                            if(j1 == i3 || j1 == j3 || j1 == k3)  continue;
                                            if(k1 == i3 || k1 == j3 || k1 == k3)  continue;
                                            if(i2 == i3 || i2 == j3 || i2 == k3)  continue;
                                            if(j2 == i3 || j2 == j3 || j2 == k3)  continue;
                                            if(k2 == i3 || k2 == j3 || k2 == k3)  continue;
                                             int num1 = i1*100 + j1*10 +k1;
                                             int num2 = i2*100 + j2*10 +k2;
                                             int num3 = i3*100 + j3*10 +k3;
    
                                             if(num1 >= num2) continue;
                                             if(num2 >= num3) continue;
    
                                             if(num1 + num2 + num3 == 1953){
                                                 cout <<"NO. \t"<<num1<<"+"<<num2<<"+"<<num3<<endl;
                                                 c++;
                                             }
                                        }
                                    }
                                }
    
    
                            }
                        }
                    }
                }
            }
        }
        cout <<"total="<<c;
        return 0;
    }
    

    运行结果如下:

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • qfl_sdu 2021-10-15 15:52
    关注

    运行结果:

    img

    代码如下:

    #include <iostream>
    using namespace std;
    int main()
    {
        int n = 1953;
        int i,j,k,up=0;
        int i2,j2,k2,up2=0;
        int i3,j3,k3;
        int count = 0;
        
        for (i=1;i<=9;i++)
        {
            for(j=i+1;j<=9;j++)
            {
                for(k=j+1;k<=9;k++)
                {
                    if(i==j) continue;
                    if(i==k) continue;
                    if(j==k) continue;
                    if((i+j+k)%10 != 3) continue;
                    
                    up = (i+j+k)/10;
                    //cout << i << " " << j << " " << k<< " ="<< (i+j+k)<<endl;
                    
                    //第二个数
                    for (i2=1;i2<=9;i2++)
                    {
                        for(j2=1;j2<=9;j2++)
                        {
                            for(k2=1;k2<=9;k2++)
                            {
                                if(i2 == i || i2==j || i2 == k ) continue;
                                if(j2 == i || j2==j || j2 == k ) continue;
                                if(k2 == i || k2==j || k2 == k ) continue;
                                if(i2 == j2 || i2 == k2 || j2==k2) continue;
                                if( (i2+j2+k2)%10 != (5-up) ) continue;
            
                                up2 = (i2+j2+k2)/10;
    
                                for(i3=1;i3<=9;i3++)
                                {
                                    for(j3=1;j3<=9;j3++)
                                    {
                                        k3 = 45 - i-j-k - i2-j2-k2-i3-j3;
                                        if(k3>9 || k3<=0) continue;
                                        
                                        if(i3 == i || i3 ==j || i3==k)continue;
                                        if(j3 == i || j3 ==j || j3==j)continue;
                                        if(k3 == i || k3 ==k || k3 ==j)continue;
    
                                        if(i3 == i2 || i3 ==j2 || i3==k2)continue;
                                        if(j3 == i2 || j3 ==j2 || j3==j2)continue;
                                        if(k3 == i2 || k3 ==k2 || k3 ==j2)continue;
    
                                        if(i3 == k3 || i3==j3 || k3==j3) continue;
                                        
                                        if(i3+j3+k3+up2 == 19)
                                        {
                                            count++;
                                            cout <<"NO. " << count<< "  " << i3*100+i2*10+i << "+" << j3*100+j2*10+j << "+" << k3*100+k2*10+k << "=1953"<<endl;
                                        }
                                        
                                    }
                                }
                                
                            }
                        }
                    }
            
                }
            }
        }
    
    
        return 0;
    }
    
    
    评论
  • 「已注销」 2021-10-15 20:19
    关注

    img

    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 10月28日
  • 已采纳回答 10月20日
  • 创建了问题 10月15日

悬赏问题

  • ¥15 matlab+波形匹配算法
  • ¥15 转录组分析做聚类树图时癌旁组被分到了癌组
  • ¥15 大一Python字典
  • ¥15 multisim电路设计(相关搜索:设计报告)
  • ¥15 PC-lint Plus
  • ¥15 gpl24676注释
  • ¥15 php5.3内存泄露
  • ¥15 DigSilent如何复制复合模型到自己案例?
  • ¥15 求日版华为b610s-77a 官方公版固件,有偿
  • ¥15 关于#java#的问题,请各位专家解答!(相关搜索:java程序)