欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > 4 算法1-3 三连击(升级版)

4 算法1-3 三连击(升级版)

2025/2/25 18:04:41 来源:https://blog.csdn.net/2402_85063660/article/details/145839976  浏览:    关键词:4 算法1-3 三连击(升级版)

题目描述

将 1,2,…,9 共 9 个数分成三组,分别组成三个三位数,且使这三个三位数的比例是 A:B:C,试求出所有满足条件的三个三位数,若无解,输出 No!!!

输入格式

三个数,A,B,C。

输出格式

若干行,每行 3 个数字。按照每行第一个数字升序排列。

输入输出样例

输入 #1

1 2 3

输出 #1

192 384 576
219 438 657
273 546 819
327 654 981

说明/提示

保证 A<B<C。

 

#include<iostream>
using namespace std;int a, b, c;
int n1, n2, n3, arr[10], flag, cnt;int main()
{cin>>a>>b>>c;for(int num=1; num<=1000/c; num++) //num是“单位数” {                                 n1 = num * a;n2 = num * b;n3 = num * c;//统计1-9每个数字出现的次数 for(int i=1; i<=3; ++i){arr[n1%10]++;n1 = n1 / 10;}for(int i=1; i<=3; ++i){arr[n2%10]++;n2 = n2 / 10;}for(int i=1; i<=3; ++i){arr[n3%10]++;n3 = n3 / 10;}for(int i=1; i<=9; ++i){if(arr[i] != 1)  //如果有数字不是只出现一次 {flag = 1;break;}}if(!flag){cout<<num*a<<" "<<num*b<<" "<<num*c<<endl;cnt++;}else flag = 0;for(int i=1; i<=9; ++i)  //每找完一组数就清零 {arr[i] = 0;  }   		 } if(!cnt)  cout<<"No!!!";return 0;
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词